ArthurAI Jobs V1 API
The Jobs V1 API from ArthurAI — 7 operation(s) for jobs v1.
The Jobs V1 API from ArthurAI — 7 operation(s) for jobs v1.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/arthurai-jobs-v1-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Arthur Scope Jobs V1 API
version: 0.1.0
tags:
- name: Jobs V1
paths:
/api/v1/jobs/{job_id}:
get:
tags:
- Jobs V1
summary: Get Job By Id
description: Returns a single job by ID. Requires project_job_read permission.
operationId: get_job
security:
- OAuth2AuthorizationCode:
- project_job_read
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
patch:
tags:
- Jobs V1
summary: Update Job By Id
description: Updates a single job by ID. Requires project_job_update permission.
operationId: update_job
security:
- OAuth2AuthorizationCode:
- project_job_update
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PatchJob'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/jobs/{job_id}/state:
put:
tags:
- Jobs V1
summary: Update Job State
description: Update job state. Requires project_job_put_state permission.
operationId: put_job_state
security:
- OAuth2AuthorizationCode:
- project_job_put_state
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: job_run_id
in: query
required: true
schema:
type: string
format: uuid
description: Job run ID associated with the state update.
title: Job Run Id
description: Job run ID associated with the state update.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PutJobState'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/Job'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/jobs/{job_id}/runs:
get:
tags:
- Jobs V1
summary: Get Job Runs
description: Get Job runs. Required project_job_read_runs permission.
operationId: get_job_runs
security:
- OAuth2AuthorizationCode:
- project_job_read_runs
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceList_JobRun_'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/jobs/{job_id}/runs/{job_run_id}/logs:
post:
tags:
- Jobs V1
summary: Append To Job Logs
description: Append job logs. Requires project_job_append_logs permission.
operationId: post_job_logs
security:
- OAuth2AuthorizationCode:
- project_job_append_logs
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: job_run_id
in: path
required: true
schema:
type: string
format: uuid
description: The job run associated with the logs. Should be formatted as a UUID.
title: Job Run Id
description: The job run associated with the logs. Should be formatted as a UUID.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/JobLogs'
responses:
'204':
description: Successful Response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- Jobs V1
summary: Get Job Logs
description: Get job logs for a run. Requires project_job_read_logs permission.
operationId: get_job_logs
security:
- OAuth2AuthorizationCode:
- project_job_read_logs
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: job_run_id
in: path
required: true
schema:
type: string
format: uuid
description: The job run associated with the logs. Should be formatted as a UUID.
title: Job Run Id
description: The job run associated with the logs. Should be formatted as a UUID.
- name: order
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrder'
description: Override the sort order used. Optional.
default: asc
description: Override the sort order used. Optional.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceList_JobLog_'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/jobs/{job_id}/runs/{job_run_id}/errors:
post:
tags:
- Jobs V1
summary: Append To Job Errors
description: Append job errors. Requires project_job_append_errors permission.
operationId: post_job_errors
security:
- OAuth2AuthorizationCode:
- project_job_append_errors
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: job_run_id
in: path
required: true
schema:
type: string
format: uuid
description: The job run associated with the errors. Should be formatted as a UUID.
title: Job Run Id
description: The job run associated with the errors. Should be formatted as a UUID.
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/JobErrors'
responses:
'204':
description: Successful Response
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
get:
tags:
- Jobs V1
summary: Get Job Errors
description: Get job errors. Requires project_job_read_errors permission.
operationId: get_job_errors
security:
- OAuth2AuthorizationCode:
- project_job_read_errors
parameters:
- name: job_id
in: path
required: true
schema:
type: string
format: uuid
title: Job Id
- name: job_run_id
in: path
required: true
schema:
type: string
format: uuid
description: The job run associated with the errors. Should be formatted as a UUID.
title: Job Run Id
description: The job run associated with the errors. Should be formatted as a UUID.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ResourceList_JobError_'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/projects/{project_id}/jobs:
get:
tags:
- Jobs V1
summary: List Jobs
description: 'Returns jobs in the project matching the filter and sorting criteria. If multiple filters are specified, results will only be returned that match all of the specified criteria. Requires project_list_jobs permission. Note: exclude_kinds takes precedence over kinds and will exclude jobs even if they are in kinds.'
operationId: get_jobs
security:
- OAuth2AuthorizationCode:
- project_list_jobs
parameters:
- name: project_id
in: path
required: true
schema:
type: string
format: uuid
title: Project Id
- name: sort
in: query
required: false
schema:
$ref: '#/components/schemas/JobsSort'
description: Override the field used for sorting the returned list. Optional.
default: queued_at
description: Override the field used for sorting the returned list. Optional.
- name: order
in: query
required: false
schema:
$ref: '#/components/schemas/SortOrder'
description: Override the sort order used. Optional.
default: desc
description: Override the sort order used. Optional.
- name: duration_sec_greater_than
in: query
required: false
schema:
type: integer
description: Filter the results for jobs that ran for greater than or equal to this number of seconds. Optional.
title: Duration Sec Greater Than
description: Filter the results for jobs that ran for greater than or equal to this number of seconds. Optional.
- name: duration_sec_less_than
in: query
required: false
schema:
type: integer
description: Filter the results for the jobs that ran for less than or equal to this number of seconds. Optional.
title: Duration Sec Less Than
description: Filter the results for the jobs that ran for less than or equal to this number of seconds. Optional.
- name: started_before
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that started before this timestamp. Optional.
title: Started Before
description: Filter the results for the jobs that started before this timestamp. Optional.
- name: started_after
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that started after this timestamp. Optional.
title: Started After
description: Filter the results for the jobs that started after this timestamp. Optional.
- name: queued_before
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that were queued before this timestamp. Optional.
title: Queued Before
description: Filter the results for the jobs that were queued before this timestamp. Optional.
- name: queued_after
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that were queued after this timestamp. Optional.
title: Queued After
description: Filter the results for the jobs that were queued after this timestamp. Optional.
- name: ready_before
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that are ready before this timestamp. Optional.
title: Ready Before
description: Filter the results for the jobs that are ready before this timestamp. Optional.
- name: ready_before_current_time
in: query
required: false
schema:
type: boolean
description: When true, filters jobs ready before the current server time. Takes precedence over ready_before. Optional.
default: false
title: Ready Before Current Time
description: When true, filters jobs ready before the current server time. Takes precedence over ready_before. Optional.
- name: ready_after
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that are ready after this timestamp. Optional.
title: Ready After
description: Filter the results for the jobs that are ready after this timestamp. Optional.
- name: ready_after_current_time
in: query
required: false
schema:
type: boolean
description: When true, filters jobs ready after the current server time. Takes precedence over ready_after. Optional.
default: false
title: Ready After Current Time
description: When true, filters jobs ready after the current server time. Takes precedence over ready_after. Optional.
- name: finished_before
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that finished before this timestamp. Optional.
title: Finished Before
description: Filter the results for the jobs that finished before this timestamp. Optional.
- name: finished_after
in: query
required: false
schema:
type: string
format: date-time
description: Filter the results for the jobs that finished after this timestamp. Optional.
title: Finished After
description: Filter the results for the jobs that finished after this timestamp. Optional.
- name: kinds
in: query
required: false
schema:
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/JobKind'
description: Filter the results for the jobs of this kind. Optional.
title: Kinds
description: Filter the results for the jobs of this kind. Optional.
- name: exclude_kinds
in: query
required: false
schema:
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/JobKind'
description: Exclude jobs of these kinds. Takes precedence over kinds.
title: Exclude Kinds
description: Exclude jobs of these kinds. Takes precedence over kinds.
- name: states
in: query
required: false
schema:
type: array
uniqueItems: true
items:
$ref: '#/components/schemas/JobState'
description: Filter the results for jobs in these states. Optional.
title: States
description: Filter the results for jobs in these states. Optional.
- name: error_count_above
in: query
required: false
schema:
type: integer
description: Filter the results for the jobs that had greater than or equal to this many errors. Optional.
title: Error Count Above
description: Filter the results for the jobs that had greater than or equal to this many errors. Optional.
- name: data_plane_id
in: query
required: false
schema:
type: string
format: uuid
description: Filter the results for the jobs that were ran on this dataplane. Optional.
title: Data Plane Id
description: Filter the results for the jobs that were ran on this dataplane. Optional.
- name: schedule_id
in: query
required: false
schema:
type: string
format: uuid
description: Filter the results for jobs associated with this schedule ID. Optional.
title: Schedule Id
description: Filter the results for jobs associated with this schedule ID. Optional.
- name: trigger_type
in: query
required: false
schema:
$ref: '#/components/schemas/JobTrigger'
description: Filter the results for the jobs that were started by this trigger type. Optional.
description: Filter the results for the jobs that were started by this trigger type. Optional.
- name: triggered_by_user_id
in: query
required: false
schema:
type: string
format: uuid
description: Filter the results for the jobs that started by this user id. Only valid when trigger_type = 'user'. Optional.
title: Triggered By User Id
description: Filter the results for the jobs that started by this user id. Only valid when trigger_type = 'user'. Optional.
- name: triggered_by_user_email
in: query
required: false
schema:
type: string
description: Filter the results for the jobs that started by this user email. Only valid when trigger_type = 'user'. Optional.
format: email
title: Triggered By User Email
description: Filter the results for the jobs that started by this user email. Only valid when trigger_type = 'user'. Optional.
- name: model_id
in: query
required: false
schema:
type: string
format: uuid
description: Filter the results for jobs associated with this model ID. Includes jobs associated with datasets used by the model. Optional.
title: Model Id
description: Filter the results for jobs associated with this model ID. Includes jobs associated with datasets used by the model. Optional.
- name: nonce
in: query
required: false
schema:
type: string
description: Filter the results for jobs that match a job nonce used to ensure exactly once execution.
title: Nonce
description: Filter the results for jobs that match a job nonce used to ensure exactly once execution.
- name: page
in: query
required: false
schema:
type: integer
minimum: 1
description: The page to return starting from 1 up to total_pages.
default: 1
title: Page
description: The page to return starting from 1 up to total_pages.
- name: page_size
in: query
required: false
schema:
type: integer
maximum: 1000
minimum: 1
description: The number of records per page. The max is 1000.
default: 20
title: Page Size
description: The number of records per page. The max is 1000.
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/InfiniteResourceList_Job_'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- Jobs V1
summary: Submit Jobs Batch
description: Submit new jobs to run. Requires project_create_job permission.
operationId: post_submit_jobs_batch
security:
- OAuth2AuthorizationCode:
- project_create_job
parameters:
- name: project_id
in: path
required: true
schema:
type: string
format: uuid
title: Project Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PostJobBatch'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/JobsBatch'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestError'
description: Bad Request
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
/api/v1/data_planes/{data_plane_id}/jobs/next:
post:
tags:
- Jobs V1
summary: Dequeue Job
description: Returns the next available job for processing from the data plane's job queue. Requires data_plane_jobs_dequeue_next permission.
operationId: post_dequeue_job
security:
- OAuth2AuthorizationCode:
- data_plane_jobs_dequeue_next
parameters:
- name: data_plane_id
in: path
required: true
schema:
type: string
format: uuid
title: Data Plane Id
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/JobDequeueParameters'
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/JobRun'
'500':
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerError'
description: Internal Server Error
'204':
description: No Content
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: Not Found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
SchemaInspectionJobSpec:
properties:
job_type:
type: string
const: schema_inspection
title: Job Type
default: schema_inspection
connector_id:
type: string
format: uuid
title: Connector Id
description: The id of the connector to list datasets.
available_dataset_id:
type: string
format: uuid
title: Available Dataset Id
description: The id of the dataset within the connector to inspect the schema.
type: object
required:
- connector_id
- available_dataset_id
title: SchemaInspectionJobSpec
ConnectorCheckJobSpec:
properties:
job_type:
type: string
const: connector_check
title: Job Type
default: connector_check
connector_id:
type: string
format: uuid
title: Connector Id
description: The id of the connector to check.
type: object
required:
- connector_id
title: ConnectorCheckJobSpec
JobsSort:
type: string
enum:
- queued_at
- started_at
- finished_at
title: JobsSort
CompliancePolicyCheckJobSpec:
properties:
job_type:
type: string
const: compliance_policy_check
title: Job Type
default: compliance_policy_check
scope_model_id:
type: string
format: uuid
title: Scope Model Id
description: The id of the model to run compliance policy checks on.
check_range_start_timestamp:
type: string
format: date-time
title: Check Range Start Timestamp
description: Start of the window the compliance check evaluates.
check_range_end_timestamp:
type: string
format: date-time
title: Check Range End Timestamp
description: End of the window the compliance check evaluates.
policy_assignment_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Policy Assignment Id
description: Optional id of a specific policy assignment to check. If omitted, all assignments for the model are checked.
type: object
required:
- scope_model_id
- check_range_start_timestamp
- check_range_end_timestamp
title: CompliancePolicyCheckJobSpec
InfiniteResourceList_Job_:
properties:
records:
items:
$ref: '#/components/schemas/Job'
type: array
title: Records
description: List of records.
pagination:
$ref: '#/components/schemas/InfinitePagination'
description: Pagination information.
type: object
required:
- records
- pagination
title: InfiniteResourceList[Job]
CreateModelTaskJobSpec:
properties:
job_type:
type: string
const: create_model_task
title: Job Type
default: create_model_task
connector_id:
type: string
format: uuid
title: Connector Id
description: The id of the engine internal connector to use to create the task.
task_name:
type: string
title: Task Name
description: The name of the task.
onboarding_identifier:
anyOf:
- type: string
- type: 'null'
title: Onboarding Identifier
description: An identifier to assign to the created model to make it easy to retrieve. Used by the UI during the GenAI model creation flow.
initial_rules:
items:
$ref: '#/components/schemas/NewRuleRequest'
type: array
title: Initial Rules
description: The initial rules to apply to the created model.
task_type:
$ref: '#/components/schemas/TaskType'
description: The type of task to create.
default: traditional
initial_metrics:
items:
$ref: '#/components/schemas/NewMetricRequest'
type: array
title: Initial Metrics
description: The initial metrics to apply to agentic tasks.
agent_metadata:
anyOf:
- $ref: '#/components/schemas/AgentMetadata'
- type: 'null'
description: Metadata for registered agents.
type: object
required:
- connector_id
- task_name
- initial_rules
- initial_metrics
title: CreateModelTaskJobSpec
RegisteredAgentProvider:
type: string
enum:
- gcp
- external
title: RegisteredAgentProvider
KeywordsConfig:
properties:
keywords:
items:
type: string
type: array
title: Keywords
description: List of Keywords
type: object
required:
- keywords
title: KeywordsConfig
example:
keywords:
- Blocked_Keyword_1
- Blocked_Keyword_2
JobErrors:
properties:
errors:
items:
$ref: '#/components/schemas/JobError'
type: array
title: Errors
description: List of errors encountered during the job execution.
type: object
required:
- errors
title: JobErrors
UpdateModelTaskRulesJobSpec:
properties:
job_type:
type: string
const: update_model_task_rules
title: Job Type
default: update_model_task_rules
scope_model_id:
type: string
format: uuid
title: Scope Model Id
description: The id of the model to upd
# --- truncated at 32 KB (72 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arthurai/refs/heads/main/openapi/arthurai-jobs-v1-api-openapi.yml