Team Center REST API

Use the Team Center REST API to provide various Team Center dashboard-level and metric data query functionalities. Like other APM REST APIs, the Team Center REST API interface uses token-based authentication. For more information on how to obtain the token, see Generate Security Token.
The Team Center REST API contains the following resources:
Resource
Description
Example
Gets the metric data using the standard SQL syntax query in the payload.
POST /atc/private/apmData/query
Gets the SQL schema capabilities (i.e. supported tables, columns details) that can be used in REST SQL Query.
GET /atc/private/apmData/schema
Use the public SQL REST API
only
to extract metric data from APM. To extract APM or non-APM metric data use the Metric Query REST API.
Team Center REST API Resources
You can define queries using the count, minimum, maximum, and average functions. The following aggregate functions are only supported on agg_value column in the metric_data table: sum; apm_average; apm_aggregate.
The aggregate function results in the following:
  • sum aggregate function provides the sum of the agg_values column values
  • apm_aggregate provides the sum or weighted average based on the metrics queried
  • apm_average only provides the weighted average
The Team Center REST API contains the following resources:
Resource 1:
/atc/private/apmData/query
Gets the metric data using the standard SQL syntax query in the payload.
Example:
POST /atc/private/apmData/query
Payload:
{ "query": <SQLQuery(string)> //sql query string}// Example:{ "query": "select * from metric_data where ts >= 1572518520000 and ts <= 1572518535000"}
Response:
{ "columns": [ // The columns specified in the query or all the columns(*) of the table as per the schema { "name": "source_name", // Source name of the metric, empty as it is no longer valid "type": "string" }, { "name": "agent_host", // Host name of the agent "type": "string" // Indicates the type of column value }, { "name": "agent_process", // Process name "type": "string" }, { "name": "agent_name", // Agent name of the metric "type": "string" }, { "name": "domain_name", // Domain name of the metric "type": "string" }, { "name": "metric_path", // Metric path containing folder name and metric attribute "type": "string" }, { "name": "metric_attribute", // Attribute name of the metric "type": "string" }, { "name": "attribute_type", // Integer that defines type of metric "type": "long" }, { "name": "frequency", // Width of interval in number of seconds "type": "long" }, { "name": "ts", // Denotes timestamp of the metric "type": "timestamp" }, { "name": "min_value", // min value of the metric "type": "long" }, { "name": "max_value", // max value of the metric "type": "long" }, { "name": "value_count", // Count of metric occurrences "type": "long" }, { "name": "agg_value", // aggregate value of the metric "type": "long" } ], "rows": [ [ <empty(string)>, <agent_host(string)>, <agent_process(string)>, <agent_name(string)>, <domain_name(string)>, <metric_path(string)>, <metric_attribute(string)>, <attribute_type(long)>, <frequency(long)>, <first_ts_value(timestamp)>, <min_value(long)>, <max_value(long)>, <value_count>, <agg_value(long)> ] //next row ]}// Example:{ "columns": [ { "name": "source_name", "type": "string" }, { "name": "agent_host", "type": "string" }, { "name": "agent_process", "type": "string" }, { "name": "agent_name", "type": "string" }, { "name": "domain_name", "type": "string" }, { "name": "metric_path", "type": "string" }, { "name": "metric_attribute", "type": "string" }, { "name": "attribute_type", "type": "long" }, { "name": "frequency", "type": "long" }, { "name": "ts", "type": "timestamp" }, { "name": "min_value", "type": "long" }, { "name": "max_value", "type": "long" }, { "name": "value_count", "type": "long" }, { "name": "agg_value", "type": "long" } ], "rows": [ [ "", "brtlvlts1719sl", "WebLogic", "WLP_LOGIN_MOBILE_PROD/WLP_LOGIN_MOBILE_PROD_Cluster/WLP_LOGIN_MOBILE_PROD_Srv23", "SuperDomain", "WebServices|Client|http_//www.gvt.com.br/CustomerManagement/CustomerInformationManagement/CustomerProfileManagement:SOAP Faults Per Interval", "SOAP Faults Per Interval", 8194, 15000, 1572518520000, 0, 0, 0, 0 ], [ "", "brtlvlts1719sl", "WebLogic", "WLP_LOGIN_MOBILE_PROD/WLP_LOGIN_MOBILE_PROD_Cluster/WLP_LOGIN_MOBILE_PROD_Srv23", "SuperDomain", "WebServices|Client|http_//www.gvt.com.br/CustomerManagement/CustomerInformationManagement/CustomerProfileManagement:SOAP Faults Per Interval", "SOAP Faults Per Interval", 8194, 15000, 1572518535000, 0, 0, 0, 0 ] ]}
Resource 2:
/atc/private/apmData/schema
Gets the SQL schema capabilities (i.e. supported tables, columns details) that can be used in REST SQL Query.
E
xample:
GET /atc/private/apmData/schema
Response:
{ "tables": [ { "name": "metric_data", "columns": [ { "name": "source_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "agent_host", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "agent_process", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "agent_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "domain_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "metric_path", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "metric_attribute", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "attribute_type", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "frequency", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "ts", "type": "timestamp", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "min_value", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "max_value", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "value_count", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "agg_value", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] } ] }, { "name": "metrics", "columns": [ { "name": "source_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "agent_host", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "agent_process", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "agent_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "domain_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "metric_path", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "metric_attribute", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "attribute_type", "type": "long", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "first_seen", "type": "timestamp", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] }, { "name": "last_seen", "type": "timestamp", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN" ] } ] }, { "name": "sources", "columns": [ { "name": "source_name", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "status", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] }, { "name": "type", "type": "string", "whereCapabilities": [ "=", "<", ">", "<=", ">=", "<>", "!=", "BETWEEN", "LIKE", "LIKE_REGEX" ] } ] } ]}