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

# List measured builds

> The newest runs of `apsio check`, at most 50, each with its baseline and the change from it. A token with checks:write cannot read them.



## OpenAPI

````yaml /api-reference/openapi.json get /projects/{projectId}/checks
openapi: 3.1.0
info:
  title: Apsio API
  version: 0.1.0
  description: >-
    Read API v0: your projects, release health and comparisons, missing symbols,
    issues, sessions, vitals, cohort comparisons, performance (app start,
    screens, hangs, MetricKit) and network endpoints and traces for one project.
    Authenticate with a project token as a bearer token, with an OAuth access
    token from Apsio's authorization server (MCP clients), or, from the console,
    with the session cookie of a member of the project's organization.
servers:
  - url: https://api.apsio.io/v1
security: []
paths:
  /projects/{projectId}/checks:
    get:
      tags:
        - Checks
      summary: List measured builds
      description: >-
        The newest runs of `apsio check`, at most 50, each with its baseline and
        the change from it. A token with checks:write cannot read them.
      parameters:
        - schema:
            type: string
            pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
            example: 0192f3a4-0000-7000-8000-00000000a101
          required: true
          name: projectId
          in: path
        - schema:
            type: string
            pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
            description: Only this app.
          required: false
          description: Only this app.
          name: app_id
          in: query
        - schema:
            type: string
            minLength: 1
            maxLength: 128
            description: Only this release.
          required: false
          description: Only this release.
          name: release
          in: query
        - schema:
            type: integer
            minimum: 1
            maximum: 50
            default: 20
          required: false
          name: limit
          in: query
      responses:
        '200':
          description: Newest first.
          content:
            application/json:
              schema:
                type: object
                properties:
                  runs:
                    type: array
                    items:
                      $ref: '#/components/schemas/CheckRun'
                required:
                  - runs
        '400':
          description: The request is not valid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: No valid bearer token or console session.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: The credentials cannot read this project.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '410':
          description: >-
            The project or its organization is being deleted (`erasing`):
            nothing more to read; do not retry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: >-
            Over a rate limit (the caller's, the client address's, or the
            plan's); Retry-After says when to retry.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '503':
          description: Checks are not available here.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearer: []
components:
  schemas:
    CheckRun:
      allOf:
        - $ref: '#/components/schemas/CheckSizes'
        - type: object
          properties:
            app_id:
              type: string
              pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
            format:
              type: string
              enum:
                - ipa
                - apk
                - aab
              description: >-
                The artefact measured. Only runs of one format are compared: an
                .ipa or .aab is not what a user downloads, as the store cuts
                each device's copy from it, so its sizes say how a build
                changed, not what a user gets.
            warn_percent:
              type: number
              description: The rise this run warns at, in percent.
            baseline:
              $ref: '#/components/schemas/CheckSizes'
            change:
              type:
                - object
                - 'null'
              properties:
                binary_bytes:
                  type: integer
                binary_percent:
                  type: number
                install_bytes:
                  type: integer
                install_percent:
                  type: number
                warning:
                  type: boolean
                  description: >-
                    Either size rose by `warn_percent` or more. A warning only:
                    nothing blocks.
              required:
                - binary_bytes
                - binary_percent
                - install_bytes
                - install_percent
                - warning
          required:
            - app_id
            - format
            - warn_percent
            - baseline
            - change
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            code:
              type: string
              example: invalid_request
            message:
              type: string
            subject:
              type: string
              enum:
                - organization
                - project
              description: >-
                With `erasing` (410) only: what is being deleted, the
                organization or the project.
          required:
            - code
            - message
      required:
        - error
    CheckSizes:
      type:
        - object
        - 'null'
      properties:
        id:
          type: string
          pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
        release:
          type: string
          description: service.version
          example: 4.12.0
        build:
          type:
            - string
            - 'null'
        commit_sha:
          type:
            - string
            - 'null'
        branch:
          type:
            - string
            - 'null'
        binary_bytes:
          type: integer
          description: The artefact on disk, in bytes.
        install_bytes:
          type: integer
          description: The artefact's contents unpacked, in bytes.
        created_at:
          type: string
          description: RFC 3339 time in UTC.
      required:
        - id
        - release
        - build
        - commit_sha
        - branch
        - binary_bytes
        - install_bytes
        - created_at
      description: >-
        The earlier run of the same format it is compared with; null when there
        is none.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: >-
        A project token (apsio_pt_v0...), which reads exactly one project, or an
        OAuth access token issued for the API, which reads what its user can.
        Access tokens issued for Apsio's MCP server are accepted only from the
        MCP server itself.

````

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