data.world serviceaccount API

The serviceaccount API from data.world — 3 operation(s) for serviceaccount.

OpenAPI Specification

data-world-serviceaccount-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  contact:
    name: Contact Us
    url: https://data.world/company/contact-us
  termsOfService: https://data.world/terms-policies
  title: data.world Public catalog relationships serviceaccount API
  version: '0'
  description: Manage relationships between catalog resources
servers:
- url: /v0
security:
- bearerAuth: []
tags:
- name: serviceaccount
paths:
  /serviceaccount/{owner}:
    get:
      operationId: getServiceAccounts
      parameters:
      - in: path
        name: owner
        required: true
        schema:
          type: string
      - in: query
        name: limit
        schema:
          type: integer
          format: int32
          default: 10
          maximum: 50
          minimum: 1
      - in: query
        name: next
        schema:
          type: string
      - in: query
        name: sort
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedServiceAccountDetails'
          description: default response
      summary: Gets all service accounts by owner.
      tags:
      - serviceaccount
    post:
      operationId: createServiceAccount
      parameters:
      - in: path
        name: owner
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceAccountCreateRequestDto'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceAccountCreateResponseDto'
          description: default response
      summary: Create a new service account.
      tags:
      - serviceaccount
  /serviceaccount/{serviceAccount}:
    delete:
      operationId: deleteServiceAccount
      parameters:
      - in: path
        name: serviceAccount
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Delete service account
      tags:
      - serviceaccount
    patch:
      operationId: updateServiceAccount
      parameters:
      - in: path
        name: serviceAccount
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceAccountUpdateDto'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SuccessMessage'
          description: default response
      summary: Update service account
      tags:
      - serviceaccount
  /serviceaccount/{serviceAccount}/refresh:
    post:
      operationId: refreshServiceAccountToken
      parameters:
      - in: path
        name: serviceAccount
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceAccountRefreshTokenRequestDto'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceAccountCreateResponseDto'
          description: default response
      summary: Refresh service account token
      tags:
      - serviceaccount
components:
  schemas:
    ServiceAccountRefreshTokenRequestDto:
      type: object
      properties:
        expiryDate:
          type: string
          format: date-time
    ServiceAccountUpdateDto:
      type: object
      properties:
        active:
          type: boolean
        displayName:
          type: string
      required:
      - active
    SuccessMessage:
      type: object
      properties:
        message:
          type: string
          maxLength: 256
          minLength: 0
    ServiceAccountCreateResponseDto:
      type: object
      properties:
        active:
          type: string
        serviceAccountUsername:
          type: string
        token:
          type: string
    ServiceAccountCreateRequestDto:
      type: object
      properties:
        desiredUsername:
          type: string
          description: Used to create service account user name
        displayName:
          type: string
          description: Display name to show in UI
        expiryDate:
          type: string
          format: date-time
        isScimEnabled:
          type: boolean
          writeOnly: true
        scimEnabled:
          type: boolean
    PaginatedServiceAccountDetails:
      type: object
      properties:
        count:
          type: integer
          format: int32
          minimum: 0
        nextPageToken:
          type: string
        records:
          type: array
          items:
            $ref: '#/components/schemas/ServiceAccountDetailsDto'
      required:
      - count
      - records
    ServiceAccountDetailsDto:
      type: object
      properties:
        active:
          type: boolean
          description: Indicate service account token enabled or disabled
        displayName:
          type: string
          description: Human-readable service account name
        expiryDate:
          type: string
          format: date-time
          description: Service account token expiry date
        serviceAccount:
          type: string
          description: Agentid or username
  securitySchemes:
    bearerAuth:
      bearerFormat: JWT
      scheme: bearer
      type: http