Scale AI Question Sets API

The Question Sets API from Scale AI — 2 operation(s) for question sets.

Operations 5

POST /v4/question-sets Create Question Set #
GET /v4/question-sets List Question Sets #
DELETE /v4/question-sets/{question_set_id} Delete Question Set #
GET /v4/question-sets/{question_set_id} Get Question Set #
PATCH /v4/question-sets/{question_set_id} Update Question Set #

Documentation

Specifications

SDKs

Schemas & Data

📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-response-object-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-chat-completion-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-spans-export-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-response-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-spans-by-span-metrics-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-spans-metrics-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-egp-api-backend-server-api-apps-public-routers-inference-inference-model-models-chat-completion-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-create-chat-completion-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-egp-api-backend-server-utils-model-schemas-completions-chat-completion-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-completion-request-v2-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-execute-agent-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-legacy-evaluation-response-with-views-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-agent-run-schedule-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-register-agent-response-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-update-agent-run-schedule-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-create-agent-run-schedule-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-create-span-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-span-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-research-job-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-job-entity-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-data-source-entity-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-parse-result-entity-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-file-entity-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-sgpvector-store-create-request-base-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-chat-completion-v2-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-completion-v2-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-create-model-endpoint-v1-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-update-model-endpoint-v1-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-create-batch-completions-v2-request-schema.json
📊
JSONSchema
https://artifacts.apis.io/scale-ai/json-schema/scale-ai-create-batch-completions-v1-request-schema.json

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-question-sets-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-question-sets-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: EGP API V4 Question Sets API
  description: This is the parent API for all EGP APIs. If you are looking for the EGP API, please go to https://api.egp.scale.com/docs.
  contact:
    name: Scale Generative AI Platform
    url: https://scale.com/genai-platform
  version: 0.1.0
servers:
- url: https://api.egp.scale.com
security: []
tags:
- name: Question Sets
paths:
  /v4/question-sets:
    post:
      tags:
      - Question Sets
      summary: Create Question Set
      description: '### Description

        Creates a question set


        ### Details

        This API can be used to create a question set. To use this API, review the request schema and pass in all fields that are required to create a question set.'
      operationId: POST-V4-/question-sets
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/QuestionSetRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuestionSetResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-source: https://docs.gp.scale.com/reference/v4/question-sets/create-question-set
    get:
      tags:
      - Question Sets
      summary: List Question Sets
      description: '### Description

        Lists all question sets accessible to the user.


        ### Details

        This API can be used to list question sets. If a user has access to multiple accounts, all question sets from all accounts the user is associated with will be returned.'
      operationId: GET-V4-/question-sets
      parameters:
      - name: view
        in: query
        required: false
        schema:
          anyOf:
          - type: array
            items:
              $ref: '#/components/schemas/QuestionSetViewsOptions'
          - type: 'null'
          title: View
      - name: page
        in: query
        required: false
        schema:
          type: integer
          minimum: 1
          description: Page number for pagination to be returned by the given endpoint. Starts at page 1
          default: 1
          title: Page
        description: Page number for pagination to be returned by the given endpoint. Starts at page 1
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          maximum: 10000
          minimum: 1
          description: Maximum number of artifacts to be returned by the given endpoint. Defaults to 100 and cannot be greater than 10k.
          default: 100
          title: Limit
        description: Maximum number of artifacts to be returned by the given endpoint. Defaults to 100 and cannot be greater than 10k.
      - name: include_archived
        in: query
        required: false
        schema:
          type: boolean
          default: false
          title: Include Archived
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedQuestionSetResponseWithViews'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-source: https://docs.gp.scale.com/reference/v4/question-sets/list-question-sets
  /v4/question-sets/{question_set_id}:
    delete:
      tags:
      - Question Sets
      summary: Delete Question Set
      description: '### Description

        Deletes a question set


        ### Details

        This API can be used to delete a question set by ID. To use this API, pass in the `id` that was returned from your Create Question Set API call as a path parameter.'
      operationId: DELETE-V4-/question-sets/{question_set_id}
      parameters:
      - name: question_set_id
        in: path
        required: true
        schema:
          type: string
          title: Question Set Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeleteResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-source: https://docs.gp.scale.com/reference/v4/question-sets/delete-question-set
    get:
      tags:
      - Question Sets
      summary: Get Question Set
      operationId: GET-V4-/v2/question-sets/{question_set_id}
      parameters:
      - name: question_set_id
        in: path
        required: true
        schema:
          type: string
          title: Question Set Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuestionSetWithQuestions'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-source: https://docs.gp.scale.com/reference/v4/question-sets/get-question-set
    patch:
      tags:
      - Question Sets
      summary: Update Question Set
      description: '### Description

        Updates a question set


        ### Details

        This API can be used to update the question set that matches the ID that was passed in as a path parameter. To use this API, pass in the `id` that was returned from your Create Question Set API call as a path parameter.


        Review the request schema to see the fields that can be updated.'
      operationId: PATCH-V4-/question-sets/{question_set_id}
      parameters:
      - name: question_set_id
        in: path
        required: true
        schema:
          type: string
          title: Question Set Id
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RestorablePartialQuestionSetRequest'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/QuestionSetResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      x-source: https://docs.gp.scale.com/reference/v4/question-sets/update-question-set
components:
  schemas:
    RestorablePartialQuestionSetRequest:
      oneOf:
      - $ref: '#/components/schemas/PartialQuestionSetRequest'
      - $ref: '#/components/schemas/RestoreRequest'
      title: RestorablePartialQuestionSetRequest
      discriminator:
        propertyName: restore
        mapping:
          'False': '#/components/schemas/PartialQuestionSetRequest'
          'True': '#/components/schemas/RestoreRequest'
    QuestionSetRequest:
      properties:
        name:
          type: string
          title: Name
        question_id_to_config:
          title: Question Id To Config
          description: 'Specifies additional configurations to use for specific questions in the context of the question set. For example, `{<question_a_id>: {required: true}, <question_b_id>: {required: true}}` sets two questions as required.'
          can_patch: false
          additionalProperties:
            $ref: '#/components/schemas/QuestionSetQuestionConfig'
          type: object
        instructions:
          title: Instructions
          description: Instructions to answer questions
          type: string
        account_id:
          type: string
          title: Account Id
          description: The ID of the account that owns the given entity.
          can_patch: false
        question_ids:
          title: Question Ids
          description: IDs of questions in the question set
          items:
            type: string
          type: array
      type: object
      required:
      - name
      - account_id
      - question_ids
      title: QuestionSetRequest
    IdentifierTypeEnum:
      type: string
      enum:
      - user
      - service_account
      title: IdentifierTypeEnum
    QuestionORMTypeEnum:
      type: string
      enum:
      - categorical
      - free_text
      - rating
      - number
      - form
      - timestamp
      title: QuestionORMTypeEnum
    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
          additionalProperties: true
      type: object
      required:
      - loc
      - msg
      - type
      title: ValidationError
    QuestionSetQuestionConfig:
      properties:
        required:
          title: Required
          description: Whether the question is required. False by default.
          default: false
          type: boolean
      type: object
      title: QuestionSetQuestionConfig
    PaginatedQuestionSetResponseWithViews:
      properties:
        items:
          items:
            $ref: '#/components/schemas/QuestionSetResponseWithViews'
          type: array
          title: Items
          description: The data returned for the current page.
        total_item_count:
          type: integer
          title: Total Item Count
          description: The total number of items of the query
        current_page:
          type: integer
          title: Current Page
          description: The current page number.
        items_per_page:
          type: integer
          title: Items Per Page
          description: The number of items per page.
      type: object
      required:
      - items
      - total_item_count
      - current_page
      - items_per_page
      title: PaginatedQuestionSetResponseWithViews
    CategoricalChoice:
      properties:
        label:
          title: Label
          type: string
        value:
          anyOf:
          - type: string
          - type: integer
          - type: boolean
          - type: number
          title: Value
        audit_required:
          type: boolean
          title: Audit Required
          default: false
      type: object
      required:
      - label
      - value
      title: CategoricalChoice
    QuestionSetViewsOptions:
      type: string
      enum:
      - Questions
      title: QuestionSetViewsOptions
    FreeTextQuestionOptions:
      properties:
        characterLimit:
          $ref: '#/components/schemas/CharacterLimit'
      type: object
      required:
      - characterLimit
      title: FreeTextQuestionOptions
    QuestionSetWithQuestions:
      properties:
        name:
          type: string
          title: Name
        question_id_to_config:
          title: Question Id To Config
          description: 'Specifies additional configurations to use for specific questions in the context of the question set. For example, `{<question_a_id>: {required: true}, <question_b_id>: {required: true}}` sets two questions as required.'
          can_patch: false
          additionalProperties:
            $ref: '#/components/schemas/QuestionSetQuestionConfig'
          type: object
        instructions:
          title: Instructions
          description: Instructions to answer questions
          type: string
        id:
          type: string
          title: Id
          description: The unique identifier of the entity.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: The date and time when the entity was created in ISO format.
        account_id:
          type: string
          title: Account Id
          description: The ID of the account that owns the given entity.
          can_patch: false
        created_by_user_id:
          type: string
          title: Created By User Id
          description: The user who originally created the entity.
        created_by_identity_type:
          $ref: '#/components/schemas/IdentifierTypeEnum'
          description: The type of identity that created the entity.
        archived_at:
          title: Archived At
          description: The date and time when the entity was archived in ISO format.
          type: string
          format: date-time
        questions:
          title: Questions
          items:
            $ref: '#/components/schemas/QuestionResponse'
          type: array
      type: object
      required:
      - name
      - id
      - created_at
      - account_id
      - created_by_user_id
      - created_by_identity_type
      - questions
      title: QuestionSetWithQuestions
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    QuestionSetResponseWithViews:
      properties:
        questions:
          title: Questions
          items:
            $ref: '#/components/schemas/QuestionResponse'
          type: array
        name:
          type: string
          title: Name
        question_id_to_config:
          title: Question Id To Config
          description: 'Specifies additional configurations to use for specific questions in the context of the question set. For example, `{<question_a_id>: {required: true}, <question_b_id>: {required: true}}` sets two questions as required.'
          can_patch: false
          additionalProperties:
            $ref: '#/components/schemas/QuestionSetQuestionConfig'
          type: object
        instructions:
          title: Instructions
          description: Instructions to answer questions
          type: string
        id:
          type: string
          title: Id
          description: The unique identifier of the entity.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: The date and time when the entity was created in ISO format.
        account_id:
          type: string
          title: Account Id
          description: The ID of the account that owns the given entity.
          can_patch: false
        created_by_user_id:
          type: string
          title: Created By User Id
          description: The user who originally created the entity.
        created_by_identity_type:
          $ref: '#/components/schemas/IdentifierTypeEnum'
          description: The type of identity that created the entity.
        archived_at:
          title: Archived At
          description: The date and time when the entity was archived in ISO format.
          type: string
          format: date-time
      type: object
      required:
      - name
      - id
      - created_at
      - account_id
      - created_by_user_id
      - created_by_identity_type
      title: QuestionSetResponseWithViews
    PartialQuestionSetRequest:
      properties:
        name:
          type: string
          title: Name
        instructions:
          title: Instructions
          description: Instructions to answer questions
          type: string
        question_ids:
          title: Question Ids
          description: IDs of questions in the question set
          items:
            type: string
          type: array
        restore:
          type: boolean
          const: false
          title: Restore
          description: Set to true to restore the entity from the database.
          default: false
      additionalProperties: false
      type: object
      title: PartialQuestionSetRequest
    DeleteResponse:
      properties:
        success:
          type: boolean
          title: Success
        count:
          type: integer
          title: Count
      type: object
      required:
      - success
      - count
      title: DeleteResponse
    CharacterLimit:
      properties:
        min:
          type: integer
          title: Min
          description: Minimum number of characters
          default: 50
        max:
          type: integer
          title: Max
          description: Maximum number of characters
          default: 1000
      type: object
      title: CharacterLimit
    RatingQuestionOptions:
      properties:
        minLabel:
          type: string
          title: Minlabel
          description: Minimum value for the rating
        maxLabel:
          type: string
          title: Maxlabel
          description: Maximum value for the rating
        scaleSteps:
          type: integer
          title: Scalesteps
          description: Number of steps in the rating scale
      type: object
      required:
      - minLabel
      - maxLabel
      - scaleSteps
      title: RatingQuestionOptions
    NumberQuestionOptions:
      properties:
        min:
          title: Min
          description: Minimum value for the number
          type: number
        max:
          title: Max
          description: Maximum value for the number
          type: number
      type: object
      title: NumberQuestionOptions
    RestoreRequest:
      properties:
        restore:
          type: boolean
          const: true
          title: Restore
          description: Set to true to restore the entity from the database.
      additionalProperties: false
      type: object
      required:
      - restore
      title: RestoreRequest
    QuestionSetResponse:
      properties:
        name:
          type: string
          title: Name
        question_id_to_config:
          title: Question Id To Config
          description: 'Specifies additional configurations to use for specific questions in the context of the question set. For example, `{<question_a_id>: {required: true}, <question_b_id>: {required: true}}` sets two questions as required.'
          can_patch: false
          additionalProperties:
            $ref: '#/components/schemas/QuestionSetQuestionConfig'
          type: object
        instructions:
          title: Instructions
          description: Instructions to answer questions
          type: string
        id:
          type: string
          title: Id
          description: The unique identifier of the entity.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: The date and time when the entity was created in ISO format.
        account_id:
          type: string
          title: Account Id
          description: The ID of the account that owns the given entity.
          can_patch: false
        created_by_user_id:
          type: string
          title: Created By User Id
          description: The user who originally created the entity.
        created_by_identity_type:
          $ref: '#/components/schemas/IdentifierTypeEnum'
          description: The type of identity that created the entity.
        archived_at:
          title: Archived At
          description: The date and time when the entity was archived in ISO format.
          type: string
          format: date-time
      type: object
      required:
      - name
      - id
      - created_at
      - account_id
      - created_by_user_id
      - created_by_identity_type
      title: QuestionSetResponse
    QuestionResponse:
      properties:
        type:
          $ref: '#/components/schemas/QuestionORMTypeEnum'
          description: The type of question
        title:
          type: string
          title: Title
        prompt:
          type: string
          title: Prompt
        choices:
          title: Choices
          description: List of choices for the question. Required for CATEGORICAL questions.
          items:
            $ref: '#/components/schemas/CategoricalChoice'
          type: array
        ratingOptions:
          $ref: '#/components/schemas/RatingQuestionOptions'
          description: Options for rating questions.
        numberOptions:
          $ref: '#/components/schemas/NumberQuestionOptions'
          description: Options for number questions.
        freeTextOptions:
          $ref: '#/components/schemas/FreeTextQuestionOptions'
          description: Options for free text questions.
        multi:
          title: Multi
          description: Whether the question allows multiple answers.
          type: boolean
        dropdown:
          title: Dropdown
          description: Whether the question is displayed as a dropdown in the UI.
          type: boolean
        required:
          title: Required
          description: '[To be deprecated in favor of question set question_id_to_config] Whether the question is required.'
          type: boolean
        conditions:
          title: Conditions
          description: Conditions for the question to be shown.
          items:
            additionalProperties: true
            type: object
          type: array
        default:
          title: Default
          description: The default value for the question.
        form_schema:
          title: Form Schema
          description: The schema for the question.
          additionalProperties: true
          type: object
        id:
          type: string
          title: Id
          description: The unique identifier of the entity.
        created_at:
          type: string
          format: date-time
          title: Created At
          description: The date and time when the entity was created in ISO format.
        account_id:
          type: string
          title: Account Id
          description: The ID of the account that owns the given entity.
          can_patch: false
        created_by_user_id:
          type: string
          title: Created By User Id
          description: The user who originally created the entity.
        created_by_identity_type:
          $ref: '#/components/schemas/IdentifierTypeEnum'
          description: The type of identity that created the entity.
      type: object
      required:
      - type
      - title
      - prompt
      - id
      - created_at
      - account_id
      - created_by_user_id
      - created_by_identity_type
      title: QuestionResponse
  securitySchemes:
    APIKeyHeader:
      type: apiKey
      in: header
      name: x-api-key
x-assembled-from: Per-operation OpenAPI fragments embedded verbatim in docs.gp.scale.com reference pages; source spec https://api.sgp.scale.com/openapi-versions/v4/openapi.json (404 when assembled)