openapi: 3.2.0 info: version: v2 title: Dome9. Service Account API description: CloudGuard Service Accounts servers: - url: https://api.dome9.com tags: - name: Service Account description: CloudGuard Service Accounts type: Administration paths: /v2/service-account/update: post: tags: - Service Account summary: Update a Service Account (Name and Roles) operationId: ServiceAccount_UpdateServiceAccount responses: '200': description: OK content: application/json: schema: type: object text/json: schema: type: object text/html: schema: type: object application/xml: schema: type: object text/xml: schema: type: object requestBody: content: application/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/html: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' application/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' description: Includes the role ID to update and the new name and role IDs to apply required: true /v2/service-account/{id}: get: tags: - Service Account summary: Get details on all service accounts in the account operationId: ServiceAccount_Get parameters: - name: id in: path required: true schema: type: string format: uuid responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' text/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' text/html: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' application/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' text/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' /v2/service-account/{serviceAccountId}: delete: tags: - Service Account summary: Delete a specific Service Account by ID operationId: ServiceAccount_DeleteServiceAccount parameters: - name: serviceAccountId in: path description: The ID of the Service Account to delete required: true schema: type: string format: uuid responses: '204': description: No Content /v2/service-account/generate-key: post: tags: - Service Account summary: Generate a new access key and secret for a specific Service Account operationId: ServiceAccount_GenerateSecretForServiceAccount responses: '200': description: OK content: application/json: schema: type: object text/json: schema: type: object text/html: schema: type: object application/xml: schema: type: object text/xml: schema: type: object requestBody: content: application/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/html: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' application/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' description: Details on the Service Account. Only the ID is required required: true /v2/service-account: get: tags: - Service Account summary: Get details on all service accounts in the account operationId: ServiceAccount_GetServiceAccounts responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' text/json: schema: type: array items: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' text/html: schema: type: array items: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' application/xml: schema: type: array items: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' text/xml: schema: type: array items: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountGetViewModel' post: tags: - Service Account summary: Create a new Service Account operationId: ServiceAccount_PostServiceAccount responses: '200': description: OK content: application/json: schema: type: object text/json: schema: type: object text/html: schema: type: object application/xml: schema: type: object text/xml: schema: type: object requestBody: content: application/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/json: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/html: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' application/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' text/xml: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' application/x-www-form-urlencoded: schema: $ref: '#/components/schemas/Dome9.Web.Api.ServiceAccountViewModel' description: The name of the Service Account and the role IDs to assign it. required: true delete: tags: - Service Account summary: Delete all Service Accounts in the account operationId: ServiceAccount_DeleteAllServiceAccountsForUser responses: '204': description: No Content components: schemas: Dome9.Web.Api.ServiceAccountGetViewModel: type: object properties: name: maxLength: 50 minLength: 0 pattern: '[^/]+$' type: string id: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 apiKeyId: type: string roleIds: type: array items: format: int64 type: integer dateCreated: format: date-time type: string lastUsed: format: date-time type: string Dome9.Web.Api.ServiceAccountViewModel: type: object properties: name: maxLength: 50 minLength: 0 pattern: '[^/]+$' type: string id: format: uuid type: string example: 00000000-0000-0000-0000-000000000000 roleIds: type: array items: format: int64 type: integer securitySchemes: API_key_V2: type: http scheme: basic