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

# Get Agent Readiness

> How ready the project's website and its competitors' websites are for AI agents, from Peec's agent readiness audit.

Each site gets a level from 0 to 5. A level is reached when every gate check of that level and of every level below it passes, so `next_level.blocking_check_ids` lists what to fix next. Each check also reports its own outcome, including the hygiene and emerging-standard checks that never block a level.

Reading this endpoint never starts an audit. A domain without an audit completed in the last 90 days returns `audit: null`.



## OpenAPI

````yaml https://api.peec.ai/customer/v1/openapi/json get /agent-analytics/readiness
openapi: 3.0.3
info:
  title: Peec AI Customer API
  description: Development documentation
  version: 1.0.0
  contact:
    name: Peec AI Team
    email: support@peec.ai
servers:
  - url: https://api.peec.ai/customer/v1
security: []
paths:
  /agent-analytics/readiness:
    get:
      tags:
        - Agent Analytics
      summary: Get Agent Readiness
      description: >-
        How ready the project's website and its competitors' websites are for AI
        agents, from Peec's agent readiness audit.


        Each site gets a level from 0 to 5. A level is reached when every gate
        check of that level and of every level below it passes, so
        `next_level.blocking_check_ids` lists what to fix next. Each check also
        reports its own outcome, including the hygiene and emerging-standard
        checks that never block a level.


        Reading this endpoint never starts an audit. A domain without an audit
        completed in the last 90 days returns `audit: null`.
      operationId: getAgent-analyticsReadiness
      parameters:
        - name: project_id
          in: query
          required: false
          schema:
            description: Required if using a company api key
            example: or_f45b94ba-5e35-4982-93ed-285e72ee14eb
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  domain:
                    nullable: true
                    description: >-
                      The first of the project's own brand domains the audit
                      runs against, or null when the project has no own domain.
                    example: peec.ai
                    type: string
                  audit:
                    nullable: true
                    description: >-
                      The newest audit completed within the last 90 days, or
                      null when the domain has none.
                    type: object
                    properties:
                      completed_at:
                        type: string
                        description: When the audit finished, in ISO 8601 (UTC).
                        example: '2026-10-01T09:30:00.000Z'
                      level:
                        type: integer
                        minimum: 0
                        maximum: 5
                        description: >-
                          The highest level whose gate checks all pass, climbing
                          from level 1. 0 until every level 1 gate passes.
                        example: 2
                      ceiling:
                        type: integer
                        minimum: 0
                        maximum: 5
                        description: >-
                          The highest level this audit can award the site: the
                          top level that has at least one applicable gate check.
                        example: 4
                      next_level:
                        nullable: true
                        description: >-
                          What stands between the site and the next level. Null
                          when the site is already at its ceiling.
                        type: object
                        properties:
                          level:
                            type: integer
                            minimum: 0
                            maximum: 5
                            example: 3
                          passed_gates:
                            type: integer
                            minimum: -9007199254740991
                            maximum: 9007199254740991
                            description: Gate checks of the next level that already pass.
                            example: 3
                          total_gates:
                            type: integer
                            minimum: -9007199254740991
                            maximum: 9007199254740991
                            description: Applicable gate checks of the next level.
                            example: 5
                          blocking_check_ids:
                            type: array
                            items:
                              type: string
                              enum:
                                - domain.robots_txt
                                - domain.ai_agent_access
                                - domain.sitemap
                                - domain.link_headers
                                - domain.llms_txt
                                - domain.soft_404
                                - domain.content_signals
                                - domain.aipref_content_usage
                                - domain.sitemap_lastmod
                                - domain.llms_full_txt
                                - domain.api_catalog
                                - domain.mcp_server_card
                                - domain.oauth_authorization_server
                                - domain.oauth_protected_resource
                                - domain.a2a_agent_card
                                - domain.agent_skills_index
                                - domain.auth_md
                                - domain.agents_md
                                - domain.web_bot_auth
                                - domain.ard
                                - domain.ucp
                                - page.md_suffix
                                - page.render_without_javascript
                                - page.navigation_without_javascript
                                - page.markdown_negotiation
                                - page.bot_reachability
                                - page.meta_robots
                                - page.soft_404
                                - page.structured_data
                                - page.organization_schema
                                - page.semantic_landmarks
                                - page.heading_structure
                                - page.document_title
                                - page.language
                                - page.meta_description
                                - page.canonical
                                - page.open_graph
                                - page.image_alt_text
                                - page.descriptive_links
                                - page.editorial_freshness
                                - page.page_type_schema
                                - page.entity_linking
                            description: >-
                              The gate checks that keep the site from the next
                              level. Fix these to level up.
                            example:
                              - page.structured_data
                              - page.organization_schema
                        required:
                          - level
                          - passed_gates
                          - total_gates
                          - blocking_check_ids
                      checks:
                        type: array
                        items:
                          type: object
                          properties:
                            id:
                              type: string
                              enum:
                                - domain.robots_txt
                                - domain.ai_agent_access
                                - domain.sitemap
                                - domain.link_headers
                                - domain.llms_txt
                                - domain.soft_404
                                - domain.content_signals
                                - domain.aipref_content_usage
                                - domain.sitemap_lastmod
                                - domain.llms_full_txt
                                - domain.api_catalog
                                - domain.mcp_server_card
                                - domain.oauth_authorization_server
                                - domain.oauth_protected_resource
                                - domain.a2a_agent_card
                                - domain.agent_skills_index
                                - domain.auth_md
                                - domain.agents_md
                                - domain.web_bot_auth
                                - domain.ard
                                - domain.ucp
                                - page.md_suffix
                                - page.render_without_javascript
                                - page.navigation_without_javascript
                                - page.markdown_negotiation
                                - page.bot_reachability
                                - page.meta_robots
                                - page.soft_404
                                - page.structured_data
                                - page.organization_schema
                                - page.semantic_landmarks
                                - page.heading_structure
                                - page.document_title
                                - page.language
                                - page.meta_description
                                - page.canonical
                                - page.open_graph
                                - page.image_alt_text
                                - page.descriptive_links
                                - page.editorial_freshness
                                - page.page_type_schema
                                - page.entity_linking
                              example: domain.llms_txt
                            level:
                              type: integer
                              minimum: 0
                              maximum: 5
                              description: The level this check counts toward.
                              example: 2
                            tier:
                              type: string
                              enum:
                                - gate
                                - reported
                                - emerging
                              description: >-
                                `gate` checks decide the level. `reported`
                                checks are hygiene that never block a level.
                                `emerging` checks cover standards few agents use
                                yet and never block a level.
                              example: emerging
                            outcome:
                              type: string
                              enum:
                                - confirmed
                                - absent
                                - invalid
                                - blocked
                                - inconclusive
                                - not_applicable
                              description: >-
                                The check's result across every page it ran on,
                                the most severe one winning. `absent`, `invalid`
                                and `blocked` need fixing.
                              example: absent
                          required:
                            - id
                            - level
                            - tier
                            - outcome
                        description: Every check the audit ran, in catalog order.
                    required:
                      - completed_at
                      - level
                      - ceiling
                      - next_level
                      - checks
                  competitors:
                    type: array
                    items:
                      type: object
                      properties:
                        brand:
                          type: object
                          properties:
                            id:
                              type: string
                              example: kw_915e742b-396d-4a86-ad57-8bc84e8c2232
                            name:
                              type: string
                              example: Acme
                          required:
                            - id
                            - name
                        domain:
                          type: string
                          description: >-
                            One of the competitor brand's domains; a brand with
                            several domains appears once per domain.
                          example: acme.com
                        audit:
                          nullable: true
                          description: >-
                            The newest audit completed within the last 90 days,
                            or null when the domain has none.
                          type: object
                          properties:
                            completed_at:
                              type: string
                              description: When the audit finished, in ISO 8601 (UTC).
                              example: '2026-10-01T09:30:00.000Z'
                            level:
                              type: integer
                              minimum: 0
                              maximum: 5
                              description: >-
                                The highest level whose gate checks all pass,
                                climbing from level 1. 0 until every level 1
                                gate passes.
                              example: 2
                            ceiling:
                              type: integer
                              minimum: 0
                              maximum: 5
                              description: >-
                                The highest level this audit can award the site:
                                the top level that has at least one applicable
                                gate check.
                              example: 4
                            next_level:
                              nullable: true
                              description: >-
                                What stands between the site and the next level.
                                Null when the site is already at its ceiling.
                              type: object
                              properties:
                                level:
                                  type: integer
                                  minimum: 0
                                  maximum: 5
                                  example: 3
                                passed_gates:
                                  type: integer
                                  minimum: -9007199254740991
                                  maximum: 9007199254740991
                                  description: >-
                                    Gate checks of the next level that already
                                    pass.
                                  example: 3
                                total_gates:
                                  type: integer
                                  minimum: -9007199254740991
                                  maximum: 9007199254740991
                                  description: Applicable gate checks of the next level.
                                  example: 5
                                blocking_check_ids:
                                  type: array
                                  items:
                                    type: string
                                    enum:
                                      - domain.robots_txt
                                      - domain.ai_agent_access
                                      - domain.sitemap
                                      - domain.link_headers
                                      - domain.llms_txt
                                      - domain.soft_404
                                      - domain.content_signals
                                      - domain.aipref_content_usage
                                      - domain.sitemap_lastmod
                                      - domain.llms_full_txt
                                      - domain.api_catalog
                                      - domain.mcp_server_card
                                      - domain.oauth_authorization_server
                                      - domain.oauth_protected_resource
                                      - domain.a2a_agent_card
                                      - domain.agent_skills_index
                                      - domain.auth_md
                                      - domain.agents_md
                                      - domain.web_bot_auth
                                      - domain.ard
                                      - domain.ucp
                                      - page.md_suffix
                                      - page.render_without_javascript
                                      - page.navigation_without_javascript
                                      - page.markdown_negotiation
                                      - page.bot_reachability
                                      - page.meta_robots
                                      - page.soft_404
                                      - page.structured_data
                                      - page.organization_schema
                                      - page.semantic_landmarks
                                      - page.heading_structure
                                      - page.document_title
                                      - page.language
                                      - page.meta_description
                                      - page.canonical
                                      - page.open_graph
                                      - page.image_alt_text
                                      - page.descriptive_links
                                      - page.editorial_freshness
                                      - page.page_type_schema
                                      - page.entity_linking
                                  description: >-
                                    The gate checks that keep the site from the
                                    next level. Fix these to level up.
                                  example:
                                    - page.structured_data
                                    - page.organization_schema
                              required:
                                - level
                                - passed_gates
                                - total_gates
                                - blocking_check_ids
                            checks:
                              type: array
                              items:
                                type: object
                                properties:
                                  id:
                                    type: string
                                    enum:
                                      - domain.robots_txt
                                      - domain.ai_agent_access
                                      - domain.sitemap
                                      - domain.link_headers
                                      - domain.llms_txt
                                      - domain.soft_404
                                      - domain.content_signals
                                      - domain.aipref_content_usage
                                      - domain.sitemap_lastmod
                                      - domain.llms_full_txt
                                      - domain.api_catalog
                                      - domain.mcp_server_card
                                      - domain.oauth_authorization_server
                                      - domain.oauth_protected_resource
                                      - domain.a2a_agent_card
                                      - domain.agent_skills_index
                                      - domain.auth_md
                                      - domain.agents_md
                                      - domain.web_bot_auth
                                      - domain.ard
                                      - domain.ucp
                                      - page.md_suffix
                                      - page.render_without_javascript
                                      - page.navigation_without_javascript
                                      - page.markdown_negotiation
                                      - page.bot_reachability
                                      - page.meta_robots
                                      - page.soft_404
                                      - page.structured_data
                                      - page.organization_schema
                                      - page.semantic_landmarks
                                      - page.heading_structure
                                      - page.document_title
                                      - page.language
                                      - page.meta_description
                                      - page.canonical
                                      - page.open_graph
                                      - page.image_alt_text
                                      - page.descriptive_links
                                      - page.editorial_freshness
                                      - page.page_type_schema
                                      - page.entity_linking
                                    example: domain.llms_txt
                                  level:
                                    type: integer
                                    minimum: 0
                                    maximum: 5
                                    description: The level this check counts toward.
                                    example: 2
                                  tier:
                                    type: string
                                    enum:
                                      - gate
                                      - reported
                                      - emerging
                                    description: >-
                                      `gate` checks decide the level. `reported`
                                      checks are hygiene that never block a
                                      level. `emerging` checks cover standards
                                      few agents use yet and never block a
                                      level.
                                    example: emerging
                                  outcome:
                                    type: string
                                    enum:
                                      - confirmed
                                      - absent
                                      - invalid
                                      - blocked
                                      - inconclusive
                                      - not_applicable
                                    description: >-
                                      The check's result across every page it
                                      ran on, the most severe one winning.
                                      `absent`, `invalid` and `blocked` need
                                      fixing.
                                    example: absent
                                required:
                                  - id
                                  - level
                                  - tier
                                  - outcome
                              description: Every check the audit ran, in catalog order.
                          required:
                            - completed_at
                            - level
                            - ceiling
                            - next_level
                            - checks
                      required:
                        - brand
                        - domain
                        - audit
                    description: >-
                      Every competitor brand of the project that has a domain,
                      audited or not.
                required:
                  - domain
                  - audit
                  - competitors
                description: Success
        '403':
          description: Response for status 403
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                required:
                  - message
      security:
        - APIKeyHeader: []
        - APIKeyQuery: []
        - BearerAuth: []
components:
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: X-API-Key
    APIKeyQuery:
      type: apiKey
      in: query
      name: api_key
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.