Claron
    Documentation
    API KEYS
    Developer & API
    Reviewed

    API Keys

    API keys are managed from Dashboard sidebar Settings / Developer & API and are used for CLI auth and other scoped automation flows.

    Create and save a key

    1. Open Settings → Developer & API in the account/workspace that will run the tool.

    2. Choose a descriptive name, select the required scopes, and set an expiration if appropriate

      Use Read-only MCP for an MCP-only connection.

    3. Create the key and copy the displayed secret immediately

      It is shown once. Store it in a secret manager or the environment that launches the tool.

    4. Make one permitted request or connect the tool, then check the key's Last used value

      Keep production automation keys separate from a personal development key.

    How scopes match a request

    The first resource after /api/v1 determines the scope family. Both singular and plural resource spellings are accepted. GET uses read, POST uses create, PATCH/PUT use write, and DELETE uses delete. MCP is the exception: its HTTP POST transport uses mcp:read.

    An annotation route nested under /projects belongs to the project scope family, not annotation. A build route nested under /projects also uses project scopes, not build:create.

    RequestRequired API-key scope
    GET /api/v1/projects/:projectId/annotationsproject:read
    PATCH /api/v1/projects/:projectId/annotations/:annotationIdproject:write
    POST /api/v1/projects/:projectId/annotations/:annotationId/ai/retryproject:create
    GET /api/v1/annotations/:annotationId/diffannotation:read
    POST /api/v1/webhooks/outboundwebhooks:create
    PATCH /api/v1/webhooks/outbound/:webhookIdwebhooks:write
    DELETE /api/v1/webhooks/outbound/:webhookIdwebhooks:delete
    POST /api/v1/sdk/deploymentssdk:create
    POST /api/v1/mcpmcp:read

    Choose a scope recipe for your tool

    A wildcard such as project:* grants all actions in that family. Avoid * for a tool that only reads. If the scope picker does not offer a needed action, use its custom scope input rather than selecting an unrelated family.

    TaskStart with
    Read Claron issues through MCPmcp:read only, plus an eligible project role. See MCP setup.
    Browse projects and CLI issue evidenceproject:read and annotation:read.
    CLI status changes / investigation actionsAdd project:write for PATCH and project:create for POST actions actually used. The role may still require approval.
    Upload a frontend SDK deploymentsdk:create and access to the target project; configure only in the build environment.
    Manage outbound webhookswebhooks:read, webhooks:create, webhooks:write, and webhooks:delete as needed, plus workspace/project webhook authority.
    Activate an extension deviceextension:create; a read-only MCP key cannot activate a broader device token.

    Dedicated SDK credentials

    For a separate SDK-only credential, POST /api/v1/sdk/credentials with a name and optional expiresAt while authenticated with a permitted Claron account. Store the returned key once; it has SDK creation scope. Revoke it with DELETE /api/v1/sdk/credentials/:credentialId using the owning account.

    A developer key with sdk:create is the simpler Settings-based path for build configuration. It does not complete missing manifest/upload configuration by itself; read the frontend SDK limitations before expecting source-map upload.

    Rotate, revoke, and troubleshoot

    1. Create or rotate the credential, save the new secret, and update each consuming secret store or client.

    2. Test the new credential with a permitted request

      Revoke the previous key when migration is complete; a rotated/revoked secret must no longer be used.

    3. For 401, check the Authorization: Bearer header, secret value, expiry, and revocation state.

    4. For 403, check both the route's scope family and the account's effective permissions

      For plan restrictions, check Billing; a wider key does not change the plan or project role.

    CREATING A KEY

    The settings page includes fields for name, scopes, and optional expiration.

    AVAILABLE SCOPES

    project:read
    Read project metadata and settings
    project:create
    Create projects and POST project-scoped resources such as builds
    project:write
    Write project-level changes
    project:delete
    Delete project-scoped resources
    project:*
    All actions on project-scoped routes
    annotation:read
    Read annotation records
    annotation:create
    Create direct annotation resources
    annotation:write
    Write annotation changes
    annotation:delete
    Delete direct annotation resources
    webhooks:read
    List workspace or project outbound webhooks and delivery logs
    webhooks:create
    Create outbound webhooks with POST
    webhooks:write
    Update outbound webhooks with PATCH
    webhooks:delete
    Delete outbound webhooks with DELETE
    api-key:*
    Manage developer API keys when the actor is allowed
    sdk:create
    Upload SDK source maps and deployments
    mcp:read
    Read permitted projects and issue evidence through Claron MCP

    Scopes use <resource>:<action>. Outbound webhook routes require distinct scopes: webhooks:create for POST, webhooks:write for PATCH, and webhooks:delete for DELETE. Use an exact scope, a resource wildcard such as project:*, or * when broader access is intentional.

    Scope checks use the first URL resource, not the deepest feature name. For example, POST /projects/:projectId/build requires a project:create or project:* key.

    MCP CLIENT AUTHENTICATION

    Claude on the web

    Claude web uses Claron OAuth. Add the MCP URL from Settings / Developer & API, select Sign in now, then choose Register automatically as the OAuth client. Sign in to Claron and approve the read-only request. No API key or request-header beta is needed.

    ChatGPT, Grok and Gemini

    Open Settings / Developer & API and select your hosted app in MCP Setup. All four apps use the same MCP URL and Claron OAuth. Choose OAuth with automatic registration when prompted, then approve access in Claron. Availability depends on your provider account and region.

    AppWhere to add Claron
    ChatGPTPlugins → Add custom MCP server; use OAuth and install the plugin.
    GrokConnectors → New Connector → Custom; team admins provision it first.
    GeminiSettings → Connected Apps → Custom apps; check Google's eligibility requirements.

    Owners and admins can inspect activity, masked IP and token expiry, and revoke a connection under MCP OAuth access. Revoking a member's connection disconnects that client from all projects accessible to their Claron account. Eligible members can authorize a new connection.

    Coding agents and other MCP clients

    Create a key with the Read-only MCP preset (`mcp:read`) and send it as Authorization: Bearer bd_…. MCP access follows the key owner’s project permissions and plan. Do not use an SDK upload key or extension device token.

    Start an investigation with get_issue_evidence to fetch several sections together. Reuse returned evidence and request individual tools for more pages, full network bodies or screenshots. Repeated reads use a short evidence cache while access permissions are checked on every request.

    KEY LIST

    NamePrefixExpiresLast UsedActions
    Local Dev CLI
    bd_dev...NeverJust now
    CI runner
    bd_ci...Mar 20, 20262h ago

    CLI EXAMPLE

    claron
    bash
    claron auth bd_<your-key>
    claron list
    claron view <annotationId>
    claron diff <annotationId>
    claron apply <annotationId>