Pixxel Jobs API

The Jobs API from Pixxel — 3 operation(s) for jobs.

OpenAPI Specification

pixxel-jobs-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  description: Swagger doc for Stargate
  title: stargate AOI Jobs API
  contact:
    name: Team-Identity
    email: identity@pixxel.co.in
  version: v0.1.0
servers:
- url: https://api.pixxel.space
tags:
- name: Jobs
paths:
  /v0/workflows/{workflow_id}/jobs:
    get:
      security:
      - ApiKeyAuth: []
      description: List Jobs for a given workflow id
      tags:
      - Jobs
      summary: List Jobs
      operationId: listJobs
      parameters:
      - description: Unique identifier for the workflow to list jobs from
        name: workflow_id
        in: path
        required: true
        schema:
          type: string
      - description: Filter by specific job ID
        name: id
        in: query
        schema:
          type: string
      - description: Filter jobs by their current status (e.g., running, completed)
        name: status
        in: query
        schema:
          type: string
      - description: Filter jobs by user who created them
        name: created_by
        in: query
        schema:
          type: string
      - description: Filter jobs by creation date
        name: created_on
        in: query
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dexter.ListJobsTransformerResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
      externalDocs:
        description: View developer guide to learn more
        url: /developer/jobs/list-jobs
    post:
      security:
      - ApiKeyAuth: []
      description: Create a job from a given workflow
      tags:
      - Jobs
      summary: Create a job from a given workflow
      operationId: createJob
      parameters:
      - description: Unique identifier for the workflow to create a job from
        name: workflow_id
        in: path
        required: true
        schema:
          type: string
      - description: Project identifier the workflow belongs to
        name: project_id
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dexter.PostWorkflowRunTransformerResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
      externalDocs:
        description: View developer guide to learn more
        url: /developer/jobs/create-job
  /v0/workflows/{workflow_id}/jobs/{job_id}:
    get:
      security:
      - ApiKeyAuth: []
      description: Get Job by Id and WF Id
      tags:
      - Jobs
      summary: Get Job by Id and WF Id
      operationId: getJobById
      parameters:
      - description: Unique identifier for the workflow
        name: workflow_id
        in: path
        required: true
        schema:
          type: string
      - description: Unique identifier for the job within the workflow
        name: job_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dexter.GetJobByIdTransformerResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
      externalDocs:
        description: View developer guide to learn more
        url: /developer/jobs/get-job
  /v0/workflows/{workflow_id}/jobs/{job_id}/download:
    put:
      security:
      - ApiKeyAuth: []
      description: Creates a download package containing the specified input and output files from a job run of a workflow.
      tags:
      - Jobs
      summary: Download Job
      operationId: downloadJob
      parameters:
      - description: Unique ID of the workflow to download assets from
        name: workflow_id
        in: path
        required: true
        schema:
          type: string
      - description: Specific job ID within the workflow from which to create download package
        name: job_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/dexter.PutJobUpstreamResponseBody'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
        '403':
          description: Forbidden
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/common.ErrorResponse'
      externalDocs:
        description: View developer guide to learn more
        url: /developer/jobs/download-job
components:
  schemas:
    common.Error:
      type: object
      properties:
        code:
          type: string
        details: {}
        message:
          type: string
    common.ErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/common.Error'
    dexter.PutJobUpstreamResponseBody:
      type: object
      properties:
        id:
          description: Unique identifier of the insight
          type: string
          x-order: '10'
        status:
          description: Current status of the download operation
          type: string
          x-order: '20'
        signed_url:
          description: URL where the packaged assets can be downloaded from
          type: string
          x-order: '30'
        workflowId:
          description: WorkflowId of the Job
          type: string
          x-order: '40'
    dexter.ListJobsTransformerResponse:
      type: object
      properties:
        jobs:
          type: array
          items:
            $ref: '#/components/schemas/dexter.ListJobsItem'
          x-order: '10'
    dexter.PostWorkflowTaskGet:
      type: object
      properties:
        id:
          description: Uniquely identifies each task in the workflow execution
          type: string
          x-order: '10'
        info_logs:
          description: Debugging and execution information in raw bytes
          type: array
          items:
            type: integer
          x-order: '100'
        created_at:
          description: Timestamp when the task was initialized
          type: string
          x-order: '110'
        updated_at:
          description: Timestamp of the most recent task modification
          type: string
          x-order: '120'
        finished_at:
          description: Timestamp when task processing ended
          type: string
          x-order: '130'
        estimated_time_duration:
          description: Predicted seconds until task completes
          type: integer
          x-order: '140'
        time_taken:
          description: Actual duration from start to finish
          type: string
          x-order: '150'
        status:
          description: Current execution status of the task
          type: string
          x-order: '160'
        state_msg:
          description: Additional context about the current state
          type: string
          x-order: '170'
        inputs:
          description: Raw JSON data supplied to the task
          type: array
          items:
            type: integer
          x-order: '180'
        result:
          description: Raw JSON output produced by the task
          type: array
          items:
            type: integer
          x-order: '190'
        depends_on:
          description: Lists task names that must finish before this task begins
          type: array
          items:
            type: string
          x-order: '20'
        name:
          description: Descriptive label for the task
          type: string
          x-order: '200'
        progress:
          description: Completion percentage from 0 to 100
          type: number
          x-order: '210'
        disclaimer:
          description: Warnings or notices about task execution
          type: array
          items:
            type: string
          x-order: '220'
        recv_time:
          description: Timestamp when the system received the task request
          type: string
          x-order: '30'
        send_time:
          description: Timestamp when the task was sent for execution
          type: string
          x-order: '40'
        block_inf_start_time:
          description: Marks when inference processing began
          type: string
          x-order: '50'
        block_inf_end_time:
          description: Marks when inference processing completed
          type: string
          x-order: '60'
        block_info:
          description: Describes the block used in the task
          type: object
          properties:
            id:
              description: Unique identifier for this block
              type: string
            name:
              description: Human-friendly block identifier
              type: string
            version:
              description: Semantic versioning string of the block
              type: string
          x-order: '70'
        err_msg:
          description: Error text returned by the model during execution
          type: string
          x-order: '80'
        failure_type:
          description: Categorizes the specific error that occurred
          type: string
          x-order: '90'
    dexter.ListJobsItem:
      type: object
      properties:
        created_by:
          description: ID of the user who created the job
          type: string
          x-order: '10'
        id:
          description: unique identifier for the job
          type: string
          x-order: '100'
        cost:
          description: cost of the job
          type: integer
          x-order: '110'
        workflow_id:
          description: unique identifier of the workflow the job belongs to
          type: string
          x-order: '20'
        created_at:
          description: timestamp when the job was created
          type: string
          x-order: '30'
        updated_at:
          description: timestamp when the job was last updated
          type: string
          x-order: '40'
        finished_at:
          description: timestamp when the job was completed
          type: string
          x-order: '50'
        estimated_duration:
          description: expected time to complete the job in seconds
          type: integer
          x-order: '60'
        progress:
          description: current completion percentage of the job
          type: string
          x-order: '70'
        status:
          description: current state of the job
          type: string
          x-order: '80'
        time_taken:
          description: actual duration the job took to complete
          type: string
          x-order: '90'
    dexter.ValError:
      type: object
      properties:
        from:
          description: Source component of the validation error
          type: string
          x-order: '10'
        to:
          description: Target component of the validation error
          type: string
          x-order: '20'
        err:
          description: Error message
          type: string
          x-order: '30'
        reason:
          description: Additional context about why the error occurred
          type: string
          x-order: '40'
        component_name:
          description: Specific component that generated the error
          type: string
          x-order: '50'
    dexter.PostWorkflowRunTransformerResponse:
      type: object
      properties:
        created_by:
          description: Unique identifier of the user who created the job
          type: string
          x-order: '10'
        status:
          description: Current status of the job
          type: string
          x-order: '100'
        time_taken:
          description: Actual duration the job took to complete
          type: string
          x-order: '110'
        id:
          description: Unique identifier for the job
          type: string
          x-order: '120'
        tasks:
          description: List of tasks in this job
          type: array
          items:
            $ref: '#/components/schemas/dexter.PostWorkflowTaskGet'
          x-order: '130'
        val_errors:
          description: Validation errors encountered
          type: array
          items:
            $ref: '#/components/schemas/dexter.ValError'
          x-order: '140'
        spec:
          description: Raw specification data for the job
          type: array
          items:
            type: integer
          x-order: '150'
        cost:
          description: Token cost of the job
          type: integer
          x-order: '160'
        workflow_id:
          description: Unique identifier of the workflow this job belongs to
          type: string
          x-order: '20'
        updated_at:
          description: Timestamp when the job was last updated
          type: string
          x-order: '30'
        finished_at:
          description: Timestamp when the job was completed
          type: string
          x-order: '40'
        exec_created_at:
          description: Timestamp when the job execution was created
          type: string
          x-order: '50'
        exec_updated_at:
          description: Timestamp when the job execution was last updated
          type: string
          x-order: '60'
        created_at:
          description: Timestamp when the job was created
          type: string
          x-order: '70'
        estimated_duration:
          description: Expected time in seconds to complete the job
          type: integer
          x-order: '80'
        progress:
          description: Completion percentage of the job
          type: string
          x-order: '90'
    dexter.GetJobByIdTransformerResponse:
      type: object
      properties:
        created_by:
          description: Unique identifier of the user who created the job
          type: string
          x-order: '10'
        status:
          description: Current status of the job
          type: string
          x-order: '100'
        time_taken:
          description: Total time taken by the job
          type: string
          x-order: '110'
        id:
          description: Unique identifier of the job
          type: string
          x-order: '120'
        tasks:
          description: List of tasks in this job
          type: array
          items:
            $ref: '#/components/schemas/dexter.PostWorkflowTaskGet'
          x-order: '130'
        val_errors:
          description: Validation errors encountered
          type: array
          items:
            $ref: '#/components/schemas/dexter.ValError'
          x-order: '140'
        spec:
          description: Raw specification data for the job
          type: array
          items:
            type: integer
          x-order: '150'
        cost:
          description: Computational cost of the job
          type: integer
          x-order: '160'
        workflow_id:
          description: Unique identifier of the workflow this job belongs to
          type: string
          x-order: '20'
        updated_at:
          description: When the job was last updated
          type: string
          x-order: '30'
        finished_at:
          description: When the job was completed
          type: string
          x-order: '40'
        exec_created_at:
          description: When the job execution was created
          type: string
          x-order: '50'
        exec_updated_at:
          description: When the job execution was last updated
          type: string
          x-order: '60'
        created_at:
          description: When the job was created
          type: string
          x-order: '70'
        estimated_duration:
          description: Estimated time in seconds to complete the job
          type: integer
          x-order: '80'
        progress:
          description: Completion percentage of the job
          type: string
          x-order: '90'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      name: Authorization
      in: header