For the complete documentation index, see llms.txt. This page is also available as Markdown.

Pathways

List all pathways for the issuer

get
Required scopes
This endpoint requires the following scopes:
  • : Award badges and update your issuers
Authorizations
OAuth2authorizationCodeRequired

OAuth2 authorizationCode flow is currently not functional on the Swagger UI.

Authorization URL: Token URL:
Path parameters
idOrEntityIdstringRequired
Responses
200

OK

get/v2/issuers/{idOrEntityId}/pathways
GET /v2/issuers/{idOrEntityId}/pathways HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_OAUTH2_TOKEN
Accept: */*
{
  "pathwayInfos": [
    {
      "draftCompletionBadgeUrl": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
      "draftName": "Road",
      "issuerId": "62aa04adf5afe00d0a6dac72",
      "issuerName": "Springfield University",
      "issuerVerified": true,
      "lastPublishedAt": "2026-01-01T00:00:00.000Z",
      "pathwayGroupLtiToolCountsByLmsType": {
        "Blackboard": 3,
        "Canvas": 2,
        "Moodle": 4,
        "Other": 5
      },
      "pathwayId": "66aa04adf5afe00d0a6dac72",
      "publishedCompletionBadgeUrl": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
      "publishedName": "Highway",
      "subscribedGroupCount": 2,
      "uniqueMemberCount": 100
    }
  ]
}

Create pathway in draft state

post
Authorizations
HTTPRequired
Body
issuerIdstringRequired

ID of the issuer where the pathway will be created

Example: 62aa04adf5afe00d0a6dac72
Responses
200

OK

creationDatestring · date-timeRequired
draftLastUpdatedAtstring · date-timeRequired
draftStructureVersioninteger · int32Required
hasDraftChangesbooleanRequired
hasThirdPartyBadgesbooleanRequired
issuerIdstringRequired

ID of the issuer where the pathway was created

Example: 62aa04adf5afe00d0a6dac72
lastPublishedAtstring · date-time · nullableOptional
pathwayIdstring · nullableOptionalExample: 66aa04adf5afe00d0a6dac72
post/v2/pathways
POST /v2/pathways HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 1285

{
  "draftRoot": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  },
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  }
}
{
  "creationDate": "2026-01-01T00:00:00.000Z",
  "draftLastUpdatedAt": "2026-01-01T00:00:00.000Z",
  "draftStructureVersion": 1,
  "hasDraftChanges": true,
  "hasThirdPartyBadges": true,
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "lastPublishedAt": "2026-01-01T00:00:00.000Z",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  },
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101",
            "url": "https://canvas.instructure.com/courses/123678"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}

Delete pathway

delete
Authorizations
HTTPRequired
Path parameters
idstringRequired
Responses
204

Pathway deleted

delete/v2/pathways/{id}
DELETE /v2/pathways/{id} HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*

No content

Get aggregate progress status for the entire pathway

get
Authorizations
HTTPRequired
Path parameters
idstringRequired
Responses
200

OK

idstringRequiredExample: 61aa04adf5afe00d0a6dac72
pathwayIdstringRequiredExample: 66aa04adf5afe00d0a6dac72
get/v2/pathways/{id}/aggregate-progress
GET /v2/pathways/{id}/aggregate-progress HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "calculationInfo": {
    "computedDate": "2026-01-01T00:00:00.000Z",
    "computedPublishedStructureVersion": 1,
    "computedVersion": 1,
    "stale": true,
    "staleBeforeVersion": 1
  },
  "id": "61aa04adf5afe00d0a6dac72",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "progressAggregate": {
    "elementProgress": {
      "ANY_ADDITIONAL_PROPERTY": {
        "courseProgress": {
          "byRequirements": [
            {
              "completed": 5,
              "requirementId": {
                "completionRequirement": {
                  "@type": "completed",
                  "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
                },
                "courseId": "text",
                "domain": "text",
                "lms": "CANVAS"
              }
            }
          ]
        },
        "experienceProgress": {
          "experienceIdsWithAllRecipientsFailed": [
            "123e4567-e89b-12d3-a456-426614174000"
          ],
          "experienceIdsWithFailedRecipients": [
            "123e4567-e89b-12d3-a456-426614174000"
          ],
          "experienceIdsWithNotEvaluatedRecipients": [
            "123e4567-e89b-12d3-a456-426614174000"
          ]
        },
        "overallProgress": {
          "completedCount": 1,
          "failedCount": 1,
          "inProgressCount": 1,
          "notStartedCount": 1,
          "progress": {
            "completedValue": 1,
            "failedValue": 1,
            "maxValue": 1,
            "requiredValue": 2
          }
        }
      }
    }
  }
}

Get progress status for the recipient group

get
Authorizations
HTTPRequired
Path parameters
idstringRequired
recipientGroupIdstringRequired
Responses
200

OK

idstringRequiredExample: 61aa04adf5afe00d0a6dac72
pathwayIdstringRequiredExample: 66aa04adf5afe00d0a6dac72
get/v2/pathways/{id}/recipient-groups/{recipientGroupId}/progress
GET /v2/pathways/{id}/recipient-groups/{recipientGroupId}/progress HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "calculationInfo": {
    "computedDate": "2026-01-01T00:00:00.000Z",
    "computedPublishedStructureVersion": 1,
    "computedVersion": 1,
    "stale": true,
    "staleBeforeVersion": 1
  },
  "id": "61aa04adf5afe00d0a6dac72",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "progressAggregate": {
    "elementProgress": {
      "ANY_ADDITIONAL_PROPERTY": {
        "courseProgress": {
          "byRequirements": [
            {
              "completed": 5,
              "requirementId": {
                "completionRequirement": {
                  "@type": "completed",
                  "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
                },
                "courseId": "text",
                "domain": "text",
                "lms": "CANVAS"
              }
            }
          ]
        },
        "experienceProgress": {
          "experienceIdsWithAllRecipientsFailed": [
            "123e4567-e89b-12d3-a456-426614174000"
          ],
          "experienceIdsWithFailedRecipients": [
            "123e4567-e89b-12d3-a456-426614174000"
          ],
          "experienceIdsWithNotEvaluatedRecipients": [
            "123e4567-e89b-12d3-a456-426614174000"
          ]
        },
        "overallProgress": {
          "completedCount": 1,
          "failedCount": 1,
          "inProgressCount": 1,
          "notStartedCount": 1,
          "progress": {
            "completedValue": 1,
            "failedValue": 1,
            "maxValue": 1,
            "requiredValue": 2
          }
        }
      }
    }
  },
  "scope": {
    "@type": "groupAggregate",
    "recipientGroupId": "text"
  }
}

Get progress status for the recipient

get
Authorizations
HTTPRequired
Path parameters
idstringRequired
Query parameters
recipientIdentifierstringRequired

Identifier of the recipient, format: recipientType:recipientId

Example: email:mail@example.com
Responses
200

OK

idstringRequiredExample: 61aa04adf5afe00d0a6dac72
pathwayIdstringRequiredExample: 66aa04adf5afe00d0a6dac72
get/v2/pathways/{id}/recipient-progress
GET /v2/pathways/{id}/recipient-progress?recipientIdentifier=text HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "calculationInfo": {
    "computedDate": "2026-01-01T00:00:00.000Z",
    "computedPublishedStructureVersion": 1,
    "computedVersion": 1,
    "stale": true,
    "staleBeforeVersion": 1
  },
  "id": "61aa04adf5afe00d0a6dac72",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "progress": {
    "elementProgress": {
      "ANY_ADDITIONAL_PROPERTY": {
        "badgeProgress": {
          "earnedBadges": [
            "https://api.staging.badgr.dev/public/badges/2Lkni4uvRjGqlz8zCg_5uA"
          ],
          "maxBadgeCount": 1
        },
        "cappedProgress": {
          "completed": 1,
          "directRequirementFailed": 1,
          "failed": 2,
          "inProgress": 1,
          "notStarted": 1,
          "preRequisiteStepFailed": 1,
          "required": 5
        },
        "completedByShortcut": true,
        "completionBadgeNewlyAwarded": true,
        "courseProgress": {
          "earnedCriteria": [
            {
              "completionRequirement": {
                "@type": "completed",
                "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
              },
              "courseId": "text",
              "domain": "text",
              "evaluatedAt": "2026-01-01T00:00:00.000Z",
              "lms": "CANVAS"
            }
          ],
          "inProgressCriteria": [
            {
              "completionRequirement": {
                "@type": "completed",
                "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
              },
              "courseId": "text",
              "domain": "text",
              "evaluatedAt": "2026-01-01T00:00:00.000Z",
              "lms": "CANVAS"
            }
          ]
        },
        "experienceProgress": {
          "evaluations": [
            {
              "experienceId": "123e4567-e89b-12d3-a456-426614174000",
              "lastEvaluatedAt": "2026-01-01T00:00:00.000Z",
              "passed": true
            }
          ]
        },
        "status": "COMPLETED"
      }
    },
    "endProgress": {
      "completed": 4,
      "failed": 1,
      "inProgress": 3,
      "notStarted": 2,
      "required": 10,
      "status": "COMPLETED"
    }
  },
  "scope": {
    "@type": "recipient",
    "identifier": {
      "@type": "email",
      "email": "mail@example.com"
    }
  }
}

Update pathway group subscriptions

post
Authorizations
HTTPRequired
Path parameters
idstringRequired
Body
groupIdsToAddstring[]RequiredExample: 61aa04adf5afe00d0a6dac72
groupIdsToRemovestring[]RequiredExample: 67aa04adf5afe00d0a6dac72
Responses
200

OK

No content

post/v2/pathways/{id}/subscriptions
POST /v2/pathways/{id}/subscriptions HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 94

{
  "groupIdsToAdd": [
    "61aa04adf5afe00d0a6dac72"
  ],
  "groupIdsToRemove": [
    "67aa04adf5afe00d0a6dac72"
  ]
}

No content

Get draft version

get
Authorizations
HTTPRequired
Path parameters
idstringRequired
Responses
200

OK

creationDatestring · date-timeRequired
draftLastUpdatedAtstring · date-timeRequired
draftStructureVersioninteger · int32Required
hasDraftChangesbooleanRequired
hasThirdPartyBadgesbooleanRequired
issuerIdstringRequired

ID of the issuer where the pathway was created

Example: 62aa04adf5afe00d0a6dac72
lastPublishedAtstring · date-time · nullableOptional
pathwayIdstring · nullableOptionalExample: 66aa04adf5afe00d0a6dac72
get/v2/pathways/{id}/versions/draft
GET /v2/pathways/{id}/versions/draft HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "creationDate": "2026-01-01T00:00:00.000Z",
  "draftLastUpdatedAt": "2026-01-01T00:00:00.000Z",
  "draftStructureVersion": 1,
  "hasDraftChanges": true,
  "hasThirdPartyBadges": true,
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "lastPublishedAt": "2026-01-01T00:00:00.000Z",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  },
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101",
            "url": "https://canvas.instructure.com/courses/123678"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}

Update pathway draft

put
Authorizations
HTTPRequired
Path parameters
idstringRequired
Body
issuerIdstringRequired
Responses
200

OK

creationDatestring · date-timeRequired
draftLastUpdatedAtstring · date-timeRequired
draftStructureVersioninteger · int32Required
hasDraftChangesbooleanRequired
hasThirdPartyBadgesbooleanRequired
issuerIdstringRequired

ID of the issuer where the pathway was created

Example: 62aa04adf5afe00d0a6dac72
lastPublishedAtstring · date-time · nullableOptional
pathwayIdstring · nullableOptionalExample: 66aa04adf5afe00d0a6dac72
put/v2/pathways/{id}/versions/draft
PUT /v2/pathways/{id}/versions/draft HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 1216

{
  "issuerId": "text",
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}
{
  "creationDate": "2026-01-01T00:00:00.000Z",
  "draftLastUpdatedAt": "2026-01-01T00:00:00.000Z",
  "draftStructureVersion": 1,
  "hasDraftChanges": true,
  "hasThirdPartyBadges": true,
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "lastPublishedAt": "2026-01-01T00:00:00.000Z",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  },
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101",
            "url": "https://canvas.instructure.com/courses/123678"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}

Reverts pathway draft to the current published version

post
Authorizations
HTTPRequired
Path parameters
idstringRequired
Responses
200

OK

creationDatestring · date-timeRequired
draftLastUpdatedAtstring · date-timeRequired
draftStructureVersioninteger · int32Required
hasDraftChangesbooleanRequired
hasThirdPartyBadgesbooleanRequired
issuerIdstringRequired

ID of the issuer where the pathway was created

Example: 62aa04adf5afe00d0a6dac72
lastPublishedAtstring · date-time · nullableOptional
pathwayIdstring · nullableOptionalExample: 66aa04adf5afe00d0a6dac72
post/v2/pathways/{id}/versions/draft/revert
POST /v2/pathways/{id}/versions/draft/revert HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "creationDate": "2026-01-01T00:00:00.000Z",
  "draftLastUpdatedAt": "2026-01-01T00:00:00.000Z",
  "draftStructureVersion": 1,
  "hasDraftChanges": true,
  "hasThirdPartyBadges": true,
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "lastPublishedAt": "2026-01-01T00:00:00.000Z",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  },
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101",
            "url": "https://canvas.instructure.com/courses/123678"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}

Get published version

get
Authorizations
HTTPRequired
Path parameters
idstringRequired
Responses
200

OK

creationDatestring · date-timeRequired
draftLastUpdatedAtstring · date-timeRequired
draftStructureVersioninteger · int32Required
hasDraftChangesbooleanRequired
hasThirdPartyBadgesbooleanRequired
issuerIdstringRequired

ID of the issuer where the pathway was created

Example: 62aa04adf5afe00d0a6dac72
lastPublishedAtstring · date-time · nullableOptional
pathwayIdstring · nullableOptionalExample: 66aa04adf5afe00d0a6dac72
get/v2/pathways/{id}/versions/published
GET /v2/pathways/{id}/versions/published HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "creationDate": "2026-01-01T00:00:00.000Z",
  "draftLastUpdatedAt": "2026-01-01T00:00:00.000Z",
  "draftStructureVersion": 1,
  "hasDraftChanges": true,
  "hasThirdPartyBadges": true,
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "lastPublishedAt": "2026-01-01T00:00:00.000Z",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  },
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101",
            "url": "https://canvas.instructure.com/courses/123678"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}

Promote current draft version to published

post
Authorizations
HTTPRequired
Path parameters
idstringRequired
Responses
200

OK

creationDatestring · date-timeRequired
draftLastUpdatedAtstring · date-timeRequired
draftStructureVersioninteger · int32Required
hasDraftChangesbooleanRequired
hasThirdPartyBadgesbooleanRequired
issuerIdstringRequired

ID of the issuer where the pathway was created

Example: 62aa04adf5afe00d0a6dac72
lastPublishedAtstring · date-time · nullableOptional
pathwayIdstring · nullableOptionalExample: 66aa04adf5afe00d0a6dac72
post/v2/pathways/{id}/versions/published
POST /v2/pathways/{id}/versions/published HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
  "creationDate": "2026-01-01T00:00:00.000Z",
  "draftLastUpdatedAt": "2026-01-01T00:00:00.000Z",
  "draftStructureVersion": 1,
  "hasDraftChanges": true,
  "hasThirdPartyBadges": true,
  "issuerId": "62aa04adf5afe00d0a6dac72",
  "lastPublishedAt": "2026-01-01T00:00:00.000Z",
  "pathwayId": "66aa04adf5afe00d0a6dac72",
  "preferences": {
    "includeOnPublicPages": true
  },
  "root": {
    "alignmentUrl": "www.example.com/skills/E1",
    "children": [],
    "completionBadge": "https://api.staging.badgr.dev/public/badges/ngurEbvbQiCAs5EkwEgIBw",
    "description": "Complete Math 101 course",
    "elementId": "65aa04adf5afe00d0a6dac72",
    "frameworkName": "OSMT",
    "name": "Math 101",
    "requiredForParentCompletion": true,
    "requirements": {
      "allowCompletionBadgeShortcut": true,
      "badgeRequirements": {
        "requiredBadges": [
          {
            "badgeUrl": "https://api.badgr.io/public/badges/ngurE1vbQiCAs5EkwEgIBw",
            "displayOrder": 0
          }
        ]
      },
      "childElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        }
      },
      "courseRequirements": {
        "requiredCourses": [
          {
            "completionRequirement": {
              "@type": "completed",
              "doNotAwardBefore": "2026-01-01T00:00:00.000Z"
            },
            "courseId": "123678",
            "displayOrder": 0,
            "domain": "canvas.instructure.com",
            "lms": "CANVAS",
            "name": "Math 101",
            "url": "https://canvas.instructure.com/courses/123678"
          }
        ]
      },
      "experienceRequirements": {
        "requiredExperiences": [
          {
            "description": "Attend Instructure Conference 2025",
            "displayOrder": 0,
            "id": "123e4567-e89b-12d3-a456-426614174000",
            "name": "Conference"
          }
        ]
      },
      "nonChildElementRequirements": {
        "countRule": {
          "@type": "allButN",
          "notRequiredCount": 1
        },
        "elementIds": [
          "text"
        ]
      },
      "requiredCriteriaCount": 1,
      "shortcutBadges": [
        "text"
      ]
    },
    "shortCode": "M101",
    "targetCode": "E1"
  }
}

Evaluate experience on the pathway for a user

post
Authorizations
HTTPRequired
Path parameters
pathwayIdstringRequired
experienceIdstring · uuidRequired
Body
passedbooleanRequired
recipientone ofRequired
or
or
Responses
204

No Content

No content

post/v2/pathways/{pathwayId}/experience/{experienceId}/submit
POST /v2/pathways/{pathwayId}/experience/{experienceId}/submit HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 72

{
  "passed": true,
  "recipient": {
    "@type": "email",
    "email": "mail@example.com"
  }
}

No content

Evaluate experience on the pathway for multiple users

post

CSV file should contain recipientId,passed header row. Each row should contain a single entry of recipientId (email:mail@example.com) and a passed value (true/false) separated by a comma.

Authorizations
HTTPRequired
Path parameters
pathwayIdstringRequired
experienceIdstring · uuidRequired
Body
stringOptionalExample: recipientId,passed email:mail@example.com,true
Responses
200

OK

post/v2/pathways/{pathwayId}/experience/{experienceId}/submit-csv
POST /v2/pathways/{pathwayId}/experience/{experienceId}/submit-csv HTTP/1.1
Host: api.badges.parchment.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: text/csv
Accept: */*
Content-Length: 49

"recipientId,passed\nemail:mail@example.com,true"
{
  "errors": [
    {
      "error": "NOT_SUBSCRIBED",
      "recipientId": {
        "@type": "email",
        "email": "mail@example.com"
      }
    }
  ],
  "successes": [
    {
      "@type": "email",
      "email": "mail@example.com"
    }
  ]
}

Last updated

Was this helpful?