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`.