Retrieve a path session: Migration guide

This guide details how the Retrieve a path session endpoint has changed (previously known as getPathSession in v1).

💡

Key changes

  • Endpoint structure: The v2 endpoint now requires both the pathId and sessionId as path parameters, whereas v1 only required the session_id.
  • Data separation: API v2 adopts a more modular design, distributing data previously consolidated in the v1 session response (e.g., path-specific details, tags, enrollment lists) across dedicated endpoints.

Documentation links

Here are the links to the API reference for:

Endpoint mapping

Here's the direct correlation between the v1 and v2 endpoint URLs:

  • API v1: /api/v1/paths/sessions/:session_id
  • API v2: /api/v2/paths/{pathId}/sessions/{sessionId}

Behavior changes

This endpoint in API v2 reflects a refined separation of concerns. While API v1's getPathSession endpoint provided a broader set of related data (e.g., path details, skills, enrollments), API v2 distributes this information across more specialized endpoints. Consequently, to retrieve full details that were previously consolidated, you may now need to make additional calls to dedicated endpoints such as Retrieve a path, List all tags in a path, or Retrieve a path session audience.

Additionally, API v2 new capabilities and management options for open access and automatic reenrollment are reflected in new output properties like registrationRequestValidation, userLimit, and automaticReenrollment.

Input changes

This section details the specific alterations to the input requirements between API versions.

API v1 input example

curl --location 'https://app.360learning.com/api/v1/paths/sessions/685428d5df21c4596efefe74?company={{company}}&apiKey={{apiKey}}'

API v2 input example

curl --request GET \
     --url https://app.360learning.com/api/v2/paths/6854284dde395b87af7657c6/sessions/685428d5df21c4596efefe74 \
     --header '360-api-version: v2.0' \
     --header 'accept: application/json' \
     --header 'authorization: Bearer your_access_token'

Main input differences

Change typeAPI v1API v2
Modified
Path parameter
session_id (Required): The ID of the path session.sessionId (Required): Renamed.
Added
Path parameter
-pathId (Required): The unique ID of the path.

Output changes

This section outlines the primary changes in the structure and content of a successful API response, reflecting API v2's enhanced separation of concerns. Key alterations include the renaming and restructuring of several session-related properties, the removal of path-specific details previously embedded within the session response, and the absence of direct enrollment information (e.g., enrolled groups), which was present in v1. New fields for audience management and instructor assignment have also been introduced.

API v1 output example

{
    "sessionName": "July Session",
    "sessionId": "685428d5df21c4596efefe74",
    "sessionOwnerGroup": "6470744ad045da027bccafd1",
    "sessionCreatedAt": "2025-06-19T15:12:21.000Z",
    "sessionModifiedAt": "2025-06-19T15:15:45.925Z",
    "instructorsMails": [
        "[email protected]",
        "[email protected]"
    ],
    "startDate": "2025-07-01T15:12:21.843Z",
    "endDate": "2025-07-30T23:00:00.000Z",
    "pathName": "Onboarding",
    "pathId": "6854284dde395b87af7657c6",
    "pathOwnerGroup": "66191d23150e9d3e4ad6f60c",
    "pathModifiedAt": "2025-06-19T15:14:10.532Z",
    "authorsMail": [
        "[email protected]"
    ],
    "sessionAdditionalInformation": "Onboarding session for managers",
    "description": "",
    "skills": [],
    "tags": [],
    "sourceLang": "en",
    "linear": true,
    "certificateOutlineId": "64ff30ee0991ed01788d589d",
    "steps": [
        {
            "_id": "65bd1aac1cb5834f304dafd1",
            "type": "course"
        }
    ],
    "enrolledGroups": [],
    "translationsLangs": [
        {
            "lang": "fr",
            "published": true,
            "translators": []
        }
    ]
}

API v2 output example

{
  "_id": "685428d5df21c4596efefe74",
  "createdAt": "2025-06-19T15:12:21.000Z",
  "groupId": "6470744ad045da027bccafd1",
  "instructorIds": [
    "661931c78f73ada0af967859"
  ],
  "isAudienceBuilder": true,
  "mainInstructorId": "6470744ad045da027bccafd0",
  "modifiedAt": "2025-06-19T15:15:45.925Z",
  "name": "July Session",
  "pathId": "6854284dde395b87af7657c6",
  "registrationRequestValidation": "instructors",
  "startDate": "2025-07-01T15:12:21.843Z",
  "additionalInformation": "Onboarding session for managers",
  "automaticReenrollment": {
    "type": "certificationExpiryDate",
    "delayDays": 30
  },
  "endDate": "2025-07-30T23:00:00.000Z",
  "userLimit": 30,
  "translations": [
    {
      "lang": "fr",
      "published": true,
      "translatorIds": [],
      "translatedFields": {
        "name": "Juillet"
      }
    }
  ]
}

Main output differences

This section outlines the primary changes in the structure and content of a successful API response. Key alterations include the renaming and restructuring of several session-related properties, the removal of path-specific details previously embedded within the session response, and the absence of direct enrollment information (e.g., enrolled groups), which was present in v1. New fields for audience management and instructor assignment have also been introduced.

Change typeAPI v1API v2
Removed
Output property
instructorsMails (Required): Array of email addresses belonging to the instructors for this session, with the main instructor as the first item.- (Now handled by mainInstructorId and instructorIds using unique IDs)
Removed
Output property
pathName (Required): Name of the path.- (Now handled by a separate endpoint, Retrieve a path).
Removed
Output property
pathOwnerGroup (Required): ID of the group owning the path.- (Now handled by a separate endpoint, Retrieve a path ).
Removed
Output property
pathModifiedAt (Required): Last modification date of the path (ISO 8601).- (Now handled by a separate endpoint, Retrieve a path ).
Removed
Output property
authorsMail (Required): List of the emails of the authors of the path.- (Now handled by a separate endpoint, Retrieve a path, as author IDs).
Removed
Output property
skills (Optional): Previously used for what are now named tags. This property is removed from this v2 endpoint's output.- (Now handled by a separate endpoint, List all tags in a path, as tag IDs).
Removed
Output property
tags (Optional): Removed from endpoint v2 version, not replaced.- (Now handled by a separate endpoint, List all tags in a path , as tag IDs).
Removed
Output property
sourceLang (Required): Language (bigram) in which the path was originally created.- (Now handled by a separate endpoint, Retrieve a path).
Removed
Output property
linear (Required): true if the path steps must be played in a linear progression; false if steps can be played in any order- (Now handled by a separate endpoint, Retrieve a path).
Removed
Output property
certificateOutlineId (Optional): ID of the certification.- (Now handled by a separate endpoint, Retrieve a path ).
Removed
Output property
steps (Required): Array with the steps included in the path.- (Now handled by a separate endpoint, Retrieve a path ).
Removed
Output property
enrolledGroups (Required): Array with the IDs of the groups enrolled in the session.- (Now handled by a separate endpoint, Retrieve a path session audience).
Removed
Output property
description (Required): Description of the path session. Removed from v2, not replaced.-
Modified
Output property
sessionName (Required): Name of the path session.name (Required): Renamed.
Modified
Output property
sessionOwnerGroup (Required): ID of the group owning the session.groupId (Required): Renamed.
Modified
Output property
sessionCreatedAt (Required): Date of creation of the session (ISO 8601).createdAt (Required): Renamed.
Modified
Output property
sessionModifiedAt (Required): Date of last modification of the session (ISO 8601).modifiedAt (Required): Renamed.
Modified
Output property
sessionId (Required): ID of the path session._id (Required): Modified name.
Modified
Output property
sessionAdditionalInformation (Optional): Additional information for the path session.additionalInformation (Optional): Modified name.
Modified
Output property
translationsLangs (Required): List of all additional languages associated to the path, including lang, published, and translators.translations (Required): The different translations available for the path session. Restructured to include translatorIds (changed from translators) and a nested translatedFields object.
Added
Output property
-mainInstructorId (Required): The unique ID of the main instructor of the path session.
Added
Output property
-instructorIds (Required): The list of unique IDs of the co-instructors of the path session.
Added
Output property
-isAudienceBuilder (Required): True if the path session is an audience builder session; false otherwise
Added
Output property
-registrationRequestValidation (Required): The registration request validation options for open access registrations.
Added
Output property
-automaticReenrollment (Optional): The automatic reenrollment settings if enabled for the path session.
Added
Output property
-userLimit (Optional): The maximum number of learners that can self-enroll in the path session.
Added
Output property
-rootSessionId (Optional): The unique ID of the root session.