Skilljar Domains > Published Paths API
The Domains > Published Paths API from Skilljar — 2 operation(s) for domains > published paths.
The Domains > Published Paths API from Skilljar — 2 operation(s) for domains > published paths.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/skilljar:skilljar-domains-published-paths-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Skilljar Domains > Published Paths API
version: 1.0.0
description: The Skilljar API provides comprehensive access to our customer education platform, enabling you to programmatically manage courses, users, enrollments, and more.
tags:
- name: Domains > Published Paths
paths:
/v1/domains/{domain_name}/published-paths:
get:
operationId: domains_published_paths_list
description: 'List all Published Paths for the specified domain.
Returns a paginated list of Published Paths available on the domain. Supports filtering and search.'
parameters:
- in: path
name: domain_name
schema:
type: string
pattern: ^[-:\.0-9a-z]+$
required: true
- in: query
name: include_searchable_content
schema:
type: boolean
description: If set to True, the response also includes the following fields ('path_item_list', 'title', 'short_description', 'long_description_html', 'search_keywords' 'tags', 'hidden')
- in: query
name: label__name
schema:
type: string
description: Filters published paths by exact match on label name
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- in: query
name: search
schema:
type: string
description: URL encoded string, return the results and the order as if a catalog search. Note - This does not search within the path_item_list.
tags:
- Domains > Published Paths
security:
- OrganizationApiKey: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedPublishedPathList'
description: ''
summary: Domains published paths list
x-summary-source: derived
post:
operationId: domains_published_paths_create
description: 'Create a new Published Path and its associated Path object.
The created Published Path will have a default Offer attached.
Required and optional fields for the Path object are documented in the schema.'
parameters:
- in: path
name: domain_name
schema:
type: string
pattern: ^[-:\.0-9a-z]+$
required: true
tags:
- Domains > Published Paths
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PublishedPathRequest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PublishedPathRequest'
multipart/form-data:
schema:
$ref: '#/components/schemas/PublishedPathRequest'
required: true
security:
- OrganizationApiKey: []
- tokenAuth: []
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/PublishedPath'
description: ''
summary: Domains published paths create
x-summary-source: derived
/v1/domains/{domain_name}/published-paths/{published_path_id}:
get:
operationId: domains_published_paths_retrieve
description: 'Retrieve details for a specific Published Path.
Returns all metadata and configuration for the Published Path, including associated offers and path details.'
parameters:
- in: path
name: domain_name
schema:
type: string
pattern: ^[-:\.0-9a-z]+$
required: true
- in: path
name: published_path_id
schema:
type: string
pattern: ^[0-9a-z]+$
required: true
tags:
- Domains > Published Paths
security:
- OrganizationApiKey: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PublishedPath'
description: ''
summary: Domains published paths retrieve
x-summary-source: derived
put:
operationId: domains_published_paths_update
description: 'Update a Published Path.
Allows partial updates to Published Path fields, such as the slug. Both PUT and PATCH perform partial updates.'
parameters:
- in: path
name: domain_name
schema:
type: string
pattern: ^[-:\.0-9a-z]+$
required: true
- in: path
name: published_path_id
schema:
type: string
pattern: ^[0-9a-z]+$
required: true
tags:
- Domains > Published Paths
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePublishedPathRequest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/UpdatePublishedPathRequest'
multipart/form-data:
schema:
$ref: '#/components/schemas/UpdatePublishedPathRequest'
required: true
security:
- OrganizationApiKey: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePublishedPath'
description: ''
summary: Domains published paths update
x-summary-source: derived
patch:
operationId: domains_published_paths_partial_update
description: 'Partially update a Published Path.
Allows updating one or more fields of the Published Path, such as the slug.'
parameters:
- in: path
name: domain_name
schema:
type: string
pattern: ^[-:\.0-9a-z]+$
required: true
- in: path
name: published_path_id
schema:
type: string
pattern: ^[0-9a-z]+$
required: true
tags:
- Domains > Published Paths
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PatchedUpdatePublishedPathRequest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/PatchedUpdatePublishedPathRequest'
multipart/form-data:
schema:
$ref: '#/components/schemas/PatchedUpdatePublishedPathRequest'
security:
- OrganizationApiKey: []
- tokenAuth: []
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UpdatePublishedPath'
description: ''
summary: Domains published paths partial update
x-summary-source: derived
delete:
operationId: domains_published_paths_destroy
description: 'Delete a Published Path.
Removes the Published Path and its associated course series from the domain.'
parameters:
- in: path
name: domain_name
schema:
type: string
pattern: ^[-:\.0-9a-z]+$
required: true
- in: path
name: published_path_id
schema:
type: string
pattern: ^[0-9a-z]+$
required: true
tags:
- Domains > Published Paths
security:
- OrganizationApiKey: []
- tokenAuth: []
responses:
'204':
description: No response body
summary: Domains published paths destroy
x-summary-source: derived
components:
schemas:
UpdatePublishedPath:
type: object
description: Serializer for updating PublishedPath instances
properties:
id:
type: string
readOnly: true
slug:
type: string
description: After your Learning Path has been published, we don't recommend changing the URL
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
maxLength: 100
path:
allOf:
- $ref: '#/components/schemas/Path'
readOnly: true
path_url:
type: string
readOnly: true
hidden:
type: boolean
description: Hidden paths are only visible on the catalog page to associated groups
strict_enforce_group_visibility:
type: boolean
description: Block access to this path for student it's not visible to
offer:
allOf:
- $ref: '#/components/schemas/Offer'
readOnly: true
unique_progress_per_enrollment:
type: boolean
description: When enabled, each new enrollment creates a fresh progress record.
created_at:
type: string
format: date-time
readOnly: true
modified_at:
type: string
format: date-time
readOnly: true
required:
- slug
PublishedPath:
type: object
properties:
id:
type: string
readOnly: true
slug:
type: string
description: After your Learning Path has been published, we don't recommend changing the URL
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
maxLength: 100
path:
$ref: '#/components/schemas/CreatePath'
path_url:
type: string
readOnly: true
hidden:
type: boolean
description: Hidden paths are only visible on the catalog page to associated groups
strict_enforce_group_visibility:
type: boolean
description: Block access to this path for student it's not visible to
offer:
allOf:
- $ref: '#/components/schemas/Offer'
readOnly: true
unique_progress_per_enrollment:
type: boolean
description: When enabled, each new enrollment creates a fresh progress record.
created_at:
type: string
format: date-time
readOnly: true
modified_at:
type: string
format: date-time
readOnly: true
required:
- path
- slug
PaginatedPublishedPathList:
type: object
required:
- count
- results
properties:
count:
type: integer
example: 123
next:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?page=4
previous:
type:
- string
- 'null'
format: uri
example: http://api.example.org/accounts/?page=2
results:
type: array
items:
$ref: '#/components/schemas/PublishedPath'
CreatePath:
type: object
description: Serializer to create a new Path when publishing one to a domain. Only title is required.
properties:
id:
type: string
readOnly: true
title:
type: string
maxLength: 500
promo_image_url:
type: string
description: The URL to the promo image of the course
readOnly: true
short_description:
type: string
maxLength: 300
long_description_html:
type: string
maxLength: 100000
header_html:
type: string
maxLength: 100000
course_name_singular:
type: string
description: 'Text to replace the word ''course'' on the catalog tile for this learning path. For example: ''1 course'''
maxLength: 50
course_name_plural:
type: string
description: 'Text to replace the word ''courses'' on the catalog tile for this learning path. For example: ''3 courses'''
maxLength: 50
path_item_count:
type: integer
readOnly: true
required:
- title
CreatePathRequest:
type: object
description: Serializer to create a new Path when publishing one to a domain. Only title is required.
properties:
title:
type: string
minLength: 1
maxLength: 500
short_description:
type: string
maxLength: 300
long_description_html:
type: string
maxLength: 100000
header_html:
type: string
maxLength: 100000
course_name_singular:
type: string
minLength: 1
description: 'Text to replace the word ''course'' on the catalog tile for this learning path. For example: ''1 course'''
maxLength: 50
course_name_plural:
type: string
minLength: 1
description: 'Text to replace the word ''courses'' on the catalog tile for this learning path. For example: ''3 courses'''
maxLength: 50
required:
- title
Offer:
type: object
properties:
id:
type: string
readOnly: true
registration_open:
type: boolean
registration_url:
type: string
readOnly: true
description: URL used for course registration
price:
$ref: '#/components/schemas/Price'
required:
- price
- registration_open
Path:
type: object
properties:
id:
type: string
readOnly: true
title:
type: string
maxLength: 500
promo_image_url:
type: string
description: The URL to the promo image of the course
readOnly: true
short_description:
type: string
maxLength: 300
long_description_html:
type: string
maxLength: 100000
header_html:
type: string
maxLength: 100000
course_name_singular:
type: string
description: 'Text to replace the word ''course'' on the catalog tile for this learning path. For example: ''1 course'''
maxLength: 50
course_name_plural:
type: string
description: 'Text to replace the word ''courses'' on the catalog tile for this learning path. For example: ''3 courses'''
maxLength: 50
path_item_count:
type: integer
readOnly: true
PatchedUpdatePublishedPathRequest:
type: object
description: Serializer for updating PublishedPath instances
properties:
slug:
type: string
minLength: 1
description: After your Learning Path has been published, we don't recommend changing the URL
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
maxLength: 100
hidden:
type: boolean
description: Hidden paths are only visible on the catalog page to associated groups
strict_enforce_group_visibility:
type: boolean
description: Block access to this path for student it's not visible to
unique_progress_per_enrollment:
type: boolean
description: When enabled, each new enrollment creates a fresh progress record.
Price:
type: object
properties:
amount:
type: string
default: '0.00'
currency_code:
type: string
default: USD
PublishedPathRequest:
type: object
properties:
slug:
type: string
minLength: 1
description: After your Learning Path has been published, we don't recommend changing the URL
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
maxLength: 100
path:
$ref: '#/components/schemas/CreatePathRequest'
hidden:
type: boolean
description: Hidden paths are only visible on the catalog page to associated groups
strict_enforce_group_visibility:
type: boolean
description: Block access to this path for student it's not visible to
unique_progress_per_enrollment:
type: boolean
description: When enabled, each new enrollment creates a fresh progress record.
required:
- path
- slug
UpdatePublishedPathRequest:
type: object
description: Serializer for updating PublishedPath instances
properties:
slug:
type: string
minLength: 1
description: After your Learning Path has been published, we don't recommend changing the URL
pattern: ^[a-z0-9]+(-[a-z0-9]+)*$
maxLength: 100
hidden:
type: boolean
description: Hidden paths are only visible on the catalog page to associated groups
strict_enforce_group_visibility:
type: boolean
description: Block access to this path for student it's not visible to
unique_progress_per_enrollment:
type: boolean
description: When enabled, each new enrollment creates a fresh progress record.
required:
- slug
securitySchemes:
OrganizationApiKey:
type: http
scheme: basic
description: API key authentication using HTTP Basic Auth. Use your API key as the username and leave password empty.
tokenAuth:
type: http
scheme: bearer