Accredible Team Members API

Administrators and roles within the issuer account.

OpenAPI Specification

accredible-team-members-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Accredible Analytics Team Members API
  description: The Accredible API issues, manages, and verifies digital credentials - certificates and Open Badges - programmatically. Credentials are issued to a recipient against a Group (a course or achievement) and rendered with a reusable Design. The API also manages Evidence Items and References attached to credentials, generates credential PDFs and blockchain-verifiable records, returns engagement analytics, administers Departments and Team Members, and generates recipient SSO links. All requests are authenticated with an API key sent in the Authorization header using the scheme `Token token=YOUR_API_KEY`. Production base URL is https://api.accredible.com/v1; a sandbox is available at https://sandbox.api.accredible.com/v1. Endpoints and paths are grounded in Accredible's published API reference; request and response schemas are modeled and simplified.
  version: '1.0'
  contact:
    name: Accredible
    url: https://www.accredible.com
  license:
    name: Proprietary
    url: https://www.accredible.com/terms-of-service
servers:
- url: https://api.accredible.com/v1
  description: Production
- url: https://sandbox.api.accredible.com/v1
  description: Sandbox
security:
- tokenAuth: []
tags:
- name: Team Members
  description: Administrators and roles within the issuer account.
paths:
  /team_members:
    post:
      operationId: createTeamMember
      tags:
      - Team Members
      summary: Create a team member
      description: Adds a new Team Member (administrator) to the issuer account.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                team_member:
                  $ref: '#/components/schemas/TeamMemberInput'
      responses:
        '200':
          description: The created team member.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /team_members/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: integer
    get:
      operationId: getTeamMember
      tags:
      - Team Members
      summary: View a team member
      description: Retrieves a single Team Member by ID.
      responses:
        '200':
          description: The requested team member.
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateTeamMember
      tags:
      - Team Members
      summary: Update a team member
      description: Updates a Team Member's details or role.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                team_member:
                  $ref: '#/components/schemas/TeamMemberInput'
      responses:
        '200':
          description: The updated team member.
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deleteTeamMember
      tags:
      - Team Members
      summary: Delete a team member
      description: Removes a Team Member from the issuer account.
      responses:
        '200':
          description: The team member was deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  responses:
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Invalid or missing API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
          description: A human-readable error message.
        errors:
          type: array
          items:
            type: string
    TeamMemberInput:
      type: object
      properties:
        name:
          type: string
          description: The team member's name.
        email:
          type: string
          description: The team member's email address.
        role:
          type: string
          description: The team member's role.
  securitySchemes:
    tokenAuth:
      type: apiKey
      in: header
      name: Authorization
      description: API key sent in the Authorization header using the scheme `Token token=YOUR_API_KEY`.