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/trakstar-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: Trakstar Learn Courses API
description: The Trakstar Learn REST API (based on the Mindflash platform) allows developers to manage user accounts, group assignments, course and module enrollments, user status, and reporting programmatically. The API supports pagination and filtering. API keys are provisioned by the Trakstar Learn support team upon request. The API enforces a rate limit of 10 requests per 10 seconds per API key.
version: '3'
contact:
name: Trakstar Learn Support
email: learn@trakstar.com
license:
name: Proprietary
servers:
- url: https://api.mindflash.com/api/v3
description: Trakstar Learn (Mindflash) API v3
security:
- apiKey: []
tags:
- name: Courses
description: Manage course enrollment and information
paths:
/course:
get:
operationId: listCourses
summary: List Courses
description: Returns a list of all courses in the organization.
tags:
- Courses
parameters:
- name: status
in: query
description: Filter results by course status.
required: false
schema:
type: string
enum:
- Active
- Archive
- All
default: All
responses:
'200':
description: A list of courses.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Course'
example:
- id: 1662438386
name: Course A
description: Introduction to safety procedures
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/TooManyRequests'
/course/{courseId}:
get:
operationId: getCourse
summary: Get Course
description: Returns detailed information for a specific course.
tags:
- Courses
parameters:
- name: courseId
in: path
required: true
description: The Mindflash ID of the course.
schema:
type: integer
format: int64
- name: status
in: query
description: Filter results by course status.
required: false
schema:
type: string
enum:
- Active
- Archive
- All
responses:
'200':
description: A single course with detailed information.
content:
application/json:
schema:
$ref: '#/components/schemas/CourseDetail'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
/course/{courseId}/user/{userId}:
post:
operationId: inviteUserToCourse
summary: Invite User to Course
description: Invites a specific user to a specific course.
tags:
- Courses
parameters:
- name: courseId
in: path
required: true
description: The Mindflash ID of the course.
schema:
type: integer
format: int64
- name: userId
in: path
required: true
description: The Mindflash ID of the user.
schema:
type: integer
format: int64
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
clientDatestamp:
type: string
format: date
description: The current date in YYYY-MM-DD format.
required:
type: boolean
description: Set true to make the course required for the user.
default: false
example:
clientDatestamp: '2024-01-15'
required: false
responses:
'200':
description: User invited to course successfully.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
/course/{courseId}/user:
post:
operationId: inviteUsersToCourse
summary: Invite Multiple Users to Course
description: Invites multiple users to a specific course.
tags:
- Courses
parameters:
- name: courseId
in: path
required: true
description: The Mindflash ID of the course.
schema:
type: integer
format: int64
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
userIds:
type: array
items:
type: integer
format: int64
description: List of Mindflash user IDs to invite.
clientDatestamp:
type: string
format: date
description: The current date in YYYY-MM-DD format.
required:
type: boolean
description: Set true to make the course required for the users.
default: false
responses:
'200':
description: Users invited to course successfully.
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'429':
$ref: '#/components/responses/TooManyRequests'
components:
schemas:
Course:
type: object
description: A course in Trakstar Learn.
properties:
id:
type: integer
format: int64
description: Unique Mindflash course identifier.
readOnly: true
name:
type: string
description: Name of the course.
description:
type:
- string
- 'null'
description: Course description.
status:
type: string
description: Course status.
enum:
- Active
- Archive
Error:
type: object
properties:
message:
type: string
description: Human-readable error message.
errors:
type: array
items:
type: string
CourseDetail:
allOf:
- $ref: '#/components/schemas/Course'
- type: object
properties:
modules:
type: array
description: Modules within the course.
items:
type: object
properties:
id:
type: integer
format: int64
name:
type: string
type:
type: string
responses:
BadRequest:
description: The request was invalid or cannot be otherwise served.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: The requested resource could not be found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Authentication credentials were not provided or are invalid.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
TooManyRequests:
description: Rate limit exceeded. The API enforces a limit of 10 requests per 10 seconds per API key.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
apiKey:
type: apiKey
in: header
name: x-mindflash-apikey
description: API key provisioned by Trakstar Learn support team. Contact learn@trakstar.com to request access.
externalDocs:
description: Trakstar Learn API Documentation
url: https://support.learn.trakstar.com/article/815-workflow-api-documentation