{ "uuid": "a2b0e860-241c-4829-a821-c33966513e0b", "lastMigration": 29, "name": "Service Management API", "endpointPrefix": "", "latency": 0, "port": 3000, "hostname": "", "routes": [ { "uuid": "8beb7bbc-b18d-4687-9a43-82de2fbb4d11", "documentation": "Lists service operations that match the specified filter in the request.", "method": "get", "endpoint": "v1/operations", "responses": [ { "uuid": "3fa9a264-b26a-4e09-aeb3-e673e306e05f", "body": "{\n \"nextPageToken\": \"\",\n \"operations\": [\n {\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n }\n ]\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "673a89a9-8186-4288-a171-ca41f9545ba0", "documentation": "Lists managed services. Returns all public services. For authenticated users, also returns all services the calling user has \"servicemanagement.services.get\" permission for.", "method": "get", "endpoint": "v1/services", "responses": [ { "uuid": "82f004c2-f067-475f-946a-766908d10af9", "body": "{\n \"nextPageToken\": \"\",\n \"services\": [\n {\n \"producerProjectId\": \"\",\n \"serviceName\": \"\"\n }\n ]\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "0047652a-6fde-4d84-80c8-057c6d8d16ca", "documentation": "Creates a new managed service. A managed service is immutable, and is subject to mandatory 30-day data retention. You cannot move a service or recreate it within 30 days after deletion. One producer project can own no more than 500 services. For security and reliability purposes, a production service should be hosted in a dedicated producer project. Operation", "method": "post", "endpoint": "v1/services", "responses": [ { "uuid": "f6ee4c92-85b0-46cc-b8af-7ec09b006086", "body": "{\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "802e47c4-d98b-4378-80f9-27fb9ab0ec13", "documentation": "Deletes a managed service. This method will change the service to the `Soft-Delete` state for 30 days. Within this period, service producers may call UndeleteService to restore the service. After 30 days, the service will be permanently deleted. Operation", "method": "delete", "endpoint": "v1/services/:serviceName", "responses": [ { "uuid": "f8df4711-3f6f-4cbc-bb3b-e5581188dae2", "body": "{\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "2e6d411a-e7d7-4428-86bf-b043efd82692", "documentation": "Gets a managed service. Authentication is required unless the service is public.", "method": "get", "endpoint": "v1/services/:serviceName", "responses": [ { "uuid": "8236c754-5449-4bb1-b427-89f117f509c6", "body": "{\n \"producerProjectId\": \"\",\n \"serviceName\": \"\"\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "228f43b5-5a44-48d9-b818-6c691b176610", "documentation": "Gets a service configuration (version) for a managed service.", "method": "get", "endpoint": "v1/services/:serviceName/config", "responses": [ { "uuid": "69ea6ec9-aea0-4528-ab01-02ce1fcf9b5f", "body": "\"\"", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "fc3dd352-d39d-413b-9697-d27caf566a48", "documentation": "Lists the history of the service configuration for a managed service, from the newest to the oldest.", "method": "get", "endpoint": "v1/services/:serviceName/configs", "responses": [ { "uuid": "036d884b-d072-4723-a569-82a6e867bcd3", "body": "\"\"", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "1a8e7046-432a-4688-a60c-94748384002e", "documentation": "Creates a new service configuration (version) for a managed service. This method only stores the service configuration. To roll out the service configuration to backend systems please call CreateServiceRollout. Only the 100 most recent service configurations and ones referenced by existing rollouts are kept for each service. The rest will be deleted eventually.", "method": "post", "endpoint": "v1/services/:serviceName/configs", "responses": [ { "uuid": "86899d3c-ffd6-45e5-8e04-1eec2750c75e", "body": "\"\"", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "5dabdde2-7bef-438d-ae96-9c54f16186b5", "documentation": "Gets a service configuration (version) for a managed service.", "method": "get", "endpoint": "v1/services/:serviceName/configs/:configId", "responses": [ { "uuid": "6926f450-8ef0-41cb-968d-a96accd50c3b", "body": "\"\"", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "28e8fc2e-3a14-46ff-ba29-7aab4d4b3d1f", "documentation": "Creates a new service configuration (version) for a managed service based on user-supplied configuration source files (for example: OpenAPI Specification). This method stores the source configurations as well as the generated service configuration. To rollout the service configuration to other services, please call CreateServiceRollout. Only the 100 most recent configuration sources and ones referenced by existing service configurtions are kept for each service. The rest will be deleted eventually. Operation", "method": "post", "endpoint": "v1/services/:serviceName/configs:submit", "responses": [ { "uuid": "f3526bef-2571-4b58-9c66-60396596a444", "body": "{\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "67fb1602-5ee7-411c-8d61-7fe550ff17f4", "documentation": "Lists the history of the service configuration rollouts for a managed service, from the newest to the oldest.", "method": "get", "endpoint": "v1/services/:serviceName/rollouts", "responses": [ { "uuid": "3125c85b-6a7a-47cf-9670-671e364a0dbd", "body": "{\n \"nextPageToken\": \"\",\n \"rollouts\": [\n {\n \"createTime\": \"\",\n \"createdBy\": \"\",\n \"deleteServiceStrategy\": {},\n \"rolloutId\": \"\",\n \"serviceName\": \"\",\n \"status\": \"{{oneOf (array 'ROLLOUT_STATUS_UNSPECIFIED' 'IN_PROGRESS' 'SUCCESS' 'CANCELLED' 'FAILED' 'PENDING' 'FAILED_ROLLED_BACK')}}\",\n \"trafficPercentStrategy\": {\n \"percentages\": {}\n }\n }\n ]\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "515d1f97-f698-406d-8797-69fc17702e8a", "documentation": "Creates a new service configuration rollout. Based on rollout, the Google Service Management will roll out the service configurations to different backend services. For example, the logging configuration will be pushed to Google Cloud Logging. Please note that any previous pending and running Rollouts and associated Operations will be automatically cancelled so that the latest Rollout will not be blocked by previous Rollouts. Only the 100 most recent (in any state) and the last 10 successful (if not already part of the set of 100 most recent) rollouts are kept for each service. The rest will be deleted eventually. Operation", "method": "post", "endpoint": "v1/services/:serviceName/rollouts", "responses": [ { "uuid": "0dcd3d87-57ee-48cb-a3ef-bede6fa2c069", "body": "{\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "3d9471cd-a882-4a99-90a8-a0b89352f852", "documentation": "Gets a service configuration rollout.", "method": "get", "endpoint": "v1/services/:serviceName/rollouts/:rolloutId", "responses": [ { "uuid": "e9a6fd3f-2205-4652-bd10-88821e1dcc0e", "body": "{\n \"createTime\": \"\",\n \"createdBy\": \"\",\n \"deleteServiceStrategy\": {},\n \"rolloutId\": \"\",\n \"serviceName\": \"\",\n \"status\": \"{{oneOf (array 'ROLLOUT_STATUS_UNSPECIFIED' 'IN_PROGRESS' 'SUCCESS' 'CANCELLED' 'FAILED' 'PENDING' 'FAILED_ROLLED_BACK')}}\",\n \"trafficPercentStrategy\": {\n \"percentages\": {}\n }\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "ae993619-43e4-4982-b507-7368f945fe72", "documentation": "Revives a previously deleted managed service. The method restores the service using the configuration at the time the service was deleted. The target service must exist and must have been deleted within the last 30 days. Operation", "method": "post", "endpoint": "v1/services/:serviceName:undelete", "responses": [ { "uuid": "c46e7390-bd6d-4243-89e5-bac63a33cb7d", "body": "{\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "e3f3d562-a40c-42d8-aff6-5677964ac408", "documentation": "Generates and returns a report (errors, warnings and changes from existing configurations) associated with GenerateConfigReportRequest.new_value If GenerateConfigReportRequest.old_value is specified, GenerateConfigReportRequest will contain a single ChangeReport based on the comparison between GenerateConfigReportRequest.new_value and GenerateConfigReportRequest.old_value. If GenerateConfigReportRequest.old_value is not specified, this method will compare GenerateConfigReportRequest.new_value with the last pushed service configuration.", "method": "post", "endpoint": "v1/services:generateConfigReport", "responses": [ { "uuid": "cd128d30-c42e-4fd8-91d1-89039cd81ef7", "body": "{\n \"changeReports\": [\n {\n \"configChanges\": [\n {\n \"advices\": [\n {\n \"description\": \"\"\n }\n ],\n \"changeType\": \"{{oneOf (array 'CHANGE_TYPE_UNSPECIFIED' 'ADDED' 'REMOVED' 'MODIFIED')}}\",\n \"element\": \"\",\n \"newValue\": \"\",\n \"oldValue\": \"\"\n }\n ]\n }\n ],\n \"diagnostics\": [\n {\n \"kind\": \"{{oneOf (array 'WARNING' 'ERROR')}}\",\n \"location\": \"\",\n \"message\": \"\"\n }\n ],\n \"id\": \"\",\n \"serviceName\": \"\"\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "ccd8ae91-34c5-4a2f-a052-a4327337d815", "documentation": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.", "method": "get", "endpoint": "v1/:name", "responses": [ { "uuid": "4d83bc9f-4c53-40bc-8149-f95015d850bb", "body": "{\n \"done\": {{faker 'datatype.boolean'}},\n \"error\": {\n \"code\": {{faker 'number.int' max=99999}},\n \"details\": [\n {}\n ],\n \"message\": \"\"\n },\n \"metadata\": {},\n \"name\": \"\",\n \"response\": {}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "844c72f3-68ec-4401-af22-7c79042027b4", "documentation": "Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.", "method": "post", "endpoint": "v1/:resource:getIamPolicy", "responses": [ { "uuid": "9bc2923c-ad29-4bff-8cf4-8f12b97ff0f3", "body": "{\n \"auditConfigs\": [\n {\n \"auditLogConfigs\": [\n {\n \"exemptedMembers\": [\n \"\"\n ],\n \"logType\": \"{{oneOf (array 'LOG_TYPE_UNSPECIFIED' 'ADMIN_READ' 'DATA_WRITE' 'DATA_READ')}}\"\n }\n ],\n \"service\": \"\"\n }\n ],\n \"bindings\": [\n {\n \"condition\": {\n \"description\": \"\",\n \"expression\": \"\",\n \"location\": \"\",\n \"title\": \"\"\n },\n \"members\": [\n \"\"\n ],\n \"role\": \"\"\n }\n ],\n \"etag\": \"\",\n \"version\": {{faker 'number.int' max=99999}}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "17dce438-df4f-4932-a7b5-c367332f6f07", "documentation": "Sets the access control policy on the specified resource. Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, and `PERMISSION_DENIED` errors.", "method": "post", "endpoint": "v1/:resource:setIamPolicy", "responses": [ { "uuid": "4e0ee79e-35f5-480c-8ad9-535b09d81464", "body": "{\n \"auditConfigs\": [\n {\n \"auditLogConfigs\": [\n {\n \"exemptedMembers\": [\n \"\"\n ],\n \"logType\": \"{{oneOf (array 'LOG_TYPE_UNSPECIFIED' 'ADMIN_READ' 'DATA_WRITE' 'DATA_READ')}}\"\n }\n ],\n \"service\": \"\"\n }\n ],\n \"bindings\": [\n {\n \"condition\": {\n \"description\": \"\",\n \"expression\": \"\",\n \"location\": \"\",\n \"title\": \"\"\n },\n \"members\": [\n \"\"\n ],\n \"role\": \"\"\n }\n ],\n \"etag\": \"\",\n \"version\": {{faker 'number.int' max=99999}}\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" }, { "uuid": "17ab2c0d-d7f4-4632-905b-07aa640375c7", "documentation": "Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a `NOT_FOUND` error. Note: This operation is designed to be used for building permission-aware UIs and command-line tools, not for authorization checking. This operation may \"fail open\" without warning.", "method": "post", "endpoint": "v1/:resource:testIamPermissions", "responses": [ { "uuid": "f5c1ffd2-330b-4de9-be8c-1628de90d349", "body": "{\n \"permissions\": [\n \"\"\n ]\n}", "latency": 0, "statusCode": 200, "label": "Successful response", "headers": [{ "key": "Content-Type", "value": "application/json" }], "bodyType": "INLINE", "filePath": "", "databucketID": "", "sendFileAsBody": false, "rules": [], "rulesOperator": "OR", "disableTemplating": false, "fallbackTo404": false, "default": true, "crudKey": "id" } ], "enabled": true, "responseMode": null, "type": "http" } ], "proxyMode": false, "proxyHost": "", "proxyRemovePrefix": false, "tlsOptions": { "enabled": false, "type": "CERT", "pfxPath": "", "certPath": "", "keyPath": "", "caPath": "", "passphrase": "" }, "cors": true, "headers": [], "proxyReqHeaders": [{ "key": "", "value": "" }], "proxyResHeaders": [{ "key": "", "value": "" }], "data": [], "folders": [], "rootChildren": [ { "type": "route", "uuid": "8beb7bbc-b18d-4687-9a43-82de2fbb4d11" }, { "type": "route", "uuid": "673a89a9-8186-4288-a171-ca41f9545ba0" }, { "type": "route", "uuid": "0047652a-6fde-4d84-80c8-057c6d8d16ca" }, { "type": "route", "uuid": "802e47c4-d98b-4378-80f9-27fb9ab0ec13" }, { "type": "route", "uuid": "2e6d411a-e7d7-4428-86bf-b043efd82692" }, { "type": "route", "uuid": "228f43b5-5a44-48d9-b818-6c691b176610" }, { "type": "route", "uuid": "fc3dd352-d39d-413b-9697-d27caf566a48" }, { "type": "route", "uuid": "1a8e7046-432a-4688-a60c-94748384002e" }, { "type": "route", "uuid": "5dabdde2-7bef-438d-ae96-9c54f16186b5" }, { "type": "route", "uuid": "28e8fc2e-3a14-46ff-ba29-7aab4d4b3d1f" }, { "type": "route", "uuid": "67fb1602-5ee7-411c-8d61-7fe550ff17f4" }, { "type": "route", "uuid": "515d1f97-f698-406d-8797-69fc17702e8a" }, { "type": "route", "uuid": "3d9471cd-a882-4a99-90a8-a0b89352f852" }, { "type": "route", "uuid": "ae993619-43e4-4982-b507-7368f945fe72" }, { "type": "route", "uuid": "e3f3d562-a40c-42d8-aff6-5677964ac408" }, { "type": "route", "uuid": "ccd8ae91-34c5-4a2f-a052-a4327337d815" }, { "type": "route", "uuid": "844c72f3-68ec-4401-af22-7c79042027b4" }, { "type": "route", "uuid": "17dce438-df4f-4932-a7b5-c367332f6f07" }, { "type": "route", "uuid": "17ab2c0d-d7f4-4632-905b-07aa640375c7" } ] }