Credentially Profile Groups API

Organisation groups proxy endpoints

OpenAPI Specification

credentially-profile-groups-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Credentially Public Compliance-packages Profile Groups API
  description: Public API Proxy with Rate Limiting and Audit
  version: 2.0.0
servers:
- url: https://app.credentially.io/gateway
  description: Generated server url
tags:
- name: Profile Groups
  description: Organisation groups proxy endpoints
paths:
  /api/profile/groups:
    get:
      tags:
      - Profile Groups
      summary: Load Organisation Groups
      description: 'Fetches all existing organisation groups and returns their id and name.


        **Rate Limit:** `profile-groups-load` (100 req / 1s)'
      operationId: loadAllGroups
      parameters:
      - name: X-API-Version
        in: header
        schema:
          type: string
          default: 2.0.0
          enum:
          - 2.0.0
      responses:
        '200':
          description: Groups loaded
          content:
            '*/*':
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrganisationGroupDto'
        '500':
          description: Internal server error
        '429':
          description: Too many requests - the rate limit for this endpoint has been exceeded. Use the Retry-After header to determine when to retry.
          headers:
            Retry-After:
              description: Number of seconds to wait before retrying the request.
              schema:
                type: integer
                format: int32
                example: 1
      security:
      - bearer-key: []
    post:
      tags:
      - Profile Groups
      summary: Create Organisation Group
      description: 'Creates a new organisation group.


        **Rate Limit:** `profile-groups-load` (100 req / 1s)'
      operationId: createGroup
      parameters:
      - name: X-API-Version
        in: header
        schema:
          type: string
          default: 2.0.0
          enum:
          - 2.0.0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateOrganisationGroupRequestDto'
        required: true
      responses:
        '201':
          description: Group created
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/OrganisationGroupDto'
        '500':
          description: Internal server error
        '429':
          description: Too many requests - the rate limit for this endpoint has been exceeded. Use the Retry-After header to determine when to retry.
          headers:
            Retry-After:
              description: Number of seconds to wait before retrying the request.
              schema:
                type: integer
                format: int32
                example: 1
      security:
      - bearer-key: []
  /api/profile/groups/{groupPublicId}:
    delete:
      tags:
      - Profile Groups
      summary: Delete Organisation Group
      description: 'Deletes an organisation group by public id.


        **Rate Limit:** `profile-groups-delete` (25 req / 1s)'
      operationId: deleteGroup
      parameters:
      - name: groupPublicId
        in: path
        required: true
        schema:
          type: string
      - name: X-API-Version
        in: header
        schema:
          type: string
          default: 2.0.0
          enum:
          - 2.0.0
      responses:
        '204':
          description: Group deleted
        '500':
          description: Internal server error
        '429':
          description: Too many requests - the rate limit for this endpoint has been exceeded. Use the Retry-After header to determine when to retry.
          headers:
            Retry-After:
              description: Number of seconds to wait before retrying the request.
              schema:
                type: integer
                format: int32
                example: 1
      security:
      - bearer-key: []
    patch:
      tags:
      - Profile Groups
      summary: Update Organisation Group
      description: 'Updates an existing organisation group.


        **Rate Limit:** `profile-groups-delete` (25 req / 1s)'
      operationId: updateGroup
      parameters:
      - name: groupPublicId
        in: path
        required: true
        schema:
          type: string
      - name: X-API-Version
        in: header
        schema:
          type: string
          default: 2.0.0
          enum:
          - 2.0.0
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateOrganisationGroupRequestDto'
        required: true
      responses:
        '200':
          description: Group updated
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/OrganisationGroupDto'
        '500':
          description: Internal server error
        '429':
          description: Too many requests - the rate limit for this endpoint has been exceeded. Use the Retry-After header to determine when to retry.
          headers:
            Retry-After:
              description: Number of seconds to wait before retrying the request.
              schema:
                type: integer
                format: int32
                example: 1
      security:
      - bearer-key: []
components:
  schemas:
    UpdateOrganisationGroupRequestDto:
      type: object
      properties:
        name:
          type: string
        tags:
          type: array
          items:
            type: string
    CreateOrganisationGroupRequestDto:
      type: object
      properties:
        name:
          type: string
        tags:
          type: array
          items:
            type: string
    OrganisationGroupDto:
      type: object
      properties:
        id:
          type: string
        name:
          type: string
  securitySchemes:
    bearer-key:
      type: http
      scheme: bearer
      bearerFormat: JWT