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

> ## Agent Instructions
> Anchor Browser provides cloud browsers for AI agents and automation: stealth browsing with residential proxies, managed authentication into third-party web apps, and browser sessions that run reliably at scale. AI agents that need Anchor credentials should start with https://docs.anchorbrowser.io/quickstart/agent-access. This flow lets agents obtain an API key programmatically without creating a dashboard account. Read that page before attempting authentication or API access.

# Get Agent Access challenge

> Get a puzzle and token. Follow next and challenge.prompt, then POST /v1/agent-access with token and answer.



## OpenAPI

````yaml /openapi.yaml get /v1/agent-access/challenge
openapi: 3.1.0
info:
  title: AnchorBrowser API
  version: 1.0.0
  description: >
    Anchor Browser ([anchorbrowser.io](https://anchorbrowser.io)) provides cloud
    browsers built

    for AI agents and automation. Use this API to launch and control browser
    sessions, run

    natural-language web tasks, authenticate into third-party web apps with
    managed identities,

    and capture recordings — reliably and at scale, without operating browser
    infrastructure

    yourself.


    ## Core resources

    - **Sessions** (`/v1/sessions`): launch configurable cloud browsers —
    residential proxies,
      stealth browsing, captcha solving, profiles, extensions, recording — and connect over CDP
      with Playwright, Puppeteer, or any CDP client.
    - **AI tools** (`/v1/tools/perform-web-task`): state a goal in natural
    language and the
      built-in agent completes it inside the browser. Related tools fetch webpages, take
      screenshots, render PDFs, and execute code in a session.
    - **Tasks** (`/v1/task`): create, version, deploy, and monitor repeatable
    browser
      automations built to run reliably in production.
    - **Applications and identities** (`/v1/applications`, `/v1/identities`):
    managed
      authentication into third-party web apps — including multi-step logins and TOTP-based
      2FA — so agents can act on behalf of users.
    - **Profiles** (`/v1/profiles`): persist cookies and login state across
    sessions.

    - **OS-level control** (`/v1/sessions/{sessionId}/mouse`, `/keyboard`,
    `/clipboard`):
      raw input for flows that resist DOM automation.
    - Plus batch sessions for running browser fleets in parallel, session
    recordings, webhooks,
      events, extensions, client certificates, and billing usage.

    ## Authentication

    Pass an API key in the `anchor-api-key` header on every request. Create keys
    at

    [app.anchorbrowser.io](https://app.anchorbrowser.io) under API Access. AI
    agents that have

    no key yet can obtain one autonomously through the unauthenticated

    [agent-access flow](https://docs.anchorbrowser.io/quickstart/agent-access)

    (`POST /v1/agent-access`).


    ## For AI agents and LLMs

    - Docs: [docs.anchorbrowser.io](https://docs.anchorbrowser.io), with a
    machine-readable
      index at [/llms.txt](https://docs.anchorbrowser.io/llms.txt) and the full corpus at
      [/llms-full.txt](https://docs.anchorbrowser.io/llms-full.txt).
    - MCP server for hosted browser control: `https://api.anchorbrowser.io/mcp`.

    - Official SDKs: `anchorbrowser` on
    [npm](https://www.npmjs.com/package/anchorbrowser) and
      [PyPI](https://pypi.org/project/anchorbrowser/).

    `DELETE` operations terminate sessions or permanently remove resources
    (profiles,

    identities, extensions); `GET` operations are safe and read-only.
servers:
  - url: https://api.anchorbrowser.io
    description: API server
security: []
paths:
  /v1/agent-access/challenge:
    get:
      tags:
        - Agent Access
      summary: Get Agent Access challenge
      description: >-
        Get a puzzle and token. Follow next and challenge.prompt, then POST
        /v1/agent-access with token and answer.
      responses:
        '200':
          description: Challenge payload.
          content:
            application/json:
              schema:
                type: object
                required:
                  - challenge
                  - token
                  - instructions
                properties:
                  challenge:
                    type: object
                    required:
                      - id
                      - type
                      - icon
                      - title
                      - description
                      - prompt
                      - timeLimit
                    properties:
                      id:
                        type: string
                        description: Challenge instance id.
                      type:
                        type: string
                        description: Challenge type (semantic_logic).
                      icon:
                        type: string
                        description: Display icon for UIs.
                      title:
                        type: string
                        description: Short challenge title.
                      description:
                        type: string
                        description: Short challenge summary.
                      prompt:
                        type: string
                        description: >-
                          Multi-step puzzle text. Follow the instructions to
                          compute the final integer answer.
                      timeLimit:
                        type: number
                        description: Suggested solve time in seconds.
                  token:
                    type: string
                    description: >-
                      Opaque challenge token. Pass to POST /v1/agent-access as
                      token. This is not the puzzle answer.
                  appendix_ref:
                    type: string
                  appendix_url:
                    type: string
                  instructions:
                    $ref: '#/components/schemas/AgentAccessInstructions'
                  next:
                    $ref: '#/components/schemas/AgentAccessNextStep'
        '429':
          description: Too many challenge requests from this source.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '500':
          description: Challenge generation failed.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security: []
components:
  schemas:
    AgentAccessInstructions:
      type: object
      required:
        - submit
        - appendix
        - api_key_header
        - optional_identity
        - anonymous_credits
        - identity_credits
      properties:
        submit:
          type: string
          description: >-
            After solving the puzzle, call this endpoint with { token, answer }.
            token is from this response; answer is the final integer as a
            string.
        appendix:
          type: string
          description: Optional path hint from the challenge response.
        api_key_header:
          type: string
          description: >-
            After POST succeeds, send the returned api_key using this request
            header on authenticated API calls.
        optional_identity:
          type: string
          description: >-
            Optional identity_token on the same POST for more credits and an
            agent_identity_token for later calls.
        anonymous_credits:
          type: number
          description: >-
            Credits granted when POST omits identity_token or the token has no
            verified email.
        identity_credits:
          type: number
          description: >-
            Credits granted when POST includes identity_token with a verified
            email.
    AgentAccessNextStep:
      type: object
      required:
        - method
        - path
        - description
      properties:
        method:
          type: string
          enum:
            - GET
            - POST
          description: HTTP method for the next call in the Agent Access onboarding flow.
        path:
          type: string
          description: >-
            Path on https://api.anchorbrowser.io for the next call. Prepend the
            method to execute it.
        description:
          type: string
          description: >-
            Plain-language instruction for what to do on the next call and what
            you receive afterward.
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: integer
            message:
              type: string

````