メインコンテンツへスキップ

get-async-operation

dci get-async-operation operationId

Returns the current status of an async report operation. Non-terminal operations (pending, running) include a Retry-After header suggesting when to poll again. This endpoint does not return result data — once status is "succeeded", fetch the result from the operation's results endpoint. When status is "failed", the error field contains an RFC 9457-shaped error. Returns 404 if the operationId does not exist, belongs to a different tenant, or has expired.

Output

OK — current operation state. The Retry-After response header is present only on pending/running responses.

By default dci renders the result as a table. Use --output json to get the full structure described below — see Output formats.

FieldTypeDescription
operationIdstringUnique identifier for the operation.
statusstringCurrent lifecycle status of the operation. One of: "pending", "running", "succeeded", "failed", "canceled".
createTimestring (date-time)Time the operation was created.
expireBystring (date-time)Time after which the operation record may be deleted.
errorobjectError describing why an async operation failed. Present only when status is "failed".
error.titlestring
error.codestringStable machine-readable error code.
error.statusinteger
error.detailstring
Raw JSON schema
{
"type": "object",
"description": "Response envelope for polling an async report operation. Does not include result data — once status is \"succeeded\", fetch the result from the operation's results endpoint.",
"required": [
"operationId",
"status",
"createTime",
"expireBy"
],
"properties": {
"operationId": {
"type": "string",
"description": "Unique identifier for the operation."
},
"status": {
"type": "string",
"enum": [
"pending",
"running",
"succeeded",
"failed",
"canceled"
],
"description": "Current lifecycle status of the operation."
},
"createTime": {
"type": "string",
"format": "date-time",
"description": "Time the operation was created."
},
"expireBy": {
"type": "string",
"format": "date-time",
"description": "Time after which the operation record may be deleted."
},
"error": {
"type": "object",
"description": "Error describing why an async operation failed. Present only when status is \"failed\".",
"required": [
"title",
"code",
"status"
],
"properties": {
"title": {
"type": "string",
"example": "Query result set is too large"
},
"code": {
"type": "string",
"description": "Stable machine-readable error code.",
"example": "result_too_large"
},
"status": {
"type": "integer",
"example": 413
},
"detail": {
"type": "string"
}
}
}
}
}

Errors

On failure, dci prints a single error message — with a hint when one is available — and exits with a typed code your scripts can branch on. See Errors and exit codes for the full contract.

HTTP statusExit codeError codeMeaning
40030VALIDATION_ERRORThe arguments or request body were rejected. Review the command's flags and payload.
40110AUTHENTICATION_FAILEDNot signed in, or the API token is invalid. Run dci login or check DCI_API_KEY.
40311PERMISSION_DENIEDThe DoiT user or the active customer context does not have access.
40420RESOURCE_NOT_FOUNDThe requested resource does not exist. Check the identifier argument.
50040API_SERVER_ERRORThe API failed to process the request. Retryable; contact DoiT support if it persists.

Aliases: getasyncoperation