Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/accredify0604-courses-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Accredify0604 Courses API
version: '1.0'
description: 'Operations tagged Courses across 2 of this provider''s published API definitions: accredify0604-dashboard-v2-openapi.yaml, accredify0604-nexus-workflow-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: http://dashboard.local.accredify.io/api/v2
description: Accredify Local (Local)
- url: https://dashboard.uat.accredify.io/api/v2
description: Accredify Sandbox (UAT)
- url: https://dashboard.accredify.io/api/v2
description: Accredify Main Server (Production)
- url: https://nexus.staging.accredify.io
description: Staging
- url: https://nexus.uat.accredify.io
description: UAT
- url: https://nexus.accredify.io
description: Production
tags:
- name: Courses
description: Courses
paths:
/courses:
get:
tags:
- Courses
summary: Get list of courses
description: Returns a paginated list of courses for the logged-in issuer. Clients can specify 'page' and 'per_page' query parameters to control pagination. Setting 'per_page' to -1 returns all courses without pagination.
operationId: getCourses
parameters:
- name: search
in: query
description: Search term for filtering courses by courseCode.
required: false
schema:
type: string
- name: page
in: query
description: The page number to retrieve
required: false
schema:
type: integer
default: 1
- name: per_page
in: query
description: The number of courses per page. Set to -1 to return all courses.
required: false
schema:
type: integer
default: 10
enum:
- 10
- 25
- 50
- 100
- -1
responses:
'200':
description: Successful operation
content:
application/json:
schema:
properties:
data:
type: array
items:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
course_code:
description: The code to identify the course
type: string
example: COURSE101
course_title:
description: The course's title
type: string
example: Introduction to Course
course_description:
description: The course's description
type: string
example: A detailed course description.
schema:
description: The course's schema
type: string
example: OAv2
issuance_method:
description: The course's issuance method, ['badge', 'certificate', 'certificate_and_badge', 'certificate_with_user_pdf']
type: string
example: badge
template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Provided by Accredify for identifying the template
type: string
example: Standard Template
alias:
description: Provided by customer for identifying the template
type: string
example: standard_template
description:
description: Provided by Accredify for identifying the template
type: string
example: A standard template for general use.
type: object
email_template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Name of your email template
type: string
example: Standard Email Template
description:
description: Description of your email template
type: string
example: A standard template for general use.
subject:
description: The title that appears as the subject header of the email
type: string
example: Congratulations on your certification!
template:
description: The contents of the email template in markdown
type: string
type: object
sharing:
properties:
share_enabled:
description: Is sharing enabled
type: boolean
share_link:
description: Share link (defaults to Accredify's share link if none provided)
type: string
type: object
configurations:
description: For a list of configurations, please visit https://accredify.notion.site/Course-Configurations-ec71dbcecdb643a5b2277c76b929ba86
type: object
example:
hasIssuedDate: true
hasCertId: true
hasEmail: false
allMustApprove: false
expected_attributes:
type: array
items:
type: string
type: object
links:
description: Links for pagination
properties:
first:
type: string
example: https://api.example.com/courses?page=1
last:
type: string
example: https://api.example.com/courses?page=10
prev:
type: string
example: 'null'
next:
type: string
example: https://api.example.com/courses?page=2
type: object
meta:
description: Additional metadata for pagination
properties:
current_page:
type: integer
example: 1
from:
type: integer
example: 1
last_page:
type: integer
example: 10
path:
type: string
example: https://api.example.com/courses
per_page:
type: integer
example: 10
to:
type: integer
example: 10
total:
type: integer
example: 100
type: object
type: object
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnauthenticatedRequest'
'404':
$ref: '#/components/responses/NotFoundRequest'
'422':
$ref: '#/components/responses/UnprocessableEntityRequest'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalErrorRequest'
security:
- bearerAuth: []
post:
tags:
- Courses
summary: Add a new course
description: Creates a new course with the given settings
operationId: createCourse
requestBody:
required: true
content:
application/json:
schema:
required:
- course_code
- course_title
- course_description
- issuance_method
- configurations
properties:
course_code:
description: Unique code for the course
type: string
example: COURSE101
course_title:
description: Title of the course
type: string
example: Introduction to Course
course_description:
description: Description of the course
type: string
example: A detailed course description.
issuance_method:
description: The course's issuance method, ['badge', 'certificate', 'certificate_and_badge', 'certificate_with_user_pdf']
type: string
example: badge
schema:
description: Schema version for the course, required only when the issuance_method is ['certificate', 'certificate_and_badge']
type: string
example: OAv2
template_id:
description: ID of the template to be used for this course, required only when the issuance_method is ['certificate', 'certificate_and_badge']
type: integer
example: 1
email_template_id:
description: ID of the email template to be used for this course
type: integer
example: 1
sharing:
properties:
share_enabled:
description: Whether or not sharing is enabled for the course
type: boolean
example: true
share_link:
description: Custom share link for the course
type: string
example: http://example.com/share
type: object
configurations:
description: Array of course-specific configurations. For a list of configurations, please visit https://accredify.notion.site/Course-Configurations-ec71dbcecdb643a5b2277c76b929ba86
type: array
items:
properties:
key:
description: Configuration key
type: string
value:
description: Configuration value
type: string
type: object
type: object
responses:
'201':
description: Successful operation
content:
application/json:
schema:
properties:
data:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
course_code:
description: The code to identify the course
type: string
example: COURSE101
course_title:
description: The course's title
type: string
example: Introduction to Course
course_description:
description: The course's description
type: string
example: A detailed course description.
schema:
description: The course's schema
type: string
example: OAv2
issuance_method:
description: The course's issuance method, ['badge', 'certificate', 'certificate_and_badge', 'certificate_with_user_pdf']
type: string
example: badge
template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Provided by Accredify for identifying the template
type: string
example: Standard Template
alias:
description: Provided by customer for identifying the template
type: string
example: standard_template
description:
description: Provided by Accredify for identifying the template
type: string
example: A standard template for general use.
type: object
email_template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Name of your email template
type: string
example: Standard Email Template
description:
description: Description of your email template
type: string
example: A standard template for general use.
subject:
description: The title that appears as the subject header of the email
type: string
example: Congratulations on your certification!
template:
description: The contents of the email template in markdown
type: string
type: object
sharing:
properties:
share_enabled:
description: Is sharing enabled
type: boolean
share_link:
description: Share link (defaults to Accredify's share link if none provided)
type: string
type: object
configurations:
description: For a list of configurations, please visit https://accredify.notion.site/Course-Configurations-ec71dbcecdb643a5b2277c76b929ba86
type: object
example:
hasIssuedDate: true
hasCertId: true
hasEmail: false
allMustApprove: false
expected_attributes:
type: array
items:
type: string
type: object
type: object
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnauthenticatedRequest'
'404':
$ref: '#/components/responses/NotFoundRequest'
'422':
$ref: '#/components/responses/UnprocessableEntityRequest'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalErrorRequest'
security:
- bearerAuth: []
servers:
- url: http://dashboard.local.accredify.io/api/v2
description: Accredify Local (Local)
- url: https://dashboard.uat.accredify.io/api/v2
description: Accredify Sandbox (UAT)
- url: https://dashboard.accredify.io/api/v2
description: Accredify Main Server (Production)
/courses/{id}:
get:
tags:
- Courses
summary: Get course by ID
description: Returns a single course
operationId: getCourseById
responses:
'200':
description: Successful operation
content:
application/json:
schema:
properties:
data:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
course_code:
description: The code to identify the course
type: string
example: COURSE101
course_title:
description: The course's title
type: string
example: Introduction to Course
course_description:
description: The course's description
type: string
example: A detailed course description.
schema:
description: The course's schema
type: string
example: OAv2
issuance_method:
description: The course's issuance method, ['badge', 'certificate', 'certificate_and_badge', 'certificate_with_user_pdf']
type: string
example: badge
template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Provided by Accredify for identifying the template
type: string
example: Standard Template
alias:
description: Provided by customer for identifying the template
type: string
example: standard_template
description:
description: Provided by Accredify for identifying the template
type: string
example: A standard template for general use.
type: object
email_template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Name of your email template
type: string
example: Standard Email Template
description:
description: Description of your email template
type: string
example: A standard template for general use.
subject:
description: The title that appears as the subject header of the email
type: string
example: Congratulations on your certification!
template:
description: The contents of the email template in markdown
type: string
type: object
sharing:
properties:
share_enabled:
description: Is sharing enabled
type: boolean
share_link:
description: Share link (defaults to Accredify's share link if none provided)
type: string
type: object
configurations:
description: For a list of configurations, please visit https://accredify.notion.site/Course-Configurations-ec71dbcecdb643a5b2277c76b929ba86
type: object
example:
hasIssuedDate: true
hasCertId: true
hasEmail: false
allMustApprove: false
expected_attributes:
type: array
items:
type: string
type: object
type: object
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnauthenticatedRequest'
'404':
$ref: '#/components/responses/NotFoundRequest'
'422':
$ref: '#/components/responses/UnprocessableEntityRequest'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalErrorRequest'
security:
- bearerAuth: []
patch:
tags:
- Courses
summary: Update an existing course
description: Updates an existing course with the given settings. Fields are optional.
operationId: updateCourse
parameters:
- name: id
in: path
description: ID of the course to update
required: true
schema:
type: integer
requestBody:
required: true
content:
application/json:
schema:
properties:
course_code:
description: Unique code for the course
type: string
example: COURSE101
course_title:
description: Title of the course
type: string
example: Introduction to Course
course_description:
description: Description of the course
type: string
example: A detailed course description.
template_id:
description: ID of the template to be used for this course
type: integer
example: 1
email_template_id:
description: ID of the email template to be used for this course
type: integer
example: 1
sharing:
properties:
share_enabled:
description: Whether or not sharing is enabled for the course
type: boolean
example: true
share_link:
description: Custom share link for the course
type: string
example: http://example.com/share
type: object
configurations:
description: Array of course-specific configurations. For a list of configurations, please visit https://accredify.notion.site/Course-Configurations-ec71dbcecdb643a5b2277c76b929ba86
type: array
items:
properties:
key:
description: Configuration key
type: string
value:
description: Configuration value
type: string
type: object
type: object
responses:
'200':
description: Successful operation
content:
application/json:
schema:
properties:
data:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
course_code:
description: The code to identify the course
type: string
example: COURSE101
course_title:
description: The course's title
type: string
example: Introduction to Course
course_description:
description: The course's description
type: string
example: A detailed course description.
schema:
description: The course's schema
type: string
example: OAv2
issuance_method:
description: The course's issuance method, ['badge', 'certificate', 'certificate_and_badge', 'certificate_with_user_pdf']
type: string
example: badge
template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Provided by Accredify for identifying the template
type: string
example: Standard Template
alias:
description: Provided by customer for identifying the template
type: string
example: standard_template
description:
description: Provided by Accredify for identifying the template
type: string
example: A standard template for general use.
type: object
email_template:
properties:
id:
description: Provided by Accredify
type: integer
example: 1
name:
description: Name of your email template
type: string
example: Standard Email Template
description:
description: Description of your email template
type: string
example: A standard template for general use.
subject:
description: The title that appears as the subject header of the email
type: string
example: Congratulations on your certification!
template:
description: The contents of the email template in markdown
type: string
type: object
sharing:
properties:
share_enabled:
description: Is sharing enabled
type: boolean
share_link:
description: Share link (defaults to Accredify's share link if none provided)
type: string
type: object
configurations:
description: For a list of configurations, please visit https://accredify.notion.site/Course-Configurations-ec71dbcecdb643a5b2277c76b929ba86
type: object
example:
hasIssuedDate: true
hasCertId: true
hasEmail: false
allMustApprove: false
expected_attributes:
type: array
items:
type: string
type: object
type: object
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/UnauthenticatedRequest'
'404':
$ref: '#/components/responses/NotFoundRequest'
'422':
$ref: '#/components/responses/UnprocessableEntityRequest'
'429':
$ref: '#/components/responses/TooManyRequests'
'500':
$ref: '#/components/responses/InternalErrorRequest'
security:
- bearerAuth: []
servers:
- url: http://dashboard.local.accredify.io/api/v2
description: Accredify Local (Local)
- url: https://dashboard.uat.accredify.io/api/v2
description: Accredify Sandbox (UAT)
- url: https://dashboard.accredify.io/api/v2
description: Accredify Main Server (Production)
/api/v1/courses:
get:
summary: Get list of courses
description: Retrieve a paginated list of courses with optional filtering by groups and search terms. Each course includes the workflows its latest published version is attached to.
tags:
- Courses
security:
- OAuth2:
- courses:read
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Course'
links:
$ref: '#/components/schemas/PaginationLinks'
meta:
$ref: '#/components/schemas/PaginationMeta'
required:
- data
- links
- meta
examples:
Example 1:
value:
data:
- uuid: 9feb59d1-27fe-4607-9e1c-fe212f0d8691
title: Introduction to Statistics
code: IS10131
group_uuid: 9fea6580-5f09-43d0-bee5-b28bb527cb17
versions:
- uuid: 9feb59d1-2906-4e18-8731-43551191a684
title: Introduction to Statistics
version: '1'
course_type: skills_passport
settings:
ssec_version: '2020'
eqa_code: '11'
eqa_title: Primary School Leaving Examination (PSLE) / Primary School Proficiency Examination (PSPE) certificate or equivalent
fos_code: '011'
fos_title: TEACHER TRAINING
skills_passport_course_type: academic
latest_version:
uuid: 9feb59d1-2906-4e18-8731-43551191a684
title: Introduction to Statistics
version: '1'
course_type: skills_passport
settings:
ssec_version: '2020'
eqa_code: '11'
eqa_title: Primary School Leaving Examination (PSLE) / Primary School Proficiency Examination (PSPE) certificate or equivalent
fos_code: '011'
fos_title: TEACHER TRAINING
skills_passport_course_type: academic
w
# --- truncated at 32 KB (80 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/accredify0604/refs/heads/main/openapi/accredify0604-courses-api-openapi.yml