openapi: 3.1.0 info: title: Nacos Open Auth Service Management API description: Nacos Open API for service discovery, configuration management, and namespace management. Nacos supports dynamic service discovery, service configuration, service metadata, and traffic management. version: 2.3.0 contact: name: Alibaba Nacos url: https://nacos.io/ license: name: Apache 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 servers: - url: http://localhost:8848/nacos description: Local Nacos server - url: http://{nacos_host}:{port}/nacos description: Custom Nacos server variables: nacos_host: default: localhost port: default: '8848' security: - AccessToken: [] tags: - name: Service Management description: Service definition management paths: /v1/ns/service: post: operationId: createService summary: Create a service description: Creates a new service definition. tags: - Service Management requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - serviceName properties: serviceName: type: string groupName: type: string namespaceId: type: string protectThreshold: type: number description: Protection threshold (0 to 1) metadata: type: string selector: type: string responses: '200': description: Service created content: text/plain: schema: type: string delete: operationId: deleteService summary: Delete a service description: Deletes a service (must have no instances). tags: - Service Management parameters: - name: serviceName in: query required: true schema: type: string - name: groupName in: query schema: type: string - name: namespaceId in: query schema: type: string responses: '200': description: Service deleted content: text/plain: schema: type: string put: operationId: updateService summary: Update a service description: Updates a service definition. tags: - Service Management requestBody: required: true content: application/x-www-form-urlencoded: schema: type: object required: - serviceName properties: serviceName: type: string groupName: type: string namespaceId: type: string protectThreshold: type: number metadata: type: string selector: type: string responses: '200': description: Service updated content: text/plain: schema: type: string get: operationId: getService summary: Get a service description: Returns the details of a service. tags: - Service Management parameters: - name: serviceName in: query required: true schema: type: string - name: groupName in: query schema: type: string - name: namespaceId in: query schema: type: string responses: '200': description: Service details content: application/json: schema: $ref: '#/components/schemas/ServiceDetail' /v1/ns/service/list: get: operationId: listServices summary: List services description: Returns a paginated list of services. tags: - Service Management parameters: - name: pageNo in: query required: true schema: type: integer - name: pageSize in: query required: true schema: type: integer - name: groupName in: query schema: type: string - name: namespaceId in: query schema: type: string responses: '200': description: Service list content: application/json: schema: type: object properties: count: type: integer doms: type: array items: type: string components: schemas: ServiceDetail: type: object properties: name: type: string groupName: type: string clusters: type: string protectThreshold: type: number metadata: type: object additionalProperties: type: string selector: type: object properties: type: type: string securitySchemes: AccessToken: type: apiKey name: accessToken in: query description: Access token obtained from login endpoint