> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cybr.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> These docs cover learner integrations through Hosted Lab Pages, the SDK, and the REST API. Content management is outside this integration scope.
> Read the setup page for the chosen approach before implementing it. Keep organization API keys and hosted mint secrets on the server.
> The public SDK is coming soon. Check the SDK quickstart for current availability. Do not invent installation commands or direct readers to a private package.
> Cybr provides completion tracking and CTF verification. The integrating platform decides whether to award points.

# How it works

> Understand labs, deployments, learner identities, and the API boundary.

## Labs and deployments

A lab defines the exercise and its cloud environment. Your organization has a catalog of available labs.

A deployment is one instance of a lab for one learner. Each launch returns a new deployment ID.

The API base URL is `https://api.cybr.com`. The SDK sends the same requests that the REST reference describes.

## The request flow for your own interface

For an interface built with the SDK or REST API, requests follow this flow:

1. The browser sends a learner action to the server.
2. The server resolves the learner session and checks access.
3. The server calls Cybr through the SDK or REST API.
4. Cybr returns a result to the server.
5. The server returns the required fields to the browser.

The server retains the organization key. The browser never receives that key.

Hosted Lab Pages provide the learner interface instead. Your platform uses signed launch links, as described in the [hosted guide](/hosted/integration).

## Learner identities

Cybr accepts learner IDs from your integration. Learners do not require individual Cybr accounts.

Signed-in users and guests both use server-managed sessions. A stable learner ID connects their deployments and completion records.

Membership describes access to free or premium labs. Membership does not describe whether a learner signed in.

## Readiness and completion

A deployment status of `complete` means that the environment is ready. It does not mean that the learner finished the exercise.

A grading response describes an answer or flag. A completion response records learner progress. Ending a deployment removes the environment.

## Optional web terminals

A server request creates temporary terminal credentials. The browser helper uses these credentials for a WebSocket connection.

Closing the terminal connection does not end the lab. The [terminal guide](/guides/terminals) explains reconnects and expiration.

## Completion and CTF verification

For SDK and REST integrations, Cybr verifies CTF flags and records learner completion. Your server receives those results directly.

Your platform can use the results to update learner progress. Scores and leaderboards belong to your platform.

This flow requires no callback endpoint and no customer GET endpoint for Cybr. The [completion guide](/guides/completion-and-scoring) explains verification and completion records.

Hosted Lab Pages handle these interactions for you. The [hosted integration guide](/hosted/integration) explains how your platform receives completion updates.
