Download OpenAPI specification:Download
This is the documentation for the Rigetti QCS HTTP API.
You can find out more about Rigetti at https://rigetti.com, and also interact with QCS via the web at https://qcs.rigetti.com.
This API is documented in OpenAPI format and so is compatible with the dozens of language-specific client generators available here and elsewhere on the web.
This API follows REST design principles where appropriate, and otherwise an HTTP RPC paradigm. We adhere to the Google API Improvement Proposals where reasonable to provide a consistent, intuitive developer experience. HTTP response codes match their specifications, and error messages fit a common format.
All access to the QCS API requires OAuth2 authentication provided by Okta. You can request access here. Once you have a user account, you can download your access token from QCS here.
That access token is valid for 24 hours after issuance. The value of access_token
within the
JSON file is the token used for authentication (don't use the entire JSON file).
Authenticate requests using the Authorization
header and a Bearer
prefix:
curl --header "Authorization: Bearer eyJraW...Iow"
Same as JWTBearer
, but the Authorization header is optionally parsed. Clients will receive a 401 response if an invalid or expired token is provided. Otherwise, the server authorizes the request against either the valid token claims or an unauthenticated user. In either case, the client may receive a 403 response.
Security Scheme Type | HTTP |
---|---|
HTTP Authorization Scheme | bearer |
Bearer format | "JWT" |
Our legacy HTTP API remains accessible at https://forest-server.qcs.rigetti.com, and it shares a source of truth with this API's services. You can use either service with the same user account and means of authentication. We strongly recommend using the API documented here, as the legacy API is on the path to deprecation.
Retrieve the balance of the requested QCS group account.
groupName required | string URL encoded name of group for which to retrieve account balance. |
Request completed successfully.
Client not authorized to complete request.
QCS group account does not exist.
Request validation failed.
Rigetti API
{- "balance": 0
}
Retrieve billing customer for a QCS group account.
groupName required | string URL-encoded name of group. |
Billing customer retrieved successfully.
Client is not authorized to view account billing customer.
Group billing customer does not exist.
Rigetti API
{- "email": "string",
- "id": "string"
}
Retrieve billing invoices for a QCS group account.
groupName required | string URL-encoded name of group. |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
pageSize | integer |
Billing invoices retrieved successfully.
Client is not authorized to view group billing invoices.
Group billing customer does not exist.
Rigetti API
{- "billingInvoices": [
- {
- "periodEnd": "2024-11-14T18:38:14Z",
- "periodStart": "2024-11-14T18:38:14Z",
- "startingBalance": 0,
- "status": "draft",
- "subtotal": 0,
- "tax": 0,
- "total": 0,
- "id": "string"
}
], - "nextPageToken": "string"
}
Retrieve billing invoice lines for a QCS group account's invoice.
groupName required | string URL-encoded name of group. |
billingInvoiceId required | string URL-encoded billing invoice id. |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
pageSize | integer |
Billing invoice lines retrieved successfully.
Client is not authorized to view group billing invoice lines.
Group billing customer or invoice does not exist.
Rigetti API
{- "billingInvoiceLines": [
- {
- "amount": 0,
- "description": "string",
- "id": "string",
- "invoiceItem": "string",
- "lineItemType": "invoiceitem",
- "metadata": {
- "property1": "string",
- "property2": "string"
}, - "price": {
- "active": true,
- "billingScheme": "per_unit",
- "id": "string",
- "object": "price",
- "priceType": "one_time",
- "product": {
- "description": "string",
- "id": "string",
- "name": "string",
- "object": "product",
- "unitLabel": "string"
}, - "recurring": {
- "aggregateUsage": "last_during_period",
- "interval": "day",
- "intervalCount": 0,
- "usageType": "licensed"
}, - "tiers": [
- {
- "flatAmount": 0,
- "flatAmountDecimal": 0,
- "unitAmount": 0,
- "unitAmountDecimal": 0,
- "upTo": 0
}
], - "tiersMode": "graduated",
- "unitAmountDecimal": 0
}, - "quantity": 0,
- "subscription": "string",
- "subscriptionItem": "string"
}
], - "nextPageToken": "string"
}
Retrieve upcoming invoice for QCS group billing customer.
groupName required | string URL-encoded name of group. |
Billing invoice retrieved successfully.
Client is not authorized to view group billing invoice.
Group billing customer or invoice does not exist.
Rigetti API
{- "periodEnd": "2024-11-14T18:38:14Z",
- "periodStart": "2024-11-14T18:38:14Z",
- "startingBalance": 0,
- "status": "draft",
- "subtotal": 0,
- "tax": 0,
- "total": 0
}
List invoice lines for QCS group billing customer upcoming invoice.
groupName required | string URL-encoded name of group. |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
pageSize | integer |
Billing invoice lines retrieved successfully.
Client is not authorized to view group billing invoice lines.
Group billing customer or invoice does not exist.
Rigetti API
{- "billingInvoiceLines": [
- {
- "amount": 0,
- "description": "string",
- "id": "string",
- "invoiceItem": "string",
- "lineItemType": "invoiceitem",
- "metadata": {
- "property1": "string",
- "property2": "string"
}, - "price": {
- "active": true,
- "billingScheme": "per_unit",
- "id": "string",
- "object": "price",
- "priceType": "one_time",
- "product": {
- "description": "string",
- "id": "string",
- "name": "string",
- "object": "product",
- "unitLabel": "string"
}, - "recurring": {
- "aggregateUsage": "last_during_period",
- "interval": "day",
- "intervalCount": 0,
- "usageType": "licensed"
}, - "tiers": [
- {
- "flatAmount": 0,
- "flatAmountDecimal": 0,
- "unitAmount": 0,
- "unitAmountDecimal": 0,
- "upTo": 0
}
], - "tiersMode": "graduated",
- "unitAmountDecimal": 0
}, - "quantity": 0,
- "subscription": "string",
- "subscriptionItem": "string"
}
], - "nextPageToken": "string"
}
List users belonging to a group. Note, group membership may take several minutes to update within our identity provider. After adding or removing a user to or from a group, please allow up to 60 minutes for changes to be reflected.
groupName required | string URL encoded name of group for which to retrieve users. |
pageSize | integer |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
Group users successfully retrieved.
The requested group does not exist.
Request validation failed.
Rigetti API
{- "nextPageToken": "string",
- "users": [
- {
- "createdTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "idpId": "string",
- "profile": {
- "email": "string",
- "firstName": "string",
- "lastName": "string",
- "organization": "string"
}
}
]
}
Add a user to a group. Note, group membership may take several minutes to update within our identity provider. After adding a user to a group, please allow up to 60 minutes for changes to be reflected.
groupId | string |
groupName | string |
userEmail | string |
userId | string |
User successfully added to group.
Group or user does not exist.
Request validation failed.
Rigetti API
{- "groupId": "string",
- "groupName": "string",
- "userEmail": "string",
- "userId": "string"
}
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Remove a user from a group. Note, group membership may take several minutes to update within our identity provider. After removing a user from a group, please allow up to 60 minutes for changes to be reflected.
groupId | string |
groupName | string |
userEmail | string |
userId | string |
User successfully removed from group.
Group does not exist.
Request validation failed, possibly because the user does not belong to the group.
Rigetti API
{- "groupId": "string",
- "groupName": "string",
- "userEmail": "string",
- "userId": "string"
}
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Retrieve the balance of the requested QCS user account.
userId required | string The user's QCS id. May be found as |
Request completed successfully.
Client not authorized to complete request.
QCS user account does not exist.
Request validation failed.
Rigetti API
{- "balance": 0
}
Retrieve billing customer for a QCS user account.
userId required | string The user's QCS id. May be found as |
Billing customer retrieved successfully.
Client is not authorized to view user billing customer.
User billing customer does not exist.
Rigetti API
{- "email": "string",
- "id": "string"
}
Retrieve billing invoices for a QCS user account.
userId required | string The user's QCS id. May be found as |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
pageSize | integer |
Billing invoices retrieved successfully.
Client is not authorized to view user billing invoices.
User billing customer does not exist.
Rigetti API
{- "billingInvoices": [
- {
- "periodEnd": "2024-11-14T18:38:14Z",
- "periodStart": "2024-11-14T18:38:14Z",
- "startingBalance": 0,
- "status": "draft",
- "subtotal": 0,
- "tax": 0,
- "total": 0,
- "id": "string"
}
], - "nextPageToken": "string"
}
Retrieve billing invoice lines for a QCS user account's invoice.
userId required | string URL-encoded QCS id of user. May be found as |
billingInvoiceId required | string URL-encoded billing invoice id. |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
pageSize | integer |
Billing invoice lines retrieved successfully.
Client is not authorized to view user billing invoice lines.
User billing customer or invoice does not exist.
Rigetti API
{- "billingInvoiceLines": [
- {
- "amount": 0,
- "description": "string",
- "id": "string",
- "invoiceItem": "string",
- "lineItemType": "invoiceitem",
- "metadata": {
- "property1": "string",
- "property2": "string"
}, - "price": {
- "active": true,
- "billingScheme": "per_unit",
- "id": "string",
- "object": "price",
- "priceType": "one_time",
- "product": {
- "description": "string",
- "id": "string",
- "name": "string",
- "object": "product",
- "unitLabel": "string"
}, - "recurring": {
- "aggregateUsage": "last_during_period",
- "interval": "day",
- "intervalCount": 0,
- "usageType": "licensed"
}, - "tiers": [
- {
- "flatAmount": 0,
- "flatAmountDecimal": 0,
- "unitAmount": 0,
- "unitAmountDecimal": 0,
- "upTo": 0
}
], - "tiersMode": "graduated",
- "unitAmountDecimal": 0
}, - "quantity": 0,
- "subscription": "string",
- "subscriptionItem": "string"
}
], - "nextPageToken": "string"
}
Retrieve upcoming invoice for QCS user billing customer.
userId required | string The user's QCS id. May be found as |
Upcoming billing invoice retrieved successfully.
Client is not authorized to view user billing invoice.
User billing customer or invoice does not exist.
Rigetti API
{- "periodEnd": "2024-11-14T18:38:14Z",
- "periodStart": "2024-11-14T18:38:14Z",
- "startingBalance": 0,
- "status": "draft",
- "subtotal": 0,
- "tax": 0,
- "total": 0
}
List invoice lines for QCS user billing customer upcoming invoice.
userId required | string The user's QCS id. May be found as |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
pageSize | integer |
Billing invoice lines retrieved successfully.
Client is not authorized to view user's billing invoice lines.
Group billing customer or invoice does not exist.
Rigetti API
{- "billingInvoiceLines": [
- {
- "amount": 0,
- "description": "string",
- "id": "string",
- "invoiceItem": "string",
- "lineItemType": "invoiceitem",
- "metadata": {
- "property1": "string",
- "property2": "string"
}, - "price": {
- "active": true,
- "billingScheme": "per_unit",
- "id": "string",
- "object": "price",
- "priceType": "one_time",
- "product": {
- "description": "string",
- "id": "string",
- "name": "string",
- "object": "product",
- "unitLabel": "string"
}, - "recurring": {
- "aggregateUsage": "last_during_period",
- "interval": "day",
- "intervalCount": 0,
- "usageType": "licensed"
}, - "tiers": [
- {
- "flatAmount": 0,
- "flatAmountDecimal": 0,
- "unitAmount": 0,
- "unitAmountDecimal": 0,
- "upTo": 0
}
], - "tiersMode": "graduated",
- "unitAmountDecimal": 0
}, - "quantity": 0,
- "subscription": "string",
- "subscriptionItem": "string"
}
], - "nextPageToken": "string"
}
Retrieve EventBillingPrice
for a user for a specific event. If no price is configured this operation will return a default EventBillingPrice
for the specified product
.
userId required | string The user's QCS id. May be found as |
product required | string (Product) Enum: "reservationCreation" "qpuJobCompletion" "qpuJobTime" The set of known QCS service products. |
quantumProcessorId | string <= 1000 characters |
Retrieved EventBillingPrice
successfully.
Client is not authorized to retrieve the EventBillingPrice
.
The EventBillingPrice
does not exist for the specified event. Because the server guarantees prices for events, the server will trigger alerts whenever returning this response.
Request parameter validation error.
Rigetti API
{- "product": "reservationCreation",
- "quantumProcessorId": "string"
}
{- "id": 0,
- "product": "reservationCreation",
- "quantumProcessorId": "string",
- "unitAmountDecimal": 0,
- "unitLabel": "string"
}
List QCS groups for the requested user
userId required | string The user's QCS id. May be found as |
pageSize | integer |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
Successfully retrieved groups.
Request validation failed.
Rigetti API
{- "groups": [
- {
- "createdTime": "2024-11-14T18:38:14Z",
- "description": "string",
- "id": "string",
- "lastMembershipUpdatedTime": "2024-11-14T18:38:14Z",
- "name": "string",
- "updatedTime": "2024-11-14T18:38:14Z"
}
], - "nextPageToken": "string"
}
Activate a user, completing an invitation request.
credentials required | object (UserCredentials) |
profile required | object (UserProfile) |
token required | string Verification token provided in invitation email. |
Request completed successfully.
Request validation failed.
Rigetti API
{- "credentials": {
- "password": {
- "value": "string"
}
}, - "profile": {
- "email": "string",
- "firstName": "string",
- "lastName": "string",
- "organization": "string"
}, - "token": "string"
}
{- "createdTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "idpId": "string",
- "profile": {
- "email": "string",
- "firstName": "string",
- "lastName": "string",
- "organization": "string"
}
}
List all announcements relevant to the authenticating user. By default, does not include dismissed announcements.
pageSize | integer |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
includeDismissed | boolean Default: false Include dismissed announcements in the response. |
Request completed successfully.
Request authentication failed.
Request validation failed.
Rigetti API
{- "nextPageToken": "string",
- "announcements": [
- {
- "id": 0,
- "contentHtml": "string",
- "createdAt": "2024-11-14T18:38:14Z",
- "active": true
}
]
}
Dismiss an announcement for an authenticating user, indicating that they do not want to see it again.
announcementId required | integer The ID of an existing announcement. |
Request completed successfully.
Request authentication failed.
Unknown announcement ID.
Rigetti API
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Update the profile of the authenticated user.
firstName required | string |
lastName required | string |
organization required | string |
Request completed successfully.
Request authentication failed.
The authenticated user could not be located within our records. Please contact support@rigetti.com if you reach this error.
The request could not be validated.
Rigetti API
{- "firstName": "string",
- "lastName": "string",
- "organization": "string"
}
{- "createdTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "idpId": "string",
- "profile": {
- "email": "string",
- "firstName": "string",
- "lastName": "string",
- "organization": "string"
}
}
Get the onboarding status of the authenticated user.
Request completed successfully.
Request authentication failed.
Rigetti API
{- "onboardingCompleted": true
}
Update the onboarding status of the authenticated user.
onboardingCompleted required | boolean |
Request completed successfully.
Request authentication failed.
Rigetti API
{- "onboardingCompleted": true
}
{- "onboardingCompleted": true
}
Send a password reset link to the provided email address, if that email matches a registered user.
email required | string |
Request completed successfully.
Request validation failed.
Rigetti API
{- "email": "string"
}
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Retrieve the profile of the authenticated user.
Request completed successfully.
Request authentication failed.
The authenticated user could not be located within our records. Please contact support@rigetti.com if you reach this error.
Rigetti API
{- "createdTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "idpId": "string",
- "profile": {
- "email": "string",
- "firstName": "string",
- "lastName": "string",
- "organization": "string"
}
}
Reset the password using the user's existing password. Note, this is an authenticated route.
newPassword required | string |
oldPassword required | string |
Password successfully reset.
Request authentication failed.
Request validation failed.
Rigetti API
{- "newPassword": "string",
- "oldPassword": "string"
}
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Complete the forgot password flow, resetting the new password in exchange for an emailed token.
newPassword required | string |
token required | string |
Password successfully reset.
No account exists for the requested email.
Request validation failed.
Rigetti API
{- "newPassword": "string",
- "token": "string"
}
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
List all endpoints, optionally filtering by attribute.
filter | string (Filter) Filtering logic specified using rule-engine grammar |
pageSize | integer (Pagesize) Default: 10 |
pageToken | string (Pagetoken) |
Successful Response
Unprocessable Entity
Rigetti API
{- "endpoints": [
- {
- "address": "string",
- "addresses": {
- "grpc": "string",
- "rpcq": "string"
}, - "datacenter": "string",
- "healthy": true,
- "id": "string",
- "mock": true,
- "quantumProcessorIds": [
- "string"
]
}
], - "nextPageToken": "string"
}
Create an endpoint associated with your user account.
datacenters | Array of strings (Datacenters) Items Enum: "berkeley-775" "fremont-fab" "rigetti-gb-1" Which datacenters are available for endpoint placement. Defaults to berkeley-775 |
quantumProcessorIds | Array of strings (Quantum Processor IDs) Public identifiers for quantum processors served by this endpoint. |
Successful Response
Bad Request
Not Found
Unprocessable Entity
Rigetti API
{- "datacenters": [
- "berkeley-775"
], - "quantumProcessorIds": [
- "string"
]
}
{- "address": "string",
- "addresses": {
- "grpc": "string",
- "rpcq": "string"
}, - "datacenter": "string",
- "healthy": true,
- "id": "string",
- "mock": true,
- "quantumProcessorIds": [
- "string"
]
}
Delete an endpoint, releasing its resources. This operation is not reversible.
endpointId required | string (Endpoint ID) |
Successful Response
Forbidden
Not Found
Unprocessable Entity
Rigetti API
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Retrieve a specific endpoint by its ID.
endpointId required | string (Endpoint ID) |
Successful Response
Not Found
Unprocessable Entity
Rigetti API
{- "address": "string",
- "addresses": {
- "grpc": "string",
- "rpcq": "string"
}, - "datacenter": "string",
- "healthy": true,
- "id": "string",
- "mock": true,
- "quantumProcessorIds": [
- "string"
]
}
Restart an entire endpoint or a single component within an endpoint.
endpointId required | string (Endpoint ID) |
componentName | string (Component Name) Individual component to restart |
Successful Response
Forbidden
Unprocessable Entity
Rigetti API
{- "componentName": "string"
}
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
Retrieve the endpoint set as "default" for the given Quantum Processor.
If no endpoint is set as the default, return "not found."
quantumProcessorId required | string (Quantum Processor ID) Public identifier for a quantum processor [example: Aspen-1] |
Successful Response
Not Found
Unprocessable Entity
Rigetti API
{- "address": "string",
- "addresses": {
- "grpc": "string",
- "rpcq": "string"
}, - "datacenter": "string",
- "healthy": true,
- "id": "string",
- "mock": true,
- "quantumProcessorIds": [
- "string"
]
}
Create a new engagement using the specified parameters.
At least one of the following parameters must be supplied:
x-qcs-account-id | string (X-Qcs-Account-Id) Either the client's user ID or the name of a group on behalf of which the client wishes to engage. May be overriden by accountId set in body. |
x-qcs-account-type | string Enum: "group" "user" Indicates whether the engagement request should be made for the user or on behalf of a group. May be overriden by accountType set in body. |
accountId | string (Account Id) Either the client's user ID or the name of a group on behalf of which the client wishes to engage. This value will override any values set in the headers. |
accountType | string (Account Type) Enum: "group" "user" Indicates whether the engagement request should be made for the user or on behalf of a group. This value will override any values set in the headers. |
endpointId | string (Endpoint ID) Unique, opaque identifier for the endpoint |
quantumProcessorId | string (Quantum Processor ID) Public identifier for a quantum processor [example: Aspen-1] |
tags | Array of strings (Tags) Tags recorded on QPU requests, which reporting services may later use for querying usage records. |
Successful Response
Bad Request
Not Found
Validation error
Endpoint is temporarily unavailable, try again later.
Rigetti API
{- "accountId": "string",
- "accountType": "group",
- "endpointId": "string",
- "quantumProcessorId": "string",
- "tags": [
- "string"
]
}
{- "accountId": "string",
- "accountType": "group",
- "address": "string",
- "credentials": {
- "clientPublic": "string",
- "clientSecret": "string",
- "serverPublic": "string"
}, - "endpointId": "string",
- "expiresAt": "string",
- "minimumPriority": 0,
- "quantumProcessorIds": [ ],
- "tags": [
- "string"
], - "userId": "string"
}
Retrieve all Instruction Set Architectures available to the user.
pageSize | integer (Pagesize) <= 5 Default: 5 |
pageToken | string (Pagetoken) |
Successful Response
Unprocessable Entity
Rigetti API
{- "instructionSetArchitectures": [
- {
- "architecture": {
- "edges": [
- {
- "node_ids": [
- 0,
- 0
]
}
], - "family": "None",
- "nodes": [
- {
- "node_id": 0
}
]
}, - "benchmarks": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "name": "string",
- "node_count": 0,
- "parameters": [
- {
- "name": "string"
}
], - "sites": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "node_ids": [
- 0
]
}
]
}
], - "instructions": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "name": "string",
- "node_count": 0,
- "parameters": [
- {
- "name": "string"
}
], - "sites": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "node_ids": [
- 0
]
}
]
}
], - "name": "string"
}
], - "nextPageToken": "string"
}
List all QuantumProcessors available to the user.
pageSize | integer (Pagesize) Default: 10 |
pageToken | string (Pagetoken) |
Successful Response
Unprocessable Entity
Rigetti API
{- "nextPageToken": "string",
- "quantumProcessors": [
- {
- "id": "string"
}
]
}
Retrieve a single QuantumProcessor by ID.
quantumProcessorId required | string (Quantum Processor ID) Public identifier for a quantum processor [example: Aspen-1] |
Successful Response
Not Found
Unprocessable Entity
Rigetti API
{- "id": "string"
}
List all means of accessing a QuantumProcessor available to the user.
quantumProcessorId required | string (Quantum Processor ID) Public identifier for a quantum processor [example: Aspen-1] |
pageSize | integer (Pagesize) Default: 10 |
pageToken | string (Pagetoken) |
Successful Response
Unprocessable Entity
Rigetti API
{- "accessors": [
], - "nextPageToken": "string"
}
Retrieve the Instruction Set Architecture of a QuantumProcessor by ID.
quantumProcessorId required | string (Quantum Processor ID) |
Successful Response
Not Found
Unprocessable Entity
Rigetti API
{- "architecture": {
- "edges": [
- {
- "node_ids": [
- 0,
- 0
]
}
], - "family": "None",
- "nodes": [
- {
- "node_id": 0
}
]
}, - "benchmarks": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "name": "string",
- "node_count": 0,
- "parameters": [
- {
- "name": "string"
}
], - "sites": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "node_ids": [
- 0
]
}
]
}
], - "instructions": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "name": "string",
- "node_count": 0,
- "parameters": [
- {
- "name": "string"
}
], - "sites": [
- {
- "characteristics": [
- {
- "error": 0,
- "name": "string",
- "node_ids": [
- 0
], - "parameter_values": [
- 0
], - "timestamp": "2024-11-14T18:38:14Z",
- "value": 0
}
], - "node_ids": [
- 0
]
}
]
}
], - "name": "string"
}
Get calendar details for the requested quantum processor.
quantumProcessorId required | string |
Request completed successfully.
Client not authorized to complete request.
The requested quantum processor does not exist.
Rigetti API
{- "maintenanceICal": "string"
}
List existing reservations for the requested group.
Available filter fields include:
startTime
- timestampendTime
- timestampcreatedTime
- timestampprice
- integerquantumProcessorId
- stringAvailable order fields include:
startTime
- timestampendTime
- timestampcreatedTime
- timestampprice
- integergroupName required | string URL encoded name of group for which to retrieve reservations. |
filter | string (Filter) A string conforming to a limited set of the filtering operations described in Google AIP 160.
For example, |
order | string (Order) A string conforming to order specification described in Google AIP 132.
For example, |
pageSize | integer |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
showDeleted | string Default: "false" Enum: "true" "false" If you wish to include deleted (or cancelled) resources in your response, include |
Request completed successfully.
Request authentication failed.
Request validation failed.
Rigetti API
{- "nextPageToken": "string",
- "reservations": [
- {
- "accountId": "string",
- "accountType": "group",
- "cancellationBillingInvoiceItemId": "string",
- "cancelled": true,
- "createdByAccountId": "string",
- "createdByAccountType": "group",
- "createdTime": "2024-11-14T18:38:14Z",
- "creationBillingInvoiceItemId": "string",
- "endTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "notes": "string",
- "price": 0,
- "quantumProcessorId": "string",
- "startTime": "2024-11-14T18:38:14Z",
- "updatedTime": "2024-11-14T18:38:14Z",
- "userId": "string"
}
]
}
List existing reservations for the authenticated user,
or a target user when specifying X-QCS-ACCOUNT-ID
and X-QCS-ACCOUNT-TYPE
headers.
Available filter fields include:
startTime
- timestampendTime
- timestampcreatedTime
- timestampprice
- integercancelled
- boolean (deprecated, use showDeleted
parameter)quantumProcessorId
- stringAvailable order fields include:
startTime
- timestampendTime
- timestampcreatedTime
- timestampprice
- integerfilter | string (Filter) A string conforming to a limited set of the filtering operations described in Google AIP 160.
For example, |
order | string (Order) A string conforming to order specification described in Google AIP 132.
For example, |
pageSize | integer |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
showDeleted | string Default: "false" Enum: "true" "false" If you wish to include deleted (or cancelled) resources in your response, include |
X-QCS-ACCOUNT-ID | string (AccountId) Used to specify a subject account ID for a request. Does not take precedence over a corresponding request body field when one is present. |
X-QCS-ACCOUNT-TYPE | string (AccountType) Enum: "group" "user" Used to specify the subject account's type for a request in conjunction with the X-QCS-ACCOUNT-ID header. Does not take precedence over a corresponding request body field when one is present. |
Request completed successfully.
Request authentication failed.
Request validation failed.
Rigetti API
{- "nextPageToken": "string",
- "reservations": [
- {
- "accountId": "string",
- "accountType": "group",
- "cancellationBillingInvoiceItemId": "string",
- "cancelled": true,
- "createdByAccountId": "string",
- "createdByAccountType": "group",
- "createdTime": "2024-11-14T18:38:14Z",
- "creationBillingInvoiceItemId": "string",
- "endTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "notes": "string",
- "price": 0,
- "quantumProcessorId": "string",
- "startTime": "2024-11-14T18:38:14Z",
- "updatedTime": "2024-11-14T18:38:14Z",
- "userId": "string"
}
]
}
Create a new reservation.
The following precedence applies when specifying the reservation subject account ID and type:
accountId
field, or if unset then X-QCS-ACCOUNT-ID
header,
or if unset then requesting user's ID.accountType
field, or if unset then X-QCS-ACCOUNT-TYPE
header, or if unset then "user" type.X-QCS-ACCOUNT-ID | string (AccountId) Used to specify a subject account ID for a request. Does not take precedence over a corresponding request body field when one is present. |
X-QCS-ACCOUNT-TYPE | string (AccountType) Enum: "group" "user" Used to specify the subject account's type for a request in conjunction with the X-QCS-ACCOUNT-ID header. Does not take precedence over a corresponding request body field when one is present. |
accountId | string (AccountId) userId for |
accountType | string (AccountType) Enum: "group" "user" There are two types of accounts within QCS: user (representing a single user in Okta) and group (representing one or more users in Okta). |
endTime required | string <date-time> |
notes | string |
quantumProcessorId required | string |
startTime required | string <date-time> |
Reservation successfully created.
Request authentication failed.
Insufficient payment to book reservation.
User not authorized to make the requested reservation.
The requested reservation is unavailable.
Request validation failed.
Rigetti API
{- "accountId": "string",
- "accountType": "group",
- "endTime": "2024-11-14T18:38:14Z",
- "notes": "string",
- "quantumProcessorId": "string",
- "startTime": "2024-11-14T18:38:14Z"
}
{- "accountId": "string",
- "accountType": "group",
- "cancellationBillingInvoiceItemId": "string",
- "cancelled": true,
- "createdByAccountId": "string",
- "createdByAccountType": "group",
- "createdTime": "2024-11-14T18:38:14Z",
- "creationBillingInvoiceItemId": "string",
- "endTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "notes": "string",
- "price": 0,
- "quantumProcessorId": "string",
- "startTime": "2024-11-14T18:38:14Z",
- "updatedTime": "2024-11-14T18:38:14Z",
- "userId": "string"
}
Cancel an existing reservation for the user.
reservationId required | integer |
Reservation successfully cancelled.
Request authentication failed.
User not authorized to delete reservation.
Requested reservation does not exist.
Rigetti API
{- "accountId": "string",
- "accountType": "group",
- "cancellationBillingInvoiceItemId": "string",
- "cancelled": true,
- "createdByAccountId": "string",
- "createdByAccountType": "group",
- "createdTime": "2024-11-14T18:38:14Z",
- "creationBillingInvoiceItemId": "string",
- "endTime": "2024-11-14T18:38:14Z",
- "id": 0,
- "notes": "string",
- "price": 0,
- "quantumProcessorId": "string",
- "startTime": "2024-11-14T18:38:14Z",
- "updatedTime": "2024-11-14T18:38:14Z",
- "userId": "string"
}
List currently available reservations on the requested Rigetti quantum computer.
pageSize | integer |
pageToken | string An opaque token that can be appended to a request query to retrieve the next page of results. Empty if there are no more results to retrieve. |
quantumProcessorId required | string |
startTimeFrom required | string <date-time> |
duration required | string Formatted as specified for golang https://golang.org/pkg/time/#ParseDuration. |
Request completed successfully.
Request authentication failed.
Request validation failed.
Rigetti API
{- "availableReservations": [
- {
- "duration": "string",
- "endTime": "2024-11-14T18:38:14Z",
- "price": 0,
- "quantumProcessorId": "string",
- "startTime": "2024-11-14T18:38:14Z"
}
], - "nextPageToken": "string"
}
Translation is the process of transforming Quil into programs ready for execution on a Quantum Processor.
Retrieve the calibration data used for client-side Quilt generation.
quantumProcessorId required | string (Quantum Processor ID) Public identifier for a quantum processor [example: Aspen-1] |
Successful Response
Not Found
Unprocessable Entity
Rigetti API
{- "quilt": "string",
- "settingsTimestamp": "string"
}
Compile Rigetti-native Quil code to encrypted binary form, ready for execution on a Rigetti Quantum Processor.
quantumProcessorId required | string (Quantum Processor ID) Public identifier for a quantum processor [example: Aspen-1] |
numShots required | integer (Number of Shots) Number of iterations to execute on the control hardware |
quil required | string (Quil) The native Quil program to be translated for execution |
settingsTimestamp | string (Settings Timestamp) ISO8601 timestamp of the latest settings to be used in translation. If omitted, latest settings will be used. |
Successful Response
Translation Failure
Not Found
Unprocessable Entity
Rigetti API
{- "numShots": 0,
- "quil": "string",
- "settingsTimestamp": "string"
}
{- "memoryDescriptors": { },
- "program": "string",
- "roSources": [ ],
- "settingsTimestamp": "string"
}
List supported clients of Rigetti system components along with their latest and minimum supported versions.
Request completed successfully.
Rigetti API
{- "clientApplications": [
- {
- "detailsUri": "string",
- "latestVersion": "string",
- "links": [
- {
- "checksumDescription": {
- "headerName": "string",
- "type": "md5"
}, - "platform": "string",
- "url": "string"
}
], - "minimumVersion": "string",
- "name": "string",
- "supported": true
}
]
}
Get details of a specific Rigetti system component along with its latest and minimum supported versions.
clientApplicationName required | string |
Request completed successfully.
The requested client application does not exist.
Rigetti API
{- "detailsUri": "string",
- "latestVersion": "string",
- "links": [
- {
- "checksumDescription": {
- "headerName": "string",
- "type": "md5"
}, - "platform": "string",
- "url": "string"
}
], - "minimumVersion": "string",
- "name": "string",
- "supported": true
}
Check the requested client application version against the latest and minimum version.
name required | string Name of component |
version required | string Semantic version of component. |
Successfully checked Forest versions.
Requested component does not exist.
Request validation failed.
Rigetti API
{- "name": "string",
- "version": "string"
}
{- "isLatestVersion": true,
- "isUpdateRequired": true,
- "message": "string"
}
A string conforming to a limited set of the filtering operations described in Google AIP 160.
{field} {operator} {value}
and may be grouped with ()
and joined with AND
or OR
.=
, >
, >=
, <
, <=
, and !=
.true
or false
for boolean fields"
s),"
s). Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h"."
s). Should be formatted RFC3339 5.6.For example, startTime >= "2020-06-24T22:00:00.000Z" OR (duration >= "15m" AND endTime < "2020-06-24T22:00:00.000Z")
.
"string"
A string conforming to order specification described in Google AIP 132.
DESC
.For example, quantumProcessorId, startTime DESC
.
"string"
All service errors conform to the below schema.
code required | string (Code) |
message required | string (Message) |
requestId required | string (Request ID) |
validationErrors | Array of objects (Validation Errors) |
{- "code": "string",
- "message": "string",
- "requestId": "string",
- "validationErrors": [
- {
- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}
]
}
code
conforms to the conventional HTTP status code, but offers more granularity.
Code | HTTP Status Code | Notes |
---|---|---|
unauthorized | 401 | If your token expires, we will return a 401 and you should refresh it accordingly. |
forbidden | 403 | |
not_found | 404 | |
insufficient_payment | 402 | Insufficient funds are available to book the reservation. |
reservation_unavailable | 409 | The requested reservation time is not available. |
invalid_input | 422 | |
invalid_password_reset_token | 422 | |
invalid_email_verification_token | 422 |
Additionally, errors returned with code invalid_input
may include additional detail under the validationErrors
attribute. Note, not all validation errors will specify a path
, but they will contain a message. Please heed those
messages in addition to the top level error message.
in required | string Enum: "header" "query" "path" "body" |
message required | string (Message) |
path | Array of strings (Path) |
{- "in": "header",
- "message": "string",
- "path": [
- "string"
]
}