Arthur AI Jobs V1 API
The Jobs V1 API from Arthur AI — 7 operation(s) for jobs v1.
The Jobs V1 API from Arthur AI — 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/arthur-ai-jobs-v1-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
openapi: 3.2.0
info:
title: Arthur Scope Agents V1 Jobs V1 API
version: 0.1.0
servers:
- url: https://platform.arthur.ai/api
description: Base URL declared by the provider in apis.yml (roadmap#122).
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:
JobsSort:
type: string
enum:
- queued_at
- started_at
- finished_at
title: JobsSort
ScheduleJobsJobSpec:
properties:
job_type:
type: string
const: schedule_jobs
title: Job Type
default: schedule_jobs
scope_model_id:
type: string
format: uuid
title: Scope Model Id
description: The ID of the model to source the schedule from.
start_timestamp:
type: string
format: date-time
title: Start Timestamp
description: Inclusive timestamp marking the start of the job series.
type: object
required:
- scope_model_id
- start_timestamp
title: ScheduleJobsJobSpec
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
UserType:
type: string
enum:
- user
- data_plane
- service_account
title: UserType
JobLogs:
properties:
logs:
items:
$ref: '#/components/schemas/JobLog'
type: array
title: Logs
description: List of log statements pertaining to the job execution.
type: object
required:
- logs
title: JobLogs
ResourceList_JobRun_:
properties:
records:
items:
$ref: '#/components/schemas/JobRun'
type: array
title: Records
description: List of records.
pagination:
$ref: '#/components/schemas/Pagination'
description: Pagination information.
type: object
required:
- records
- pagination
title: ResourceList[JobRun]
DataResultFilterOp:
type: string
enum:
- greater_than
- less_than
- equals
- not_equals
- greater_than_or_equal
- less_than_or_equal
- in
- not_in
title: DataResultFilterOp
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
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 update the task rules.
rules_to_enable:
items:
type: string
format: uuid
type: array
title: Rules To Enable
description: The list of rule IDs to enable on the task.
rules_to_disable:
items:
type: string
format: uuid
type: array
title: Rules To Disable
description: The list of rule IDs to disable on the task.
rules_to_archive:
items:
type: string
format: uuid
type: array
title: Rules To Archive
description: The list of rule IDs to archive on the task.
rules_to_add:
items:
$ref: '#/components/schemas/NewRuleRequest'
type: array
title: Rules To Add
description: The new rules to add to the task.
type: object
required:
- scope_model_id
title: UpdateModelTaskRulesJobSpec
JobKind:
type: string
enum:
- metrics_calculation
- connector_check
- list_datasets
- schema_inspection
- fetch_data
- alert_check
- schedule_jobs
- create_model_task
- create_model_link_task
- update_model_task_rules
- delete_model_task
- fetch_model_task
- regenerate_task_validation_key
- test_custom_aggregation
- discover_agents
- compliance_policy_check
title: JobKind
DiscoverAgentsJobSpec:
properties:
job_type:
type: string
const: discover_agents
title: Job Type
default: discover_agents
workspace_id:
type: string
format: uuid
title: Workspace Id
description: The ID of the workspace to discover agents for.
data_plane_id:
type: string
format: uuid
title: Data Plane Id
description: The ID of the data plane to scan for agents.
project_id:
anyOf:
- type: string
format: uuid
- type: 'null'
title: Project Id
description: Optional ID of the "Registered Applications" project for filtering against existing models.
lookback_hours:
type: integer
title: Lookback Hours
description: 'Number of hours to look back in trace history (default: 720 hours = 30 da
# --- truncated at 32 KB (72 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/arthur-ai/refs/heads/main/openapi/arthur-ai-jobs-v1-api-openapi.yml