API
Route: /summary
/summaryMethod: GET
GETReturns an object summarizing all known zones and related metadata.
Response 200 (application/json)
{
"zones": {
"default-zone": {
"clusters": {
"example": {
"clusterName": "example",
"zoneName": "default-zone",
"name": "Example Service",
"version": "1.0",
"owner": "Demo",
"capability": "Demo",
"runtime": "GO",
"documentation": "/services/example/1.0",
"prometheusJob": "example",
"minInstances": 1,
"maxInstances": 1,
"authorized": true,
"clusterID": "example",
"meshID": "default-zone",
"enableInstanceMetrics": true,
"enableHistoricalMetrics": true,
"instances": [
{
"name": "dca79626b6a99f6783f490556e4a5062",
"startTime": 1569247575966
}
],
"metricsTemplate": "",
"metricsPort": 8081
},
"fibonacci": {
"clusterName": "fibonacci",
"zoneName": "default-zone",
"name": "Fibonacci",
"version": "1.0.0",
"owner": "Demo",
"capability": "Demo",
"runtime": "GO",
"documentation": "/services/fibonacci/1.0/",
"prometheusJob": "fibonacci",
"minInstances": 1,
"maxInstances": 1,
"authorized": true,
"clusterID": "fibonacci",
"meshID": "default-zone",
"enableInstanceMetrics": true,
"enableHistoricalMetrics": true,
"instances": [
{
"name": "7795eabdbaf06bb83b2947f74e5d0143",
"startTime": 1570807423191
}
],
"metricsTemplate": "",
"metricsPort": 8081
}
},
"metadata": {
"zoneName": "default-zone",
"owners": [
"Demo",
"Decipher"
],
"capabilities": [
"Demo",
"Grey Matter"
],
"clusterCount": 22,
"clusterStableCount": 17,
"clusterWarningCount": 3,
"clusterDownCount": 2,
"instanceCount": 1
}
}
},
"metadata": {
"zoneCount": 1,
"owners": [
"Demo",
"Decipher"
],
"capabilities": [
"Grey Matter",
"Demo"
],
"clusterCount": 22,
"clusterStableCount": 17,
"clusterWarningCount": 3,
"clusterDownCount": 2,
"instanceCount": 30
},
"meshes": {
"default-zone": {
"clusters": {
"example": {
"clusterName": "example",
"zoneName": "default-zone",
"name": "Example Service",
"version": "1.0",
"owner": "Demo",
"capability": "Demo",
"runtime": "GO",
"documentation": "/services/example/1.0",
"prometheusJob": "example",
"minInstances": 1,
"maxInstances": 1,
"authorized": true,
"clusterID": "example",
"meshID": "default-zone",
"enableInstanceMetrics": true,
"enableHistoricalMetrics": true,
"instances": [
{
"name": "dca79626b6a99f6783f490556e4a5062",
"startTime": 1569247575966
}
],
"metricsTemplate": "",
"metricsPort": 8081
},
"fibonacci": {
"clusterName": "fibonacci",
"zoneName": "default-zone",
"name": "Fibonacci",
"version": "1.0.0",
"owner": "Demo",
"capability": "Demo",
"runtime": "GO",
"documentation": "/services/fibonacci/1.0/",
"prometheusJob": "fibonacci",
"minInstances": 1,
"maxInstances": 1,
"authorized": true,
"clusterID": "fibonacci",
"meshID": "default-zone",
"enableInstanceMetrics": true,
"enableHistoricalMetrics": true,
"instances": [
{
"name": "7795eabdbaf06bb83b2947f74e5d0143",
"startTime": 1570807423191
}
],
"metricsTemplate": "",
"metricsPort": 8081
}
},
"metadata": {
"zoneName": "default-zone",
"owners": [
"Demo",
"Decipher"
],
"capabilities": [
"Demo",
"Grey Matter"
],
"clusterCount": 22,
"clusterStableCount": 17,
"clusterWarningCount": 3,
"clusterDownCount": 2,
"instanceCount": 1
}
}
}
}Route: /clusters
/clustersMethod: GET
GETReturns a list of service clusters, including running instances and start times.
Multiple query parameters may be used:
status: acceptsstable,warning, anddownclusterNamezoneNamenameversionownercapabilityprometheusJobauthorizedenableInstanceMetricsenableHistoricalMetrics
ex: GET /clusters?name=Example%20Service&owner=Decipher
Response 200 (application/json)
Method: POST
POSTAdds a new service cluster.
ex: POST /clusters with the following request body:
Request (application/json)
Response 200 (application/json)
Route: /clusters/<clusterName>
/clusters/<clusterName>Method: GET
GETReturns a list of matching service clusters, including running instances and starttimes.
A query parameter may be used to specify a zoneName.
ex: GET /clusters/example-service?zoneName=us-east-2
Response 200 (application/json)
Method: PUT
PUTReplaces an existing service cluster within a mesh (specified in the request body object).
ex: PUT /clusters/example-service with the following request body:
Request (application/json)
Response 200 (application/json)
Method: DELETE
DELETEDeletes an existing service cluster within a mesh. Note that a zoneName must be specified via query parameter:
ex: DELETE /clusters/example-service?zoneName=us-east-2
Response 200 (application/json)
Route: /metrics/<clusterName>/<instance>
/metrics/<clusterName>/<instance>Method: GET
GETex: /metrics/isprime-cluster-1/96cf8008461085dc439e495d7adabd21
Response 200 (application/json)
Route: /zones
/zonesMethod: GET
GETReturns a list of metadata objects related to each known mesh.
Response 200 (application/json)
Method: POST
POSTAdds a new mesh (i.e. registers a new gm-xds instance with Catalog).
Request (application/json)
Response 200 (application/json)
Route: /zones/<zoneName>
/zones/<zoneName>Method: GET
GETReturns a metadata object for a specified mesh.
A query parameter may be used to specify a zoneName.
ex: GET /zones/us-east-2
Response 200 (application/json)
Method: DELETE
DELETEDeletes an existing mesh AND its service clusters from the Catalog.
ex: DELETE /zones/north-region
Response 200 (application/json)
Route: /services (Deprecated)
/services (Deprecated)Method: GET
GETThe response contains the entire listing of services that should be present in the mesh, as well as running instances and starttimes.
Response 200 (application/json)
Route: /metrics/<service name>/<version>/<instance> (Deprecated)
/metrics/<service name>/<version>/<instance> (Deprecated)Method: GET
GETex: /metrics/isPrime%20Service/1.0/96cf8008461085dc439e495d7adabd21
Response 200 (application/json)
Last updated
Was this helpful?