Scale AI Projects API

The Projects API from Scale AI — 3 operation(s) for projects.

GitHub OpenAPI

Operations 8

POST /v1/projects Create Project #
GET /v1/projects List Projects #
GET /v1/projects/{project_id} Get Project #
PUT /v1/projects/{project_id} Update Project #
GET /projects List all projects #
POST /projects Create a project #
GET /projects/{project_name} Retrieve a project #
POST /projects/{project_name}/setParams Update project parameters #

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/scale-ai:scale-ai-projects-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

scale-ai-projects-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Scale Ai Projects API
  version: '1.0'
  description: 'Operations tagged Projects across 2 of this provider''s published API definitions: scale-ai-document-understanding-openapi.json, scale-ai-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.scale.com/v1
  description: Scale REST API (v1)
tags:
- name: Projects
  description: Operations related to project creation and management
paths:
  /v1/projects:
    post:
      tags:
      - Projects
      summary: Create Project
      description: Create a new project.
      operationId: create_project_v1_projects_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectCreateRequest'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectEntity'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - ApiKey: []
        AccountId: []
    get:
      tags:
      - Projects
      summary: List Projects
      description: List all projects with pagination and filtering support.
      operationId: list_projects_v1_projects_get
      parameters:
      - name: include_archived
        in: query
        required: false
        schema:
          type: boolean
          default: false
          title: Include Archived
      - name: page_size
        in: query
        required: false
        schema:
          anyOf:
          - type: integer
            maximum: 100
            minimum: 1
          - type: 'null'
          description: Number of items per page
          title: Page Size
        description: Number of items per page
      - name: sort_by
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Field to sort by
          title: Sort By
        description: Field to sort by
      - name: sort_order
        in: query
        required: false
        schema:
          anyOf:
          - $ref: '#/components/schemas/SortOrder'
          - type: 'null'
          description: Sort order (asc or desc)
          title: Sort Order
        description: Sort order (asc or desc)
      - name: continuation_token
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Pagination token
          title: Continuation Token
        description: Pagination token
      - name: ids
        in: query
        required: false
        schema:
          anyOf:
          - type: array
            items:
              type: string
          - type: 'null'
          description: Filter by project IDs
          title: Ids
        description: Filter by project IDs
      - name: statuses
        in: query
        required: false
        schema:
          anyOf:
          - type: array
            items:
              $ref: '#/components/schemas/ProjectStatus'
          - type: 'null'
          description: Filter by project statuses (active, archived)
          title: Statuses
        description: Filter by project statuses (active, archived)
      - name: created_at_start
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          description: Filter by creation time (start)
          title: Created At Start
        description: Filter by creation time (start)
      - name: created_at_end
        in: query
        required: false
        schema:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          description: Filter by creation time (end)
          title: Created At End
        description: Filter by creation time (end)
      - name: name
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          description: Filter by project name (case-insensitive partial match)
          title: Name
        description: Filter by project name (case-insensitive partial match)
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MaybePaginatedListResponse_ProjectEntity_'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - ApiKey: []
        AccountId: []
  /v1/projects/{project_id}:
    get:
      tags:
      - Projects
      summary: Get Project
      description: Get a project by ID.
      operationId: get_project_v1_projects__project_id__get
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          title: Project Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectEntity'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - ApiKey: []
        AccountId: []
    put:
      tags:
      - Projects
      summary: Update Project
      description: Update a project.
      operationId: update_project_v1_projects__project_id__put
      parameters:
      - name: project_id
        in: path
        required: true
        schema:
          type: string
          title: Project Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ProjectUpdateRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProjectEntity'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
      - ApiKey: []
        AccountId: []
  /projects:
    get:
      summary: List all projects
      operationId: listProjects
      tags:
      - Projects
      responses:
        '200':
          description: Projects.
      security:
      - BasicAuth: []
    post:
      summary: Create a project
      operationId: createProject
      tags:
      - Projects
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                type:
                  type: string
      responses:
        '200':
          description: Project created.
      security:
      - BasicAuth: []
    servers:
    - url: https://api.scale.com/v1
      description: Scale REST API (v1)
  /projects/{project_name}:
    get:
      summary: Retrieve a project
      operationId: retrieveProject
      tags:
      - Projects
      parameters:
      - name: project_name
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A project.
      security:
      - BasicAuth: []
    servers:
    - url: https://api.scale.com/v1
      description: Scale REST API (v1)
  /projects/{project_name}/setParams:
    post:
      summary: Update project parameters
      operationId: updateProjectParams
      tags:
      - Projects
      parameters:
      - name: project_name
        in: path
        required: true
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Project parameters updated.
      security:
      - BasicAuth: []
    servers:
    - url: https://api.scale.com/v1
      description: Scale REST API (v1)
components:
  schemas:
    ProjectUpdateRequest:
      properties:
        name:
          anyOf:
          - type: string
            maxLength: 255
            minLength: 1
          - type: 'null'
          title: Name
          description: Project readable name
        configuration:
          anyOf:
          - $ref: '#/components/schemas/ProjectConfiguration'
          - type: 'null'
          description: Project configuration
        status:
          anyOf:
          - $ref: '#/components/schemas/ProjectStatus'
          - type: 'null'
          description: Project status
      type: object
      title: ProjectUpdateRequest
      description: Model for updating an existing project.
    ProjectStatus:
      type: string
      enum:
      - active
      - archived
      title: ProjectStatus
      description: Enum for project status values.
    PaginatedItems_ProjectEntity_:
      properties:
        items:
          items:
            $ref: '#/components/schemas/ProjectEntity'
          type: array
          title: Items
        total_count:
          type: integer
          title: Total Count
        next_token:
          anyOf:
          - type: string
          - type: 'null'
          title: Next Token
        prev_token:
          anyOf:
          - type: string
          - type: 'null'
          title: Prev Token
      type: object
      required:
      - items
      - total_count
      title: PaginatedItems[ProjectEntity]
    ProjectEntity:
      properties:
        id:
          type: string
          title: Id
          description: ID of the entity
        name:
          type: string
          title: Name
          description: Project readable name
        account_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Account Id
          description: Account id that owns the project; null for legacy projects
        status:
          $ref: '#/components/schemas/ProjectStatus'
          description: Project status
        configuration:
          anyOf:
          - $ref: '#/components/schemas/ProjectConfiguration'
          - type: 'null'
          description: Project configuration
        created_at:
          type: string
          format: date-time
          title: Created At
          description: Datetime when the project was created
        archived_at:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
          title: Archived At
          description: Datetime when the project was archived
      type: object
      required:
      - id
      - name
      - status
      - created_at
      title: ProjectEntity
      description: Project response model.
    MaybePaginatedListResponse_ProjectEntity_:
      anyOf:
      - $ref: '#/components/schemas/PaginatedItems_ProjectEntity_'
      - items:
          $ref: '#/components/schemas/ProjectEntity'
        type: array
      title: MaybePaginatedListResponse[ProjectEntity]
    ProjectCreateRequest:
      properties:
        name:
          type: string
          maxLength: 255
          minLength: 1
          pattern: ^[A-Za-z0-9_\-:/ ]+$
          title: Name
          description: Project readable name
        configuration:
          anyOf:
          - $ref: '#/components/schemas/ProjectConfiguration'
          - type: 'null'
          description: Project configuration
          default: {}
      type: object
      required:
      - name
      title: ProjectCreateRequest
      description: Model for creating a new project.
    RetentionPolicy:
      properties:
        files:
          anyOf:
          - type: string
            format: duration
          - type: 'null'
          title: Files
          description: File retention days
        result_artifacts:
          anyOf:
          - type: string
            format: duration
          - type: 'null'
          title: Result Artifacts
          description: Data retention days for artifacts that are created from parse or extract jobs as well as the jobs themselves
      type: object
      title: RetentionPolicy
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
            - type: string
            - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    SortOrder:
      type: string
      enum:
      - asc
      - desc
      title: SortOrder
      description: 'Enum for project sort fields.

        Note that only non-nullable fields can be sorted by (for

        details, see: https://github.com/djrobstep/sqlakeyset?tab=readme-ov-file#limitations ).'
    ProjectConfiguration:
      properties:
        retention:
          anyOf:
          - $ref: '#/components/schemas/RetentionPolicy'
          - type: 'null'
          description: Project retention policy
      additionalProperties: true
      type: object
      title: ProjectConfiguration
  securitySchemes:
    ApiKey:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication
    AccountId:
      type: apiKey
      in: header
      name: x-selected-account-id
      description: Selected Account ID
    BasicAuth:
      type: http
      scheme: basic
      description: 'HTTP Basic authentication. Use your Scale API key (live or sandbox) as

        the username and leave the password blank.

        '
x-refined-from:
- scale-ai-document-understanding-openapi.json
- scale-ai-openapi.yml