Get an operation
curl --request GET \
--url https://app.chatobserver.com/api/v2/metrics/operations/{operationId} \
--header 'x-chatobserver-key: <api-key>'const options = {method: 'GET', headers: {'x-chatobserver-key': '<api-key>'}};
fetch('https://app.chatobserver.com/api/v2/metrics/operations/{operationId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.chatobserver.com/api/v2/metrics/operations/{operationId}"
headers = {"x-chatobserver-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"operation": {
"id": "<string>",
"action": "<string>",
"status": "<string>",
"resourceType": "<string>",
"resourceId": "<string>",
"resourceVersionId": "<string>",
"clientInvocation": {
"clientKind": "looker_studio",
"consumerReferenceHash": "<string>",
"clientBindingVersionId": "<string>",
"selectedFieldIds": [
"<string>"
],
"requestedAt": "<string>"
},
"errorCode": "<string>",
"cancelRequestedAt": "<string>",
"startedAt": "<string>",
"finishedAt": "<string>",
"createdAt": "<string>"
},
"run": {
"id": "<string>",
"scheduleId": "<string>",
"trigger": "manual",
"status": "queued",
"errorCode": "<string>",
"rowCount": 123,
"resultBytes": 123,
"startedAt": "<string>",
"finishedAt": "<string>",
"createdAt": "<string>",
"stages": [
{
"startedAt": "<string>",
"finishedAt": "<string>",
"qualityResults": [
{
"assertionId": "<string>",
"severity": "<string>",
"passed": false,
"failureCount": 123,
"evaluatedAt": "<string>"
}
],
"id": "<string>",
"kind": "<string>",
"position": 123,
"status": "<string>",
"rowsProcessed": 123,
"bytesProcessed": 123,
"errorCode": "<string>"
}
]
},
"result": {
"artifactId": "<string>",
"schemaFingerprint": "<string>",
"rowCount": 123,
"byteCount": 123,
"expiresAt": "<string>",
"finalizedAt": "<string>"
}
}
}{
"error": {
"code": "internal",
"fieldPath": [
"<string>"
],
"parameters": {},
"repairActions": [
"<string>"
],
"requestId": "<string>",
"retryable": false,
"retryAfterSeconds": 1
}
}Data operations
Get an operation
Execute, validate, cancel and inspect operations and page through result rows.
GET
/
api
/
v2
/
metrics
/
operations
/
{operationId}
Get an operation
curl --request GET \
--url https://app.chatobserver.com/api/v2/metrics/operations/{operationId} \
--header 'x-chatobserver-key: <api-key>'const options = {method: 'GET', headers: {'x-chatobserver-key': '<api-key>'}};
fetch('https://app.chatobserver.com/api/v2/metrics/operations/{operationId}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://app.chatobserver.com/api/v2/metrics/operations/{operationId}"
headers = {"x-chatobserver-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"operation": {
"id": "<string>",
"action": "<string>",
"status": "<string>",
"resourceType": "<string>",
"resourceId": "<string>",
"resourceVersionId": "<string>",
"clientInvocation": {
"clientKind": "looker_studio",
"consumerReferenceHash": "<string>",
"clientBindingVersionId": "<string>",
"selectedFieldIds": [
"<string>"
],
"requestedAt": "<string>"
},
"errorCode": "<string>",
"cancelRequestedAt": "<string>",
"startedAt": "<string>",
"finishedAt": "<string>",
"createdAt": "<string>"
},
"run": {
"id": "<string>",
"scheduleId": "<string>",
"trigger": "manual",
"status": "queued",
"errorCode": "<string>",
"rowCount": 123,
"resultBytes": 123,
"startedAt": "<string>",
"finishedAt": "<string>",
"createdAt": "<string>",
"stages": [
{
"startedAt": "<string>",
"finishedAt": "<string>",
"qualityResults": [
{
"assertionId": "<string>",
"severity": "<string>",
"passed": false,
"failureCount": 123,
"evaluatedAt": "<string>"
}
],
"id": "<string>",
"kind": "<string>",
"position": 123,
"status": "<string>",
"rowsProcessed": 123,
"bytesProcessed": 123,
"errorCode": "<string>"
}
]
},
"result": {
"artifactId": "<string>",
"schemaFingerprint": "<string>",
"rowCount": 123,
"byteCount": 123,
"expiresAt": "<string>",
"finalizedAt": "<string>"
}
}
}{
"error": {
"code": "internal",
"fieldPath": [
"<string>"
],
"parameters": {},
"repairActions": [
"<string>"
],
"requestId": "<string>",
"retryable": false,
"retryAfterSeconds": 1
}
}Required scopes:
metrics:read.Authorizations
WorkspaceKeyBearerKey
A workspace API key. Data endpoints require a service-account key with the specified scopes.
Path Parameters
Resource identifier returned by the API.
Response
Successful response.
Show child attributes
Show child attributes