ibm-quantum · Capability
IBM Qiskit Runtime — Jobs
IBM Qiskit Runtime — Jobs. 10 operations across the IBM Qiskit Runtime REST API. Self-contained Naftiko capability covering one IBM Quantum business surface.
What You Can Do
GET
Get job
— List Job Details
/v1/v1/jobs/{id}
DELETE
Delete job
— Delete a Job
/v1/v1/jobs/{id}
GET
List jobs
— List Jobs
/v1/v1/jobs
POST
Create job
— Run a Job
/v1/v1/jobs
GET
Get job results jid
— List Job Results
/v1/v1/jobs/{id}/results
GET
Get jog logs jid
— List Job Logs
/v1/v1/jobs/{id}/logs
POST
Cancel job jid
— Cancel a Job
/v1/v1/jobs/{id}/cancel
GET
Get job metrics jid
— Get Job Metrics
/v1/v1/jobs/{id}/metrics
PUT
Replace job tags
— Replace Job Tags
/v1/v1/jobs/{id}/tags
GET
List tags
— List Tags
/v1/v1/tags
MCP Tools
ibm-quantum-get-job
List Job Details
read-only
idempotent
ibm-quantum-delete-job
Delete a Job
idempotent
ibm-quantum-list-jobs
List Jobs
read-only
idempotent
ibm-quantum-create-job
Run a Job
ibm-quantum-get-job-results-jid
List Job Results
read-only
idempotent
ibm-quantum-get-jog-logs-jid
List Job Logs
read-only
idempotent
ibm-quantum-cancel-job-jid
Cancel a Job
ibm-quantum-get-job-metrics-jid
Get Job Metrics
read-only
idempotent
ibm-quantum-replace-job-tags
Replace Job Tags
idempotent
ibm-quantum-list-tags
List Tags
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: "IBM Qiskit Runtime \u2014 Jobs"
description: "IBM Qiskit Runtime \u2014 Jobs. 10 operations across the IBM Qiskit Runtime REST API. Self-contained Naftiko capability covering one IBM Quantum business surface."
tags:
- IBM Quantum
- Quantum Computing
- Qiskit
- Jobs
created: '2026-05-25'
modified: '2026-05-25'
binds:
- namespace: env
keys:
IBM_CLOUD_API_KEY: IBM_CLOUD_API_KEY
IBM_QUANTUM_CRN: IBM_QUANTUM_CRN
IBM_QUANTUM_API_VERSION: IBM_QUANTUM_API_VERSION
capability:
consumes:
- type: http
namespace: runtime-jobs
baseUri: https://quantum.cloud.ibm.com/api
description: "IBM Qiskit Runtime \u2014 Jobs business capability. Self-contained, no shared references."
resources:
- name: v1-jobs-id
path: /v1/jobs/{id}
operations:
- name: get-job
method: GET
description: List Job Details
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: exclude_params
in: query
type: boolean
description: Exclude job params from the response
required: false
- name: delete-job
method: DELETE
description: Delete a Job
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v1-jobs
path: /v1/jobs
operations:
- name: list-jobs
method: GET
description: List Jobs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: limit
in: query
type: integer
description: Number of results to return at a time. If the provided value is outside of the viable range, no error occurs and the default value is used instead.
required: false
- name: offset
in: query
type: integer
description: Number of results to offset when retrieving the list of jobs. If the provided value is outside of the viable range, no error occurs and the default value is used instead.
required: false
- name: pending
in: query
type: boolean
description: Returns 'Queued' and 'Running' jobs if true. Returns 'Completed', 'Cancelled', and 'Failed' jobs if false.
required: false
- name: program
in: query
type: string
description: Program ID to filter jobs
required: false
- name: backend
in: query
type: string
description: Backend to filter jobs
required: false
- name: created_after
in: query
type: string
description: Job created after filter
required: false
- name: created_before
in: query
type: string
description: Job created before filter
required: false
- name: sort
in: query
type: string
description: Sort jobs by created time ASC or DESC (default)
required: false
- name: tags
in: query
type: string
description: Tags to filter jobs
required: false
- name: session_id
in: query
type: string
description: Session ID to filter jobs
required: false
- name: exclude_params
in: query
type: boolean
description: Exclude job params from the response
required: false
- name: create-job
method: POST
description: Run a Job
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: Parent-Job-Id
in: header
type: string
description: Parent job ID
required: false
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-jobs-id-results
path: /v1/jobs/{id}/results
operations:
- name: get-job-results-jid
method: GET
description: List Job Results
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v1-jobs-id-logs
path: /v1/jobs/{id}/logs
operations:
- name: get-jog-logs-jid
method: GET
description: List Job Logs
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v1-jobs-id-cancel
path: /v1/jobs/{id}/cancel
operations:
- name: cancel-job-jid
method: POST
description: Cancel a Job
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v1-jobs-id-metrics
path: /v1/jobs/{id}/metrics
operations:
- name: get-job-metrics-jid
method: GET
description: Get Job Metrics
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: v1-jobs-id-tags
path: /v1/jobs/{id}/tags
operations:
- name: replace-job-tags
method: PUT
description: Replace Job Tags
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: v1-tags
path: /v1/tags
operations:
- name: list-tags
method: GET
description: List Tags
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: type
in: query
type: string
description: Searches for tags in the specified type.
required: true
- name: search
in: query
type: string
description: Used for searching tags.
required: true
authentication:
type: bearer
value: '{{env.IBM_CLOUD_API_KEY}}'
placement: header
defaultHeaders:
Service-CRN: '{{env.IBM_QUANTUM_CRN}}'
IBM-API-Version: '{{env.IBM_QUANTUM_API_VERSION}}'
exposes:
- type: rest
namespace: runtime-jobs-rest
port: 8080
description: "REST adapter for IBM Qiskit Runtime \u2014 Jobs. Spectral-compliant resources, prefixed with /v1."
resources:
- path: /v1/v1/jobs/{id}
name: v1-jobs-id
description: REST surface for v1-jobs-id.
operations:
- method: GET
name: get-job
description: List Job Details
call: runtime-jobs.get-job
with:
exclude_params: rest.exclude_params
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: delete-job
description: Delete a Job
call: runtime-jobs.delete-job
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/jobs
name: v1-jobs
description: REST surface for v1-jobs.
operations:
- method: GET
name: list-jobs
description: List Jobs
call: runtime-jobs.list-jobs
with:
limit: rest.limit
offset: rest.offset
pending: rest.pending
program: rest.program
backend: rest.backend
created_after: rest.created_after
created_before: rest.created_before
sort: rest.sort
tags: rest.tags
session_id: rest.session_id
exclude_params: rest.exclude_params
outputParameters:
- type: object
mapping: $.
- method: POST
name: create-job
description: Run a Job
call: runtime-jobs.create-job
with:
Parent-Job-Id: rest.Parent-Job-Id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/jobs/{id}/results
name: v1-jobs-id-results
description: REST surface for v1-jobs-id-results.
operations:
- method: GET
name: get-job-results-jid
description: List Job Results
call: runtime-jobs.get-job-results-jid
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/jobs/{id}/logs
name: v1-jobs-id-logs
description: REST surface for v1-jobs-id-logs.
operations:
- method: GET
name: get-jog-logs-jid
description: List Job Logs
call: runtime-jobs.get-jog-logs-jid
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/jobs/{id}/cancel
name: v1-jobs-id-cancel
description: REST surface for v1-jobs-id-cancel.
operations:
- method: POST
name: cancel-job-jid
description: Cancel a Job
call: runtime-jobs.cancel-job-jid
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/jobs/{id}/metrics
name: v1-jobs-id-metrics
description: REST surface for v1-jobs-id-metrics.
operations:
- method: GET
name: get-job-metrics-jid
description: Get Job Metrics
call: runtime-jobs.get-job-metrics-jid
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/jobs/{id}/tags
name: v1-jobs-id-tags
description: REST surface for v1-jobs-id-tags.
operations:
- method: PUT
name: replace-job-tags
description: Replace Job Tags
call: runtime-jobs.replace-job-tags
with:
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/v1/tags
name: v1-tags
description: REST surface for v1-tags.
operations:
- method: GET
name: list-tags
description: List Tags
call: runtime-jobs.list-tags
with:
type: rest.type
search: rest.search
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: runtime-jobs-mcp
port: 9090
transport: http
description: "MCP adapter for IBM Qiskit Runtime \u2014 Jobs. One tool per consumed operation."
tools:
- name: ibm-quantum-get-job
description: List Job Details
hints:
readOnly: true
destructive: false
idempotent: true
call: runtime-jobs.get-job
with:
exclude_params: tools.exclude_params
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-delete-job
description: Delete a Job
hints:
readOnly: false
destructive: true
idempotent: true
call: runtime-jobs.delete-job
with: {}
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-list-jobs
description: List Jobs
hints:
readOnly: true
destructive: false
idempotent: true
call: runtime-jobs.list-jobs
with:
limit: tools.limit
offset: tools.offset
pending: tools.pending
program: tools.program
backend: tools.backend
created_after: tools.created_after
created_before: tools.created_before
sort: tools.sort
tags: tools.tags
session_id: tools.session_id
exclude_params: tools.exclude_params
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-create-job
description: Run a Job
hints:
readOnly: false
destructive: false
idempotent: false
call: runtime-jobs.create-job
with:
Parent-Job-Id: tools.Parent-Job-Id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-get-job-results-jid
description: List Job Results
hints:
readOnly: true
destructive: false
idempotent: true
call: runtime-jobs.get-job-results-jid
with: {}
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-get-jog-logs-jid
description: List Job Logs
hints:
readOnly: true
destructive: false
idempotent: true
call: runtime-jobs.get-jog-logs-jid
with: {}
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-cancel-job-jid
description: Cancel a Job
hints:
readOnly: false
destructive: false
idempotent: false
call: runtime-jobs.cancel-job-jid
with: {}
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-get-job-metrics-jid
description: Get Job Metrics
hints:
readOnly: true
destructive: false
idempotent: true
call: runtime-jobs.get-job-metrics-jid
with: {}
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-replace-job-tags
description: Replace Job Tags
hints:
readOnly: false
destructive: false
idempotent: true
call: runtime-jobs.replace-job-tags
with:
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: ibm-quantum-list-tags
description: List Tags
hints:
readOnly: true
destructive: false
idempotent: true
call: runtime-jobs.list-tags
with:
type: tools.type
search: tools.search
outputParameters:
- type: object
mapping: $.