Trakstar Courses API

Manage course enrollment and information

Operations 4

GET /course List Courses #
GET /course/{courseId} Get Course #
POST /course/{courseId}/user/{userId} Invite User to Course #
POST /course/{courseId}/user Invite Multiple Users to Course #

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.
All 92 tools →

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

trakstar-courses-api-openapi.yml Raw ↑
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