SigNoz serviceaccount API

The serviceaccount API from SigNoz — 7 operation(s) for serviceaccount.

OpenAPI Specification

signoz-serviceaccount-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  contact:
    email: support@signoz.io
    name: SigNoz Support
    url: https://signoz.io
  description: OpenTelemetry-Native Logs, Metrics and Traces in a single pane
  termsOfService: https://signoz.io/terms-of-service/
  title: SigNoz alerts serviceaccount API
  version: ''
servers:
- description: The fully qualified URL to the SigNoz APIServer.
  url: https://{host}:{port}{base_path}
  variables:
    base_path:
      default: /
      description: The base path of the SigNoz APIServer
    host:
      default: localhost
      description: The host of the SigNoz APIServer
    port:
      default: '8080'
      description: The port of the SigNoz APIServer
tags:
- name: serviceaccount
paths:
  /api/v1/service_accounts:
    get:
      deprecated: false
      description: This endpoint lists the service accounts for an organisation
      operationId: ListServiceAccounts
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    items:
                      $ref: '#/components/schemas/ServiceaccounttypesServiceAccount'
                    type: array
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: List service accounts
      tags:
      - serviceaccount
    post:
      deprecated: false
      description: This endpoint creates a service account
      operationId: CreateServiceAccount
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccount'
      responses:
        '201':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/TypesIdentifiable'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Conflict
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Create service account
      tags:
      - serviceaccount
  /api/v1/service_accounts/{id}:
    delete:
      deprecated: false
      description: This endpoint deletes an existing service account
      operationId: DeleteServiceAccount
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '204':
          content:
            application/json:
              schema:
                type: string
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Deletes a service account
      tags:
      - serviceaccount
    get:
      deprecated: false
      description: This endpoint gets an existing service account
      operationId: GetServiceAccount
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/ServiceaccounttypesServiceAccountWithRoles'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Gets a service account
      tags:
      - serviceaccount
    put:
      deprecated: false
      description: This endpoint updates an existing service account
      operationId: UpdateServiceAccount
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccount'
      responses:
        '204':
          content:
            application/json:
              schema:
                type: string
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Updates a service account
      tags:
      - serviceaccount
  /api/v1/service_accounts/{id}/keys:
    get:
      deprecated: false
      description: This endpoint lists the service account keys
      operationId: ListServiceAccountKeys
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    items:
                      $ref: '#/components/schemas/ServiceaccounttypesGettableFactorAPIKey'
                    type: array
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: List service account keys
      tags:
      - serviceaccount
    post:
      deprecated: false
      description: This endpoint creates a service account key
      operationId: CreateServiceAccountKey
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceaccounttypesPostableFactorAPIKey'
      responses:
        '201':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/ServiceaccounttypesGettableFactorAPIKeyWithKey'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Conflict
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Create a service account key
      tags:
      - serviceaccount
  /api/v1/service_accounts/{id}/keys/{fid}:
    delete:
      deprecated: false
      description: This endpoint revokes an existing service account key
      operationId: RevokeServiceAccountKey
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - in: path
        name: fid
        required: true
        schema:
          type: string
      responses:
        '204':
          content:
            application/json:
              schema:
                type: string
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Revoke a service account key
      tags:
      - serviceaccount
    put:
      deprecated: false
      description: This endpoint updates an existing service account key
      operationId: UpdateServiceAccountKey
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - in: path
        name: fid
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceaccounttypesUpdatableFactorAPIKey'
      responses:
        '204':
          content:
            application/json:
              schema:
                type: string
          description: No Content
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Updates a service account key
      tags:
      - serviceaccount
  /api/v1/service_accounts/{id}/roles:
    get:
      deprecated: false
      description: This endpoint gets all the roles for the existing service account
      operationId: GetServiceAccountRoles
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    items:
                      $ref: '#/components/schemas/AuthtypesRole'
                    nullable: true
                    type: array
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Gets service account roles
      tags:
      - serviceaccount
    post:
      deprecated: false
      description: This endpoint assigns a role to a service account
      operationId: CreateServiceAccountRole
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccountRole'
      responses:
        '201':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/TypesIdentifiable'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: Created
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Create service account role
      tags:
      - serviceaccount
  /api/v1/service_accounts/{id}/roles/{rid}:
    delete:
      deprecated: false
      description: This endpoint revokes a role from service account
      operationId: DeleteServiceAccountRole
      parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
      - in: path
        name: rid
        required: true
        schema:
          type: string
      responses:
        '204':
          content:
            application/json:
              schema:
                type: string
          description: No Content
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Forbidden
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      security:
      - api_key:
        - ADMIN
      - tokenizer:
        - ADMIN
      summary: Delete service account role
      tags:
      - serviceaccount
  /api/v1/service_accounts/me:
    get:
      deprecated: false
      description: This endpoint gets my service account
      operationId: GetMyServiceAccount
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  data:
                    $ref: '#/components/schemas/ServiceaccounttypesServiceAccountWithRoles'
                  status:
                    type: string
                required:
                - status
                - data
                type: object
          description: OK
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      summary: Gets my service account
      tags:
      - serviceaccount
    put:
      deprecated: false
      description: This endpoint gets my service account
      operationId: UpdateMyServiceAccount
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceaccounttypesPostableServiceAccount'
      responses:
        '204':
          content:
            application/json:
              schema:
                type: string
          description: No Content
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Not Found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RenderErrorResponse'
          description: Internal Server Error
      summary: Updates my service account
      tags:
      - serviceaccount
components:
  schemas:
    ServiceaccounttypesGettableFactorAPIKeyWithKey:
      properties:
        id:
          type: string
        key:
          type: string
      required:
      - id
      - key
      type: object
    RenderErrorResponse:
      properties:
        error:
          $ref: '#/components/schemas/ErrorsJSON'
        status:
          type: string
      required:
      - status
      - error
      type: object
    ServiceaccounttypesServiceAccountRole:
      properties:
        createdAt:
          format: date-time
          type: string
        id:
          type: string
        role:
          $ref: '#/components/schemas/AuthtypesRole'
        roleId:
          type: string
        serviceAccountId:
          type: string
        updatedAt:
          format: date-time
          type: string
      required:
      - id
      - serviceAccountId
      - roleId
      - role
      type: object
    ServiceaccounttypesPostableServiceAccount:
      properties:
        name:
          type: string
      required:
      - name
      type: object
    ServiceaccounttypesUpdatableFactorAPIKey:
      properties:
        expiresAt:
          minimum: 0
          type: integer
        name:
          type: string
      required:
      - name
      - expiresAt
      type: object
    ServiceaccounttypesPostableFactorAPIKey:
      properties:
        expiresAt:
          minimum: 0
          type: integer
        name:
          type: string
      required:
      - name
      - expiresAt
      type: object
    ErrorsJSON:
      properties:
        code:
          type: string
        errors:
          items:
            $ref: '#/components/schemas/ErrorsResponseerroradditional'
          type: array
        message:
          type: string
        url:
          type: string
      required:
      - code
      - message
      type: object
    ServiceaccounttypesServiceAccount:
      properties:
        createdAt:
          format: date-time
          type: string
        email:
          type: string
        id:
          type: string
        name:
          type: string
        orgId:
          type: string
        status:
          type: string
        updatedAt:
          format: date-time
          type: string
      required:
      - id
      - name
      - email
      - status
      - orgId
      type: object
    ServiceaccounttypesPostableServiceAccountRole:
      properties:
        id:
          type: string
      required:
      - id
      type: object
    ServiceaccounttypesServiceAccountWithRoles:
      properties:
        createdAt:
          format: date-time
          type: string
        email:
          type: string
        id:
          type: string
        name:
          type: string
        orgId:
          type: string
        serviceAccountRoles:
          items:
            $ref: '#/components/schemas/ServiceaccounttypesServiceAccountRole'
          nullable: true
          type: array
        status:
          type: string
        updatedAt:
          format: date-time
          type: string
      required:
      - id
      - name
      - email
      - status
      - orgId
      - serviceAccountRoles
      type: object
    ErrorsResponseerroradditional:
      properties:
        message:
          type: string
      type: object
    ServiceaccounttypesGettableFactorAPIKey:
      properties:
        createdAt:
          format: date-time
          type: string
        expiresAt:
          minimum: 0
          type: integer
        id:
          type: string
        lastObservedAt:
          format: date-time
          type: string
        name:
          type: string
        serviceAccountId:
          type: string
        updatedAt:
          format: date-time
          type: string
      required:
      - id
      - expiresAt
      - lastObservedAt
      - serviceAccountId
      type: object
    AuthtypesRole:
      properties:
        createdAt:
          format: date-time
          type: string
        description:
          type: string
        id:
          type: string
        name:
          type: string
        orgId:
          type: string
        type:
          type: string
        updatedAt:
          format: date-time
          type: string
      required:
      - id
      - name
      - description
      - type
      - orgId
      type: object
    TypesIdentifiable:
      properties:
        id:
          type: string
      required:
      - id
      type: object
  securitySchemes:
    api_key:
      description: API Keys
      in: header
      name: SigNoz-Api-Key
      type: apiKey
    tokenizer:
      bearerFormat: Tokenizer
      description: Tokens generated by the tokenizer
      scheme: bearer
      type: http