AI Demos Jobs API

The jobs API from AI Demos — 5 operation(s) for jobs.

Operations 5

GET /v1/jobs/{request_id} Get Job #
GET /v1/jobs List Jobs #
POST /v1/jobs/{request_id}/cancel Cancel Job #
POST /v1/_debug/noop Submit Noop #
POST /v1/_debug/run Submit Runtest #

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/aidemos-com:aidemos-com-jobs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

aidemos-com-jobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Aidemos Com Jobs API
  version: 0.1.0
  description: 'Operations tagged jobs across 2 of this provider''s published API definitions: aidemos-com-openapi.json, mcp-openapi.json. Each path carries the servers of the definition it was published in.'
tags:
- name: Jobs
paths:
  /v1/jobs/{request_id}:
    get:
      tags:
      - Jobs
      summary: Get Job
      description: 'Single job -> JobView. Run umbrella (step_kind=''run'') -> the aggregated, incremental

        run view (tools as they finish + ranking/substrate when done).'
      operationId: get_job_v1_jobs__request_id__get
      parameters:
      - name: request_id
        in: path
        required: true
        schema:
          type: string
          title: Request Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema: {}
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/jobs:
    get:
      tags:
      - Jobs
      summary: List Jobs
      operationId: list_jobs_v1_jobs_get
      parameters:
      - name: limit
        in: query
        required: false
        schema:
          type: integer
          default: 25
          title: Limit
      - name: job_type
        in: query
        required: false
        schema:
          anyOf:
          - type: string
          - type: 'null'
          title: Job Type
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/JobView'
                title: Response List Jobs V1 Jobs Get
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/jobs/{request_id}/cancel:
    post:
      tags:
      - Jobs
      summary: Cancel Job
      description: '#241 (ClickUp 86bb2zu1v): cancel a job. A queued job is cancelled immediately; a running

        one flips to ''cancelling'' and the worker aborts it at its next heartbeat (≤30s). Jobs already

        terminal return 409.'
      operationId: cancel_job_v1_jobs__request_id__cancel_post
      parameters:
      - name: request_id
        in: path
        required: true
        schema:
          type: string
          title: Request Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CancelResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/_debug/noop:
    post:
      tags:
      - Jobs
      summary: Submit Noop
      operationId: submit_noop_v1__debug_noop_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NoopRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
  /v1/_debug/run:
    post:
      tags:
      - Jobs
      summary: Submit Runtest
      operationId: submit_runtest_v1__debug_run_post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RunTestRequest'
        required: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SubmitResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
components:
  schemas:
    NoopRequest:
      properties:
        note:
          type: string
          title: Note
          description: anything; echoed back in the job result
          default: hello
      type: object
      title: NoopRequest
    RunTestRequest:
      properties:
        n_tools:
          type: integer
          title: N Tools
          default: 3
        fail_nodes:
          items:
            type: string
          type: array
          title: Fail Nodes
          description: node ids that always fail, e.g. ['t1']
        hang_nodes:
          items:
            type: string
          type: array
          title: Hang Nodes
          description: node ids that hang past the lease
        tool_seconds:
          type: number
          title: Tool Seconds
          default: 0.5
      type: object
      title: RunTestRequest
    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
    SubmitResponse:
      properties:
        job_run_id:
          type: string
          title: Job Run Id
        status:
          type: string
          title: Status
          default: queued
      type: object
      required:
      - job_run_id
      title: SubmitResponse
    JobView:
      properties:
        job_run_id:
          type: string
          title: Job Run Id
        job_type:
          type: string
          title: Job Type
        status:
          type: string
          title: Status
        dry_run:
          type: boolean
          title: Dry Run
        payload_record_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Payload Record Id
        input:
          additionalProperties: true
          type: object
          title: Input
          default: {}
        result:
          anyOf:
          - {}
          - type: 'null'
          title: Result
        error:
          anyOf:
          - type: string
          - type: 'null'
          title: Error
        logs:
          items: {}
          type: array
          title: Logs
          default: []
        cost:
          additionalProperties: true
          type: object
          title: Cost
          default: {}
        attempts:
          type: integer
          title: Attempts
          default: 0
        step_kind:
          anyOf:
          - type: string
          - type: 'null'
          title: Step Kind
        parent_run_id:
          anyOf:
          - type: string
          - type: 'null'
          title: Parent Run Id
        gate_refusal:
          anyOf:
          - type: string
          - type: 'null'
          title: Gate Refusal
        trace_url:
          anyOf:
          - type: string
          - type: 'null'
          title: Trace Url
        created_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Created At
        started_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Started At
        finished_at:
          anyOf:
          - type: string
          - type: 'null'
          title: Finished At
      type: object
      required:
      - job_run_id
      - job_type
      - status
      - dry_run
      title: JobView
    CancelResponse:
      properties:
        job_run_id:
          type: string
          title: Job Run Id
        status:
          type: string
          title: Status
      type: object
      required:
      - job_run_id
      - status
      title: CancelResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
x-refined-from:
- aidemos-com-openapi.json
- mcp-openapi.json