Inspect the query integration contract
curl --request GET \
--url https://app.chatobserver.com/api/v2/metrics/queries/{queryId}/integration-contract \
--header 'x-chatobserver-key: <api-key>'const options = {method: 'GET', headers: {'x-chatobserver-key': '<api-key>'}};
fetch('https://app.chatobserver.com/api/v2/metrics/queries/{queryId}/integration-contract', 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/queries/{queryId}/integration-contract"
headers = {"x-chatobserver-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"name": "<string>",
"description": "<string>",
"queryVersionId": "<string>",
"parameters": [
{
"name": "<string>",
"defaultValue": "<string>",
"valueType": "string",
"required": false,
"allowViewerOverride": false,
"parameterId": "<string>"
}
],
"queryId": "<string>",
"connectorKey": "<string>",
"fields": [
{
"name": "<string>",
"description": "<string>",
"fieldId": "<string>",
"aggregation": "minimum",
"semanticRole": "metric",
"scalarType": "string",
"isDefaultDate": false,
"imageDisplay": "image"
}
],
"performance": {
"maximumRows": 123,
"maximumWaitSeconds": 123,
"recommendedPageSize": 123
},
"catalogueFingerprint": "<string>",
"refreshFieldsRequired": false
}
}{
"error": {
"code": "internal",
"fieldPath": [
"<string>"
],
"parameters": {},
"repairActions": [
"<string>"
],
"requestId": "<string>",
"retryable": false,
"retryAfterSeconds": 1
}
}Data queries
Inspect the query integration contract
Create versioned queries, publish definitions and inspect integration contracts.
GET
/
api
/
v2
/
metrics
/
queries
/
{queryId}
/
integration-contract
Inspect the query integration contract
curl --request GET \
--url https://app.chatobserver.com/api/v2/metrics/queries/{queryId}/integration-contract \
--header 'x-chatobserver-key: <api-key>'const options = {method: 'GET', headers: {'x-chatobserver-key': '<api-key>'}};
fetch('https://app.chatobserver.com/api/v2/metrics/queries/{queryId}/integration-contract', 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/queries/{queryId}/integration-contract"
headers = {"x-chatobserver-key": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text){
"data": {
"name": "<string>",
"description": "<string>",
"queryVersionId": "<string>",
"parameters": [
{
"name": "<string>",
"defaultValue": "<string>",
"valueType": "string",
"required": false,
"allowViewerOverride": false,
"parameterId": "<string>"
}
],
"queryId": "<string>",
"connectorKey": "<string>",
"fields": [
{
"name": "<string>",
"description": "<string>",
"fieldId": "<string>",
"aggregation": "minimum",
"semanticRole": "metric",
"scalarType": "string",
"isDefaultDate": false,
"imageDisplay": "image"
}
],
"performance": {
"maximumRows": 123,
"maximumWaitSeconds": 123,
"recommendedPageSize": 123
},
"catalogueFingerprint": "<string>",
"refreshFieldsRequired": false
}
}{
"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.
Query Parameters
Query version identifier. Omit to use the current version.
Response
Successful response.
Show child attributes
Show child attributes