Coorpacademy External Courses API

The externalCourses API from Coorpacademy — 5 operation(s) for externalcourses.

Operations 10

GET /repository/{repository}/external-courses Get a list of external course #
POST /repository/{repository}/external-courses Create a external course #
GET /repository/{repository}/external-courses/{ref} #
PUT /repository/{repository}/external-courses/{ref} #
DELETE /repository/{repository}/external-courses/{ref} #
GET /repository/{repository}/external-courses/external-contents Get a list of external content for the given external course #
GET /repository/{repository}/external-courses/{ref}/external-contents Get a list of external content for the given external course #
POST /repository/{repository}/external-courses/{ref}/external-contents Create a external content related to an external course #
PUT /repository/{repository}/external-courses/{ref}/external-contents/{externalContentRef} Updates an exitsing external content related to an external course #
DELETE /repository/{repository}/external-courses/{ref}/external-contents/{externalContentRef} Deletes an exitsing external content related to an external course #

Documentation

Specifications

Other Resources

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/coorpacademy-externalcourses-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

coorpacademy-externalcourses-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: API to manage CoorpAcademy content
  version: 2.276.0
  title: Content External Courses API
servers:
- url: /api/v2
- url: http://localhost:3700/api/v2
- url: https://content-staging.coorpacademy.com/api/v2
- url: https://content.coorpacademy.com/api/v2
host: content.coorpacademy.com
tags:
- name: externalCourses
paths:
  /repository/{repository}/external-courses:
    get:
      tags:
      - externalCourses
      summary: Get a list of external course
      description: Get a list of external course
      operationId: findExternalCourses
      security:
      - token: []
      x-exegesis-controller: external-course
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: refs
        in: query
        schema:
          type: string
        description: list of external course references, separated by comma
      - name: includeDeleted
        in: query
        schema:
          type: boolean
        description: Include deleted external courses on the list
      responses:
        '200':
          description: External courses found
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalCourse'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      tags:
      - externalCourses
      summary: Create a external course
      description: Create a external course
      operationId: createExternalCourse
      security:
      - token: []
      x-exegesis-controller: external-course
      requestBody:
        description: External course in cockpit github format
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalCourse'
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      responses:
        '201':
          description: Created external course
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalCourse'
        '400':
          description: Given data on body request does not match with model definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: The given document with the attributes repository, ref and version already exists in the database.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /repository/{repository}/external-courses/{ref}:
    get:
      tags:
      - externalCourses
      operationId: findOneExternalCourses
      security:
      - token: []
      x-exegesis-controller: external-course
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      responses:
        '200':
          description: Requested external course
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalCourse'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: External course not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalCourse'
        '409':
          description: The given document with the attributes repository, ref and version already exists in the database.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    put:
      tags:
      - externalCourses
      operationId: updateExternalCourse
      security:
      - token: []
      x-exegesis-controller: external-course
      requestBody:
        description: Modifications to be applied to the external courses
        required: true
        content:
          application/json:
            schema:
              type: object
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      responses:
        '201':
          description: External course new version
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalCourse'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - externalCourses
      operationId: removeExternalCourses
      security:
      - token: []
      x-exegesis-controller: external-course
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      responses:
        '204':
          description: External course deleted
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /repository/{repository}/external-courses/external-contents:
    get:
      tags:
      - externalCourses
      summary: Get a list of external content for the given external course
      description: Get a list of external content for the given external course
      operationId: findExternalContentsByRefs
      security:
      - token: []
      x-exegesis-controller: external-content
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: externalCoursesRefs
        in: query
        schema:
          type: string
        description: list of external course references, separated by comma
      - name: includeDeleted
        in: query
        schema:
          type: boolean
        description: Include deleted external courses on the list
      responses:
        '200':
          description: External content found
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalContent'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /repository/{repository}/external-courses/{ref}/external-contents:
    get:
      tags:
      - externalCourses
      summary: Get a list of external content for the given external course
      description: Get a list of external content for the given external course
      operationId: findExternalContents
      security:
      - token: []
      x-exegesis-controller: external-content
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      responses:
        '200':
          description: External content found
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ExternalContent'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    post:
      tags:
      - externalCourses
      summary: Create a external content related to an external course
      description: Create a external content related to an external course
      operationId: createExternalContent
      security:
      - token: []
      x-exegesis-controller: external-content
      requestBody:
        description: given notification
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ExternalContent'
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      responses:
        '201':
          description: Created external content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalContent'
        '400':
          description: Given data on body request does not match with model definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: The given document with the attributes repository, ref and version already exists in the database.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /repository/{repository}/external-courses/{ref}/external-contents/{externalContentRef}:
    put:
      tags:
      - externalCourses
      summary: Updates an exitsing external content related to an external course
      description: Updates an exitsing external content related to an external course
      operationId: updateExternalContent
      security:
      - token: []
      x-exegesis-controller: external-content
      requestBody:
        description: Modifications to be applied to the external content
        required: true
        content:
          application/json:
            schema:
              type: object
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      - name: externalContentRef
        in: path
        description: Reference of the external content
        required: true
        schema:
          type: string
        example: ext_cont_003
      responses:
        '201':
          description: External content updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalContent'
        '400':
          description: Given data on body request does not match with model definition
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: The given document with the attributes repository, ref and version already exists in the database.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      tags:
      - externalCourses
      summary: Deletes an exitsing external content related to an external course
      description: Deletes an exitsing external content related to an external course
      operationId: removeExternalContent
      security:
      - token: []
      x-exegesis-controller: external-content
      parameters:
      - name: repository
        in: path
        description: Ref of the repository
        required: true
        schema:
          type: string
        example: content-core@cockpitRecette-core
      - name: ref
        in: path
        description: Reference of the external course
        required: true
        schema:
          type: string
        example: ext_dis_003
      - name: externalContentRef
        in: path
        description: Reference of the external content
        required: true
        schema:
          type: string
        example: ext_cont_003
      responses:
        '204':
          description: External content deleted
        '401':
          description: User not identified by the server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    MetaVersion:
      type: object
      required:
      - createdBy
      - modifiedBy
      properties:
        createdAt:
          type: string
        updatedAt:
          type: string
        modifiedBy:
          type: string
        createdBy:
          type: string
        taggedNewUntil:
          type: string
          format: date-time
        isoCore:
          type: boolean
        coreBranch:
          type: string
          description: External Course's reference that belongs the current external content
    ExternalContent:
      type: object
      properties:
        parent:
          type: string
          description: External Course's reference that belongs the current external content
        structure:
          type: object
          properties:
            meta:
              $ref: '#/components/schemas/MetaVersion'
            ref:
              type: string
              description: identifier
            universalRef:
              type: string
              description: identifier
            externalRef:
              type: string
              description: identifier on external partner
            app_token:
              type: string
              description: app token (for 7shape courses)
            hideCompleteButton:
              type: boolean
            type:
              type: string
            order:
              type: number
            stars:
              type: number
            duration:
              type: number
            src:
              type: object
              properties:
                mimeType:
                  type: string
                url:
                  type: string
        version:
          type: string
        locales:
          type: object
      example:
        structure:
          meta:
            createdAt: '2016-02-09T10:31:57.702Z'
            updatedAt: '2019-12-13T10:50:42.668Z'
            isoCore: false
            modifiedBy: silouone
            createdBy: LaurenceMD
            externalCourses:
            - ext_dis_41LQRYbi
          hideCompleteButton: false
          app_token: 86fb63f94a2615b40c8fa0a7bc1c40c2
          ref: ext_cont_41-G-7RtWo
          universalRef: ext_cont_41-G-7RtWo
          type: scorm
          order: 1
          stars: 10
          duration: 20
          src:
            mimeType: application/zip
            url: url
          version: '1'
        locales:
          en:
            url: https://s3-eu-west-1.amazonaws.com/scorm/solar_system_en.zip
          fr:
            url: https://s3-eu-west-1.amazonaws.com/scorm/solar_system_fr.zip
    ExternalCourse:
      type: object
      properties:
        _deleted:
          type: boolean
        structure:
          type: object
          properties:
            meta:
              $ref: '#/components/schemas/MetaVersion'
            ref:
              type: string
              description: course identifier
            universalRef:
              type: string
              description: identifier
            hidden:
              type: boolean
            name:
              type: string
            position:
              type: number
            partners:
              type: array
              items:
                type: string
            skills:
              type: array
              items:
                type: string
            thematiques:
              type: array
              items:
                type: string
            version:
              type: string
            cover:
              type: object
              properties:
                description:
                  type: string
                  description: Course desription
                poster:
                  type:
                  - string
                  - 'null'
                resource:
                  type:
                  - string
                  - 'null'
                  description: Course video
                media:
                  type:
                  - object
                  - 'null'
                  properties:
                    mediaUrl:
                      type: string
                      description: Media url
                    mimeType:
                      type: string
                      description: Media mimeType
                    type:
                      type: string
                      description: Media type
            disableLocalesFallback:
              type: boolean
        locales:
          type: object
      example:
        structure:
          ref: ext_dis_41LQRYbi
          universalRef: ext_dis_41LQRYbi
          hidden: false
          name: name
          position: 0
          partners: []
          acquiredSkills:
          - skill_VyP8vXl5We
          - skill_Ey6Iw7lqZg
          - skill_4JePwQgcbe
          skills:
          - skill_Ekp8mtR3H
          thematiques: []
          partnershipType: custom
          disableLocalesFallback: false
          states:
            fr:
              edition: draft
            en:
              edition: validate
          meta:
            createdAt: '2016-02-09T10:31:57.702Z'
            updatedAt: '2019-12-13T10:50:42.668Z'
            isoCore: false
            coreBranch: null
            modifiedBy: silouone
            createdBy: LaurenceMD
          version: '1'
          cover:
            description: description
            poster: med_413YKSsqQ
            resource: 'med_413YKSsqQ '
        locales:
          en:
            name: Solar System
            description: Course description
            skill_4JePwQgcbe: Explain what are the key missions of data scientists and data engineers
            skill_Ey6Iw7lqZg: Describe how data science empowers businesses
            skill_VyP8vXl5We: List the differences between data scientists and data engineers
          fr:
            name: Système solaire
            description: Description de cours
            skill_4JePwQgcbe: Expliquer quelles sont les missions clés des data scientists et des data engineers
            skill_Ey6Iw7lqZg: Saisir l'importance de la science des données pour les entreprises
            skill_VyP8vXl5We: Citer les différences entre les data scientists et les data engineers
    Error:
      type: object
      properties:
        id:
          type: string
        code:
          type: string
        errors:
          type: array
          items:
            type: object
        success:
          type: boolean
        status:
          type: integer
          format: int32
        message:
          type: string
  securitySchemes:
    token:
      type: apiKey
      name: authorization
      in: header