Skip to content

Choreo Insights API

The Choreo Insights API is a GraphQL API that allows you to retrieve data from external systems based on specific criteria. This guide describes the operations and schema-defined types you can use to retrieve data via the Choreo Insights API.

Try out

You can try out the Choreo Insights API with your data via GraphQL Explorer.

Warning

The GraphQL Explorer is currently not compatible with the Safari web browser due to a known issue.

Query

The query root of the Choreo Insights GraphQL API.

Field Argument Type Description
listAllAPI [API] Fetches all the APIs with the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the provider parameter to further filter the APIs by a specific provider.
provider String The name of the API provider.
dataFilter DataFilter! The data filter.
listApplications [Application] Fetches all the applications with the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the applicationFilter parameter to further filter the applications by a specific application filter.
applicationFilter ApplicationFilter The application filter.
dataFilter DataFilter! The data filter.
listProviders [Provider] Fetches all the API providers with the given combination of tenant ID, environment ID, and organization ID.
dataFilter DataFilter! The data filter.
listSubscribers [Subscriber] Fetches all the API subscribers with the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the subscriberFilter parameter to further filter the subscribers.
subscriberFilter SubscriberFilter The subscriber filter.
dataFilter DataFilter! The data filter.
listOrganizations [Organization] Fetches all the organizations of a user.
listEnvironments [Environment] Fetches all the environments of an organization.
org OrgFilter! The organization filter.
projectId String The project ID by which the results need to be filtered. It is optional to specify a value for this parameter. Note that providing a project ID with an on-prem key is not allowed.
listTenants [String] Fetches all the tenants with the given combination of environment ID and organization ID.
tenantDataFilter TenantDataFilter! The tenant filter.
getTotalTraffic Int Returns the total traffic during the given time range for the specified combination of tenant ID, environment ID, and organization ID.
filter TimeFilter! The time filter.
dataFilter DataFilter! The data filter.
getTotalErrors Int Returns the total number of errors that occurred during the given time range for the specified combination of tenant ID, environment ID, and organization ID.
filter TimeFilter! The time filter.
dataFilter DataFilter! The data filter.
getOverallLatency Float Returns the overall response latency (95th percentile value) during the given time range for the specified combination of tenant ID, environment ID, and organization ID.
filter TimeFilter! The time filter.
dataFilter DataFilter! The data filter.
getLatencySummary LatencySummary Returns the response latency value (95th percentile value) for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the latencySummaryFilter parameter to further filter the results.
filter TimeFilter! The time filter.
latencySummaryFilter LatencySummaryFilter The latency summary filter.
dataFilter DataFilter! The data filter.
getSuccessSummary SuccessSummary Returns the number of successful (2xx response code) hit count for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the granularity parameter to override the default granularity value.
filter TimeFilter! The time filter.
dataFilter DataFilter! The data filter.
granularity String The granularity value.
getErrorSummary ErrorSummary Returns the number of unsuccessful hits (i.e., the total of both 4xx and 5xx response codes) for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the granularity parameter to override the default granularity value.
filter TimeFilter! The time filter.
dataFilter DataFilter! The data filter.
granularity String The granularity value.
getErrorsByCategory ErrorsByCategory Returns the number of proxy errors (i.e., the total of both 4xx and 5xx response codes) by each error category for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the errorsByCategoryFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
errorsByCategoryFilter ErrorsByCategoryFilter The errors by category filter.
dataFilter DataFilter! The data filter.
getErrorsDetails DetailsOfErrors Returns details of each proxy error (for both 4xx and 5xx response codes) within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the errorsDetailsFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
errorsDetailsFilter ErrorsDetailsFilter The error details filter.
dataFilter DataFilter! The data filter.
getProxyTargetErrorsOverTime [ErrorsByStatusCodeCategory] Returns a list of hit counts for proxy and target errors for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. The errors in each proxy and target result set are grouped as 4xx, 5xx, and total. Optionally, you can configure the errorsByStatusCodeFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
errorsByStatusCodeFilter ErrorsByStatusCodeFilter The errors by status code filter.
dataFilter DataFilter! The data filter.
getErrorsByStatusCode ErrorsByStatusCode Returns the hit count for each error response code (401, 404, and 500 etc.,) for each API within the specified time range for the given combination of tenant ID, environment ID, and organization ID.
timeFilter TimeFilter! The time filter.
errorCountByStatusCodeFilter ErrorCountByStatusCodeFilter! The error count by status code filter.
dataFilter DataFilter! The data filter.
getTotalErrorsByAPI TotalError Returns the total proxy error hit count for an API across for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the filter parameter to further filter the results by a given time range.
filter TimeFilter The time filter.
dataFilter DataFilter! The data filter.
apiId ID! The API ID.
getAPIUsageOverTime [APIUsageOverTime] Returns a list of details related to the usage of each API over time for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the apiUsageOvertimeFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
apiUsageOvertimeFilter APIUsageOverTimeFilter The API usage overtime filter.
dataFilter DataFilter! The data filter.
getAPIUsageByAppOverTime APIUsageByAppOverTime Returns API usage by each application over time for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the apiUsageOvertimeFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
apiUsageOvertimeFilter APIUsageOverTimeFilter The API usage overtime filter.
dataFilter DataFilter! The data filter.
getAPIUsageByBackendOverTime APIUsageByBackendOverTime Returns API usage by each backend over time for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the apiUsageByBackendOverTimeFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
apiUsageByBackendOverTimeFilter APIUsageByBackendOverTimeFilter The API usage by backend overtime filter.
dataFilter DataFilter! The data filter.
getResourceUsage ResourceUsages Returns API usage by resource within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the resourceUsageFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
resourceUsageFilter ResourceUsageFilter The resource usage filter.
dataFilter DataFilter! The data filter.
getTotalTrafficByAPI Int Returns the total hit count for an API for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the filter parameter to further filter the results by a given time range.
filter TimeFilter The time filter.
dataFilter DataFilter! The data filter.
apiId ID! The API ID.
topSlowestAPIs [SlowAPI] Returns a list of top slowest APIs based on the response latency (95th percentile value) within the specified time range for the given combination of tenant ID, environment ID, and organization ID.
filter TimeFilter! The time filter.
dataFilter DataFilter! The data filter.
limit Int! The limit for the slow APIs list.
getLatency APILatency Returns different latency category values (95th percentile values) for a given API over time for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID.
timeFilter TimeFilter! The time filter.
latencyFilter LatencyFilter! The latency filter.
dataFilter DataFilter! The data filter.
getOverallLatencyByAPI OverallLatency Returns the overall response latency (95th percentile value) for an API for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the filter parameter to further filter the results by a given time range.
filter TimeFilter The time filter.
dataFilter DataFilter! The data filter.
apiId ID! The API ID.
getCacheHitsAndMisses CacheHits Return the total number of response cache hits, misses, and hit percentage for an API over time for each time granularity within the specified time range for the given combination of tenant ID, environment ID, and organization ID.
timeFilter TimeFilter! The time filter.
cacheFilter CacheFilter The cache filter.
dataFilter DataFilter! The data filter.
getTopPlatforms [Platform] Returns a list of top platforms ranked based on the hit count within the specified time range for the given combination of tenant ID, environment ID, and organization ID. The result list includes the top nine platforms with the respective hit count, and all the rest of the platforms are labeled as **Other** with the cumulated hit count. Optionally, you can configure the deviceFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
deviceFilter DeviceFilter The device filter.
dataFilter DataFilter! The data filter.
getTopUserAgents [UserAgent] Returns a list of top user agents ranked based on the hit count within the specified time range for the given combination of tenant ID, environment ID, and organization ID. The result list includes the top nine user agents with the respective hit count, and all the rest of the platforms are labeled as **Other** with the cumulated hit count. Optionally, you can configure the deviceFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
deviceFilter DeviceFilter The device filter.
dataFilter DataFilter! The data filter.
getAPIUsageByGeoLocation [UsageByGeoLocation] NOTE: Currently, this operation returns data only for on-premise environments. Returns API usage by country within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the geoLocationFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
geoLocationFilter GeoLocationFilter The geolocation filter.
dataFilter DataFilter! The data filter.
getAPIsUsageByApplications [APIUsageByApplication] Returns details relating to the usage of each API by application within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the apiUsageByAppFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
apiUsageByAppFilter APIUsageByAppFilter The API usage by app filter.
dataFilter DataFilter! The data filter.
getTopAPIsByAlertCount TopAPIsByAlertCount Returns top APIs ranked based on the alert count within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the topAPIsByAlertCountFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
topAPIsByAlertCountFilter TopAPIsByAlertCountFilter The top APIs by alert count filter.
dataFilter DataFilter! The data filter.
getAlertSummary AlertSummaries Returns a summary for each alert within the specified time range for the given combination of tenant ID, environment ID, and organization ID. Optionally, you can configure the alertSummaryFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
alertSummaryFilter AlertSummaryFilter The alert summary filter.
dataFilter DataFilter! The data filter.
getSuccessAPIsUsageByApplications [SuccessAPIUsageByApplication] NOTE: This operation can only be invoked via using an on-prem key as the authentication header. Returns a list of successful hit counts (i.e., 2xx response codes) within the specified time range for each API, grouped by each application. Optionally, you can configure the successAPIUsageByAppFilter parameter to further filter the results.
timeFilter TimeFilter! The time filter.
successAPIUsageByAppFilter SuccessAPIUsageByAppFilter The successful API usage by application filter.
getSuccessAPIsUsageByApplicationsWithOnPremKey [SuccessAPIUsageByApplication] Returns a list of successful hit counts (i.e., 2xx response codes) within the specified time range for each API, grouped by each application. Optionally, you can configure the successAPIUsageByAppFilter parameter to further filter the results.
onPremKey String! The value of the On-Prem key.
timeFilter TimeFilter! The time filter.
successAPIUsageByAppFilter SuccessAPIUsageByAppFilter The successful API usage by application filter.
getCustomReportOvertime CustomReportOvertime Returns the summary of hits or latency data as specified for the selected time duration, grouped by time spans.
dataFilter DataFilter! The data filter.
timeFilter TimeFilter! The time filter.
metric Metric! The metric for which data needs to be retrieved.
groupByFields [GroupByField]! The column/field by which data needs to be retrieved.
groupByValues [String]! The value used to filter by the groupByField.
granularity String! The granularity value for which data is retrieved.
getCustomReportTopOvertime CustomReportTopOvertime Returns the summary of hits or latency data as specified for the selected time duration, grouped by time spans for the top N values for the selected groupByField.
dataFilter DataFilter! The data filter.
timeFilter TimeFilter! The time filter.
metric Metric! The metric for which data needs to be retrieved.
groupByFields [GroupByField]! The column/field by which the data should be grouped.
groupByValues [String]! The value used to filter by the groupByField.
granularity String! The granularity value for which data is retrieved.
getGroupByValues [[String]] Returns a list of value sets by which you can group the data available for the selected groupBy fields.
dataFilter DataFilter! The data filter.
groupByFields [GroupByField]! The column/field for which the API needs to retrieve distinct values.
groupByValues [String]! The value used to filter by the groupByField.

Objects

API

Represents API details.

Field Argument Type Description
id ID! The ID of the API.
name String! The API name.
version String! The API version.
provider String! The API provider name.

APILatency

Represents latency values for a single API over time.

Field Argument Type Description
summary [Latency] A list containing latency category values over time. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

APIUsage

Represents the API usage for a single timestamp. The timestamp is calculated based on the granularity value provided.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
count Int! The API usage count.

APIUsageByApp

Represents API usage across APIs by a single application.

Field Argument Type Description
applicationId ID! The application ID.
applicationName String! The application name.
applicationOwner String! The name of the application owner.
usage [APIUsage] A list containing the APIs usage values. Returns an empty array if no data is available.

APIUsageByAppOverTime

Represents API usage across APIs by applications over time.

Field Argument Type Description
usage [APIUsageByApp] A list containing the API usage values across APIs, grouped by the application. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

APIUsageByApplication

Represents a single API usage by a single application.

Field Argument Type Description
apiId String! The ID of the API.
applicationId String! The Application ID.
applicationName String! The application name.
applicationOwner String! The name of the application owner.
count Int! The usage of the API by the application.

APIUsageByBackend

Represents API usage across APIs by a single backend.

Field Argument Type Description
backend String! The name of the backend.
usage [APIUsage] A list containing the APIs usage values. Returns an empty array if no data is available.

APIUsageByBackendOverTime

Represents API usage across APIs by each backend over time.

Field Argument Type Description
usage [APIUsageByBackend] A list containing the API usage values across APIs by each backend. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

APIUsageOverTime

Represents a single API usage over time.

Field Argument Type Description
apiId ID The ID of the API.
usage [APIUsage] A list containing the API usage values. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

AlertSummaries

Represents alert summaries.

Field Argument Type Description
usage [AlertSummary] A list containing the alert summary for each alert. Returns an empty array if no data is available.
pagination Pagination! The pagination details.

AlertSummary

Represents a summary for an alert.

Field Argument Type Description
apiId ID! The ID of the API.
timestamp String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
category String! The alert category. Possible values are LATENCY and TRAFFIC.
metric String! The alert metric. Possible values are RESPONSE_LATENCY and TOTAL_TRAFFIC.
severity String! The severity level of the alert. Possible values are LOW, MEDIUM, and HIGH.
message String! The alert details.

Application

Represents application details.

Field Argument Type Description
id ID! The Application ID.
name String! The application name.
owner String! The name of the application owner.

CacheHit

Represents the response cache hits and misses for a single timestamp. The timestamp is calculated based on the granularity value provided.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
hits Int! The number of times the response cache was hit.
misses Int! The number of times the response cache was missed.
hitPercentage Float! The response cache hits as a percentage of the sum of hits and misses.

CacheHits

Represents the response cache hits and misses over time.

Field Argument Type Description
summary [CacheHit] A list containing cache hits, misses, and the hit percentage over time. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

CustomReportGroupBy

Represents the usage data overtime for the selected parameters of a specific groupByValue.

Field Argument Type Description
groupByValue ID! The distinct group-by value that is used as an ID.
usage [CustomReportUsage] A list containing the usage values. This returns an empty array if no data is available.

CustomReportOvertime

Represents usage data overtime for the selected parameters.

Field Argument Type Description
usage [CustomReportUsage] A list containing the usage values. This returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

CustomReportTopOvertime

Represents usage data overtime for the selected parameters grouped by the top N groupByValues.

Field Argument Type Description
usage [CustomReportGroupBy] A list containing the usage values grouped by the selected groupByField. This returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

CustomReportUsage

Represents usage data for a single timestamp in CustomReports.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
value Int! The usage value (Hit Count/ Latency).

DetailsOfErrors

Represents error details over time.

Field Argument Type Description
usage [ErrorDetails]! A list containing error details over time. Returns an empty array if no data is available.
pagination Pagination! The pagination details.

Environment

Represents an environment.

Field Argument Type Description
id String! The environment ID.
externalEnvId String! The external environment ID.
internalEnvId String The internal environment ID.
sandboxEnvId String The sandbox environment ID.
name String! The environment name.
type EnvironmentType! The environment type. A Choreo environment is labeled as CHOREO, a private Choreo environment is labeled as CHOREO_PRIVATE, and the on-premise environment is labeled as ON_PREM.

ErrorCountByCategory

Represents the number of errors from each category for a single timestamp. The timestamp is calculated according to the provided granularity value. If you select some categories, the error counts are retrieved only for those categories, and a null value is shown for the other categories that are not selected.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
auth Int The count of authorization errors.
targetConnectivity Int The count of target connectivity errors.
throttled Int The count of throttling errors.
other Int The count of other errors.

ErrorCountByCode

Represents the error count for a single error status code.

Field Argument Type Description
statusCode String! The error status code.
count Int! The error count.

ErrorCountByCodeForAPI

Represents the error count for each status code for a single API.

Field Argument Type Description
apiId ID! The ID of the API.
errorCountByCode [ErrorCountByCode] A list containing the error count for each error status code. Returns an empty array if no data is available.

ErrorDetails

Represents details of an error for a single timestamp. The timestamp is calculated according to the granularity value provided.

Field Argument Type Description
apiId ID The ID of the API.
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
applicationId String The Application ID.
applicationName String The application name.
applicationOwner String The name of the application owner.
reason String! The reason for the error.
count Int! The error count.

ErrorStatusCodeCategoryCounts

Represents errors by the main status code (4xx or 5xx) and the total error count.

Field Argument Type Description
_4xx Int The number of client errors.
_5xx Int The number of server errors.
total Int The total number of client and server errors.

ErrorSummary

Provides the unsuccessful usage (i.e., 4xx and 5xx response codes) summary across all APIs.

Field Argument Type Description
summary [ErrorValue]! A list containing unsuccessful usage values. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

ErrorValue

Represents the unsuccessful request count (i.e., 4xx and 5xx response codes) for a single timestamp. The timestamp is calculated based on the granularity value provided.

Field Argument Type Description
timeSpan String Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
errorCount Int Represents the error request count.

ErrorsByCategory

Represents the errors by category over time.

Field Argument Type Description
errors [ErrorCountByCategory] A list containing the error count for each error category over time. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

ErrorsByStatusCode

Represents the error counts grouped by status code for each API.

Field Argument Type Description
errors [ErrorCountByCodeForAPI]! A list containing the error count for each status code for each API. Returns an empty array if no data is available.
pagination Pagination! Pagination details.

ErrorsByStatusCodeCategory

Represents the error category values (grouped as 4xx, 5xx, and total) for both proxy and target errors for a single timestamp. The timestamp is calculated based on the granularity value provided.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
proxy ErrorStatusCodeCategoryCounts Represents proxy-related errors categorized as client errors (4xx response codes) or server errors (5xx response codes), and the total of both categories.
target ErrorStatusCodeCategoryCounts Represents target-related errors categorized as client errors (4xx response codes) or server errors (5xx response codes), and the total of both categories.

Latency

Represents latency values for each latency category for a single timestamp. The timestamp is calculated based on the granularity value provided.

Field Argument Type Description
timeSpan String Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
response Int The response latency (95th percentile) in milliseconds (ms).
backend Int The backend latency (95th percentile) in milliseconds (ms).
requestMediation Int The request mediation latency (95th percentile) in milliseconds (ms).
responseMediation Int The response mediation latency (95th percentile) in milliseconds (ms).
responseMedian Int The median (50th percentile) of the response latency in milliseconds (ms).
backendMedian Int The median (50th percentile) of the backend latency in milliseconds (ms).
requestMediationMedian Int The median (50th percentile) of the request mediation latency in milliseconds (ms).
responseMediationMedian Int The median (50th percentile) of the response mediation latency in milliseconds (ms).

LatencySummary

Provides the latency summary.

Field Argument Type Description
summary [LatencyValue]! A list containing latency values. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

LatencyValue

Represents the latency value for a single timestamp. The timestamp is calculated according to the provided granularity value.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
latencyTime Float! Represents the latency (95th percentile) time in milliseconds (ms).

Organization

Represents an organization.

Field Argument Type Description
id String! The organization ID.
uuid ID! The organization UUID.
handle String! The organization handle name.
name String! The organization name.

OverallLatency

Represents the overall latency values.

Field Argument Type Description
response Float The response latency (95th percentile value) in milliseconds (ms).

Pagination

Represents pagination details.

Field Argument Type Description
total Int! The total number of results.
limit Int! The number of items in the result set.
offset Int! The offset value for the result set.
sortBy String! The sorting column name of the result set.
sortOrder String! The sorting order of the result set. Possible values are asc and desc.

Platform

Represents a platform.

Field Argument Type Description
platform String! The name of the platform.
count Int! The usage of the platform.

Provider

Represents API Provider details.

Field Argument Type Description
name String! The API provider name.

ResourceUsage

Represents the usage of a single API resource.

Field Argument Type Description
apiId ID! The ID of the API.
apiResourceTemplate String! The API resource template.
apiMethod String! The API method.
count Int! The usage of the API resource.

ResourceUsages

Represents API resource usages.

Field Argument Type Description
usage [ResourceUsage] A list with the usage of each API resource. Returns an empty array if no data is available.
pagination Pagination! Pagination details.

SlowAPI

A slow API identified based on the response latency (95th percentile).

Field Argument Type Description
apiId ID! The ID of the API.
latency Int! Represents the latency (95th percentile) time in milliseconds (ms).

Subscriber

Represents API Subscriber details.

Field Argument Type Description
name String! The name of the API subscriber.

SuccessAPIUsageByApplication

Represents successful usages(that have resulted in the 2xx response code) of an API by an application.

Field Argument Type Description
apiId String! The ID of the API.
apiName String! The name of the API.
apiVersion String! The version of the API.
apiCreatorTenantDomain String! The tenant domain of the API creator.
applicationId String! The application ID.
applicationName String! The name of the application.
applicationOwner String! The name of the application owner.
count Int!

SuccessSummary

Provides the successful (2xx response code) usage summary across all the APIs.

Field Argument Type Description
summary [SuccessValue]! A list containing successful usage values. Returns an empty array if no data is available.
granularity String! The granularity value for which data is retrieved.

SuccessValue

Represents the successful request count (i.e., requests that have received the 2xx response code) for a single timestamp. The timestamp is calculated according to the granularity value provided.

Field Argument Type Description
timeSpan String! Represents a timestamp value that is calculated based on the specified granularity value. For example, if the granularity value is 1d, the timestamp represents the start of the day calculated adhering to the timezone provided in the time filter. e.g., timeSpan: '2021-06-21T00:00:00.0000000+05:30'
requestCount Int! Represents the successful request count.

TopAPIByAlertCount

Represents a top API by alert count.

Field Argument Type Description
apiId ID! The ID of the API.
count Int! The alert count.

TopAPIsByAlertCount

Represents the top APIs by alert count.

Field Argument Type Description
usage [TopAPIByAlertCount] A list containing top APIs by alert count. Returns an empty array if no data is available.
pagination Pagination! The pagination details.

TotalError

Represents the total errors.

Field Argument Type Description
proxy Int The proxy-related error count.

UsageByGeoLocation

Represents the usage of a single API in a single country.

Field Argument Type Description
country String! The name of the country.
count Int! The usage of the API.

UserAgent

Represents a user agent.

Field Argument Type Description
userAgent String! The name of the user agent.
count Int! The usage of the user agent.

Inputs

APIUsageByAppFilter

Filters the API usage by application results.

Field Type Description
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.
appIds [String] The results are filtered for the list of applications you specify here. A maximum of five application IDs can be defined.
subscribers [String] The results are filtered for the list of subscribers you specify here. A maximum of five subscriber IDs can be defined.

APIUsageByBackendOverTimeFilter

Filters the results for API usage by backend over time.

Field Type Description
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

APIUsageOverTimeFilter

Filters the results for API usage over time.

Field Type Description
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.
appIds [String] The results are filtered for the list of applications you specify here. A maximum of five application IDs can be defined.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

AlertSummaryFilter

Filters the alerts summary results.

Field Type Description
paginationFilter PaginationFilter The pagination filter.
searchFilter SearchFilter The search filter.
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.
category String The alert category by which the results need to be filtered. The available categories to select are TRAFFIC and LATENCY.

ApplicationFilter

Filters applications by the application owner and API IDs.

Field Type Description
owner String
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.

CacheFilter

Filters response cache results.

Field Type Description
apiId String The results are filtered by the API ID specified here.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

DataFilter

Filters results by the given combination of organization, environment, and tenant.

Field Type Description
orgId String! The organization by which the results need to be filtered. It is required to specify a value for this parameter.
environmentId String The environment ID by which the results need to be filtered. It is required to specify a value for this parameter.
environmentIds [String] The environment IDs by which the results need to be filtered. It is required to specify a value for this parameter.
tenant String! The name of the tenant by which the results need to be filtered. It is required to specify a value for this parameter.
projectId String The project ID by which the results need to be filtered. It is optional to specify a value for this parameter. Note that providing a project ID with an on-prem key is not allowed.

DeviceFilter

Filters results related to devices.

Field Type Description
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.

ErrorCountByStatusCodeFilter

Filters errors by status code results.

Field Type Description
apiId String The results are filtered by the API ID specified here.
errorType ErrorType! The type of the error. It is required to specify a value for this parameter.
errorCodeType ErrorCodeType The error code type. If this parameter is not configured, both client-related error response codes (401, 404, etc.) and server-related response codes (500, 501, etc.) are included in the result set.
paginationFilter PaginationFilter The pagination filter.

ErrorsByCategoryFilter

Filters errors by category results.

Field Type Description
apiId String The ID of the API.
categories [String] The list of categories by which the results need to be filtered. Category values that you can specify here are AUTH, TARGET_CONNECTIVITY, THROTTLED, and OTHER.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

ErrorsByStatusCodeFilter

Filters errors by status code results.

Field Type Description
apiId String The results are filtered by the API ID specified here.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

ErrorsDetailsFilter

Filters the results for error details.

Field Type Description
apiId String The results are filtered by the API ID specified here.
appId String The application ID by which the results need to be filtered.
category String The error category by which the results need to be filtered. The error category that you can specify here must be one of the AUTH TARGET_CONNECTIVITY, THROTTLED, and OTHER values.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.
paginationFilter PaginationFilter The pagination filter.
searchFilter SearchFilter The search filter.

GeoLocationFilter

Filters the API usage by geolocation results.

Field Type Description
apiIds [String] The results are filtered for the list of APIs you specify here.

LatencyFilter

Filters latency results.

Field Type Description
apiId String! The results are filtered by the API ID specified here. It is required to specify a value for this parameter.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

LatencySummaryFilter

Filters latency summary results.

Field Type Description
apiId String The results are filtered by the API ID specified here.
granularity String The granularity value that is used for data retrieval. If the granularity value is not set, the default granularity for the related time range is applied. The possible granularity values that you can specify are 1m, 15m, 1h, 1d, and 7d.

OrgFilter

Filters results for the given organization.

Field Type Description
orgId String! The ID of the organization by which the results need to be filtered. It is required to specify a value for this parameter.

PaginationFilter

Filters related to pagination.

Field Type Description
limit Int The total number of rows in the result set. This value must be a positive integer. If this limit value is not set, the total number of rows is five by default.
offset Int The offset value to set when filtering results. This value must be zero or a positive integer. If you do not specify an offset value, the default offset value (i.e., 0) applies.
sortBy String The column name by which the results are sorted. If the sortBy value is not set, the default column of the related operation that is available for sorting purposes is used.
sortOrder String The order in which the results are sorted. Possible values are asc (to sort in ascending order) and desc (to sort in descending order). If no value is specified, the results are sorted in ascending order by default (except for count-specific operations such as getTopAPIsByAlertCount where the results are always sorted in descending order).

ResourceUsageFilter

Filters resource usage results.

Field Type Description
paginationFilter PaginationFilter The pagination filter.
searchFilter SearchFilter The search filter.

SearchFilter

Filters results by searching matching results for the provided search text.

Field Type Description
apiIds [String] The list of API IDs that need to be searched with the given search text. Note that it is not possible to define API IDs without a search text in the search filter.
searchText String! Text which needs to be searched among the results. It is required to specify a value for this parameter.

SubscriberFilter

Filters the subscriber results.

Field Type Description
apiIds [String] The results are filtered for the list of APIs you specify here. A maximum of five API IDs can be defined.

SuccessAPIUsageByAppFilter

Filters successful API usage by application results.

Field Type Description
apiIds [String] The list of API IDs by which the results need to be filtered.
tenantDomains [String] The tenant domain name by which the results need to be filtered.

TenantDataFilter

Filters results by the tenant.

Field Type Description
orgId String! The ID of the organization by which the results need to be filtered. It is required to specify a value for this parameter.
envId String The ID of the environment by which the results need to be filtered. It is required to specify a value for this parameter.
environmentIds [String] The environment IDs by which the results need to be filtered. It is required to specify a value for this parameter.

TimeFilter

Filters results by the provided date range.

Field Type Description
from String! The start date of the time range. The date specified here must be a date earlier than the date specified via the to parameter. If the defined date and time entry do not have a timezone, the UTC time zone (z) is used. It is required to specify a value for this parameter. e.g., '2021-08-16T12:00:00.000+05:30'.
to String! The end date of the time range. The date specified here must be a date later than the date specified via the from parameter. If the defined date and time entry do not have a timezone, the UTC time zone (z) is used. It is required to specify a value for this parameter. e.g., '2021-08-16T12:30:00.000+05:30'.

TopAPIsByAlertCountFilter

Filters the top APIs by alert count results.

Field Type Description
paginationFilter PaginationFilter The pagination filter.
searchFilter SearchFilter The search filter.

Enums

EnvironmentType

Represents an error type.

Value Description
CHOREO The Choreo environments.
CHOREO_PRIVATE The private data-plane Choreo environments.
ON_PREM The On-Premise environments.

ErrorCodeType

Represents an error code type.

Value Description
_4XX The client-side errors.
_5XX The server-side errors.

ErrorType

Represents an error type.

Value Description
PROXY The proxy-related errors.
TARGET The target-related errors.

GroupByField

Represents an groupByField used in CustomReports.

Value Description
API_NAME The API name.
API_VERSION The API version.
API_RESOURCE_TEMPLATE The API resource template.
API_METHOD The API method.
API_CREATOR The API creator.
APPLICATION_NAME The name of the application.
APPLICATION_OWNER The owner of the application.
DESTINATION The destination.
USER_AGENT The user Agent.
PLATFORM The platform.
TARGET_RESPONSE_CODE The target response code.

Metric

Represents a metric used in CustomReports.

Value Description
HIT_COUNT The number of API calls.
RESPONSE_CACHE_HIT The number of API calls that used the response cache.
REQUEST_MEDIATION_LATENCY The request mediation latency.
RESPONSE_MEDIATION_LATENCY The response mediation latency.
BACKEND_LATENCY The backend latency.
TOTAL_LATENCY The total latency.
API_ERRORS The number of hits for which API errors are returned.
TARGET_ERRORS The number of hits for which target errors are returned.

Scalars

Boolean

The Boolean scalar type represents true or false.

Float

The Float scalar type represents signed double-precision fractional values as specified by IEEE 754.

ID

The ID scalar type represents a unique identifier, often used to re-fetch an object or as the key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as "4") or integer (such as 4) input value is accepted as an ID.

Int

The Int scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1.

String

The String scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.