CiteLadder Audits API

The audits API from CiteLadder — 4 operation(s) for audits.

Operations 5

GET /v1/projects/{project_id}/audits/{audit_id} Get projects by project id audits by audit id #
POST /v1/projects/{project_id}/audits/{audit_id}/cancel Create projects by project id audits by audit id cancel #
GET /v1/projects/{project_id}/audits Get projects by project id audits #
POST /v1/projects/{project_id}/audits Create projects by project id audits #
POST /v1/projects/{project_id}/audits/estimate Create projects by project id audits estimate #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/citeladder-com:citeladder-com-audits-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

citeladder-com-audits-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: CiteLadder Audits API
  version: '1'
servers:
- url: https://api.citeladder.com
security:
- apiKey: []
tags:
- name: Audits
paths:
  /v1/projects/{project_id}/audits/{audit_id}:
    get:
      tags:
      - Audits
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Audit'
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      - name: audit_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      x-citeladder-scope: read
      summary: Get projects by project id audits by audit id
      x-summary-source: derived
      operationId: getV1ProjectsByProjectIdAuditsByAuditId
      x-operation-id-source: derived
  /v1/projects/{project_id}/audits/{audit_id}/cancel:
    post:
      tags:
      - Audits
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Audit'
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      - name: audit_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      - name: Idempotency-Key
        in: header
        required: true
        schema:
          type: string
          minLength: 1
          maxLength: 255
      x-citeladder-scope: audits:run
      summary: Create projects by project id audits by audit id cancel
      x-summary-source: derived
      operationId: postV1ProjectsByProjectIdAuditsByAuditIdCancel
      x-operation-id-source: derived
  /v1/projects/{project_id}/audits:
    get:
      tags:
      - Audits
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Audit'
                  next_cursor:
                    type:
                    - string
                    - 'null'
                required:
                - items
                - next_cursor
                additionalProperties: false
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      - name: cursor
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            maxLength: 512
          - type: 'null'
      - name: limit
        in: query
        required: false
        schema:
          default: 50
          type: integer
          minimum: 1
          maximum: 100
      x-citeladder-scope: read
      summary: Get projects by project id audits
      x-summary-source: derived
      operationId: getV1ProjectsByProjectIdAudits
      x-operation-id-source: derived
    post:
      tags:
      - Audits
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Audit'
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      - name: Idempotency-Key
        in: header
        required: true
        schema:
          type: string
          minLength: 1
          maxLength: 255
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                prompt_set_id:
                  anyOf:
                  - type: string
                    format: uuid
                    pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                  - type: 'null'
                prompt_ids:
                  default: []
                  type: array
                  items:
                    type: string
                    format: uuid
                    pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                engines:
                  minItems: 1
                  type: array
                  items:
                    $ref: '#/components/schemas/LogicalEngine'
                repetitions:
                  anyOf:
                  - type: integer
                    minimum: 1
                    maximum: 10
                  - type: 'null'
                benchmark_mode:
                  anyOf:
                  - $ref: '#/components/schemas/BenchmarkMode'
                  - type: 'null'
                market_ids:
                  default:
                  - null
                  minItems: 1
                  maxItems: 11
                  type: array
                  items:
                    anyOf:
                    - type: string
                      format: uuid
                      pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                    - type: 'null'
                audit_scope:
                  default: brand
                  type: string
                  enum:
                  - brand
                  - commerce
                random_seed:
                  type:
                  - string
                  - 'null'
                max_attempts:
                  type: integer
                  minimum: 1
                  maximum: 9007199254740991
              required:
              - engines
              - max_attempts
      x-citeladder-scope: audits:run
      summary: Create projects by project id audits
      x-summary-source: derived
      operationId: postV1ProjectsByProjectIdAudits
      x-operation-id-source: derived
  /v1/projects/{project_id}/audits/estimate:
    post:
      tags:
      - Audits
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AuditEstimate'
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                prompt_set_id:
                  anyOf:
                  - type: string
                    format: uuid
                    pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                  - type: 'null'
                prompt_ids:
                  default: []
                  type: array
                  items:
                    type: string
                    format: uuid
                    pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                engines:
                  minItems: 1
                  type: array
                  items:
                    $ref: '#/components/schemas/LogicalEngine'
                repetitions:
                  anyOf:
                  - type: integer
                    minimum: 1
                    maximum: 10
                  - type: 'null'
                market_ids:
                  default:
                  - null
                  minItems: 1
                  maxItems: 11
                  type: array
                  items:
                    anyOf:
                    - type: string
                      format: uuid
                      pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
                    - type: 'null'
              required:
              - engines
      x-citeladder-scope: read
      summary: Create projects by project id audits estimate
      x-summary-source: derived
      operationId: postV1ProjectsByProjectIdAuditsEstimate
      x-operation-id-source: derived
components:
  schemas:
    LogicalEngine:
      type: string
      enum:
      - chatgpt
      - gemini
      - claude
      - google_ai_overview
      - chatgpt_search
      - gemini_consumer
    Audit:
      type: object
      properties:
        id:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
        workspace_id:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
        project_id:
          type: string
          format: uuid
          pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
        parent_audit_id:
          default: null
          anyOf:
          - type: string
            format: uuid
            pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          - type: 'null'
        status:
          $ref: '#/components/schemas/AuditStatus'
        benchmark_mode:
          type: string
        audit_scope:
          default: brand
          type: string
          enum:
          - brand
          - commerce
        model_provenance:
          default: []
          type: array
          items:
            $ref: '#/components/schemas/ModelProvenance'
        repetitions:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        random_seed:
          type: string
        requested_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        completed_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        failed_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        error_message:
          type: string
        engine_snapshots:
          type: array
          items:
            type: object
            properties:
              logical_engine:
                type: string
              transport_provider:
                type: string
              transport_model:
                type: string
            required:
            - logical_engine
            - transport_provider
            - transport_model
            additionalProperties: false
        market:
          type: object
          properties:
            id:
              anyOf:
              - type: string
                format: uuid
                pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
              - type: 'null'
            country_code:
              type: string
            language_code:
              type: string
          required:
          - id
          - country_code
          - language_code
          additionalProperties: false
        launch_id:
          anyOf:
          - type: string
            format: uuid
            pattern: ^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
          - type: 'null'
        not_applicable_engines:
          type: array
          items:
            $ref: '#/components/schemas/LogicalEngine'
        created_at:
          type: string
        updated_at:
          type: string
        started_at:
          type:
          - string
          - 'null'
        completed_at:
          type:
          - string
          - 'null'
      required:
      - id
      - workspace_id
      - project_id
      - parent_audit_id
      - status
      - benchmark_mode
      - audit_scope
      - model_provenance
      - repetitions
      - random_seed
      - requested_count
      - completed_count
      - failed_count
      - error_message
      - engine_snapshots
      - market
      - launch_id
      - not_applicable_engines
      - created_at
      - updated_at
      - started_at
      - completed_at
      additionalProperties: false
    TransportProvider:
      type: string
      enum:
      - openai
      - anthropic
      - google
      - dataforseo
    BenchmarkMode:
      type: string
      enum:
      - consumer_like
      - controlled_localized
      - forced_grounded
    AuditStatus:
      type: string
      enum:
      - draft
      - validating
      - queued
      - running
      - analyzing
      - reporting
      - completed
      - partially_completed
      - failed
      - cancelled
    AuditEstimate:
      type: object
      properties:
        retrieval_enabled:
          type: boolean
        prompt_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        engine_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        repetition_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        market_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        execution_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        maximum_attempt_count:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        maximum_wall_clock_seconds:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        cost_status:
          type: string
          enum:
          - complete
          - partial
          - unknown
        estimated_total_cost_microusd:
          anyOf:
          - type: integer
            minimum: -9007199254740991
            maximum: 9007199254740991
          - type: 'null'
        engines:
          type: array
          items:
            type: object
            properties:
              logical_engine:
                $ref: '#/components/schemas/LogicalEngine'
              transport_provider:
                $ref: '#/components/schemas/TransportProvider'
              transport_model:
                type: string
              retrieval_enabled:
                type:
                - boolean
                - 'null'
              prompt_count:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              repetition_count:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              market_count:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              execution_count:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              maximum_attempt_count:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              estimated_input_tokens:
                anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                - type: 'null'
              estimated_output_tokens:
                anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                - type: 'null'
              estimated_search_calls:
                anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                - type: 'null'
              estimated_token_cost_microusd:
                anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                - type: 'null'
              estimated_search_cost_microusd:
                anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                - type: 'null'
              estimated_total_cost_microusd:
                anyOf:
                - type: integer
                  minimum: -9007199254740991
                  maximum: 9007199254740991
                - type: 'null'
              cost_status:
                type: string
                enum:
                - complete
                - partial
                - unknown
              pricing_version:
                type: string
            required:
            - logical_engine
            - transport_provider
            - transport_model
            - retrieval_enabled
            - prompt_count
            - repetition_count
            - market_count
            - execution_count
            - maximum_attempt_count
            - estimated_input_tokens
            - estimated_output_tokens
            - estimated_search_calls
            - estimated_token_cost_microusd
            - estimated_search_cost_microusd
            - estimated_total_cost_microusd
            - cost_status
            - pricing_version
            additionalProperties: false
      required:
      - retrieval_enabled
      - prompt_count
      - engine_count
      - repetition_count
      - market_count
      - execution_count
      - maximum_attempt_count
      - maximum_wall_clock_seconds
      - cost_status
      - estimated_total_cost_microusd
      - engines
      additionalProperties: false
    ModelProvenance:
      type: object
      properties:
        logical_engine:
          type: string
        transport_provider:
          type: string
        transport_model:
          type: string
        retrieval_enabled:
          type:
          - boolean
          - 'null'
      required:
      - logical_engine
      - transport_provider
      - transport_model
      - retrieval_enabled
      additionalProperties: false
  securitySchemes:
    apiKey:
      type: http
      scheme: bearer
      description: 'An API key created in Settings → API keys, sent as `Authorization: Bearer cl_live_…`.'