openapi: 3.1.0 info: title: Adobe Captivate Prime API (Learning Manager) Account Catalogs API description: The Adobe Learning Manager (formerly Captivate Prime) API v2 provides programmatic access to the Learning Management System for managing learning objects, courses, users, enrollments, certifications, skills, badges, gamification, catalogs, and user groups. The API follows the JSON:API specification and uses OAuth 2.0 for authentication. It enables integration with third-party systems for automating learner management, content delivery, and reporting. version: '2' contact: name: Adobe Learning Manager Support url: https://helpx.adobe.com/learning-manager/kb/helpdesk.html termsOfService: https://www.adobe.com/legal/terms.html license: name: Adobe Terms of Use url: https://www.adobe.com/legal/terms.html servers: - url: https://learningmanager.adobe.com/primeapi/v2 description: Adobe Learning Manager Production API security: - oauth2: [] tags: - name: Catalogs description: Manage content catalogs that organize learning objects paths: /catalogs: get: operationId: getCatalogs summary: Adobe Captivate List Catalogs description: Retrieves a paginated list of catalogs available to the authenticated user. Catalogs organize learning objects and control visibility. tags: - Catalogs parameters: - $ref: '#/components/parameters/pageOffset' - $ref: '#/components/parameters/pageLimit' - name: include in: query description: 'Comma-separated list of related resources to include. Valid values: learningObjects' schema: type: string responses: '200': description: List of catalogs content: application/vnd.api+json: schema: $ref: '#/components/schemas/CatalogListResponse' examples: getCatalogs200Example: summary: Default getCatalogs 200 response x-microcks-default: true value: data: - example links: self: https://example.com/path/abc123 next: https://example.com/path/abc123 prev: https://example.com/path/abc123 '401': description: Unauthorized content: application/vnd.api+json: schema: $ref: '#/components/schemas/ErrorResponse' examples: getCatalogs401Example: summary: Default getCatalogs 401 response x-microcks-default: true value: source: info: example status: active title: example detail: example code: example x-microcks-operation: delay: 0 dispatcher: FALLBACK /catalogs/{catalogId}: get: operationId: getCatalog summary: Adobe Captivate Get a Catalog description: Retrieves a single catalog by its ID. tags: - Catalogs parameters: - $ref: '#/components/parameters/catalogId' - name: include in: query description: Comma-separated list of related resources to include schema: type: string responses: '200': description: Catalog details content: application/vnd.api+json: schema: $ref: '#/components/schemas/CatalogResponse' examples: getCatalog200Example: summary: Default getCatalog 200 response x-microcks-default: true value: data: id: abc123 type: standard attributes: dateCreated: '2025-03-15T14:30:00Z' dateUpdated: '2025-03-15T14:30:00Z' description: Example description isDefault: true isInternallySearchable: true relationships: learningObjects: example '404': description: Catalog not found content: application/vnd.api+json: schema: $ref: '#/components/schemas/ErrorResponse' examples: getCatalog404Example: summary: Default getCatalog 404 response x-microcks-default: true value: source: info: example status: active title: example detail: example code: example x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: CatalogResponse: type: object description: Single catalog response properties: data: $ref: '#/components/schemas/Catalog' Relationship: type: object description: A JSON:API relationship object properties: data: oneOf: - $ref: '#/components/schemas/ResourceIdentifier' - type: array items: $ref: '#/components/schemas/ResourceIdentifier' links: type: object properties: related: type: string format: uri description: URL to fetch the related resource ErrorResponse: type: object description: Error response following JSON:API error format properties: source: type: object properties: info: type: string description: URL to the API documentation status: type: string description: HTTP status code title: type: string description: Short error title detail: type: string description: Human-readable error description code: type: string description: Machine-readable error code Catalog: type: object description: A catalog that organizes and controls access to learning objects properties: id: type: string description: Unique catalog identifier type: type: string const: catalog attributes: type: object properties: dateCreated: type: string format: date-time description: Timestamp when the catalog was created dateUpdated: type: string format: date-time description: Timestamp of the last update description: type: string description: Catalog description isDefault: type: boolean description: Whether this is the default catalog isInternallySearchable: type: boolean description: Whether learning objects in this catalog appear in search name: type: string description: Catalog name state: type: string description: Catalog state enum: - Enabled - Disabled relationships: type: object properties: learningObjects: $ref: '#/components/schemas/Relationship' ResourceIdentifier: type: object description: JSON:API resource identifier required: - id - type properties: id: type: string description: Resource identifier type: type: string description: Resource type name PaginationLinks: type: object description: Pagination links following JSON:API conventions properties: self: type: string format: uri description: URL for the current page next: type: string format: uri description: URL for the next page prev: type: string format: uri description: URL for the previous page CatalogListResponse: type: object description: Paginated list of catalogs properties: data: type: array items: $ref: '#/components/schemas/Catalog' links: $ref: '#/components/schemas/PaginationLinks' parameters: pageLimit: name: page[limit] in: query description: Maximum number of records to return per page (max 10) schema: type: integer default: 10 maximum: 10 pageOffset: name: page[offset] in: query description: The offset for pagination (number of records to skip) schema: type: integer default: 0 minimum: 0 catalogId: name: catalogId in: path required: true description: The unique identifier of the catalog schema: type: string securitySchemes: oauth2: type: oauth2 description: OAuth 2.0 authentication via Adobe IMS. Supports authorization code flow for user-context access and client credentials flow for application-level access. flows: authorizationCode: authorizationUrl: https://learningmanager.adobe.com/oauth/o/authorize tokenUrl: https://learningmanager.adobe.com/oauth/token refreshUrl: https://learningmanager.adobe.com/oauth/token/refresh scopes: learner:read: Read access to learner data learner:write: Write access to learner data admin:read: Read access to admin data admin:write: Write access to admin data clientCredentials: tokenUrl: https://learningmanager.adobe.com/oauth/token scopes: learner:read: Read access to learner data admin:read: Read access to admin data admin:write: Write access to admin data externalDocs: description: Adobe Learning Manager API v2 Documentation url: https://captivateprime.adobe.com/docs/primeapi/v2/