Catalog API

The Catalog API provides access to your company’s content catalog, including programs (courses, degrees, parts), assessments, and learning plans.

Endpoint

POST https://api.udacity.com/api/public/api/v1/catalog/graphql

Required scope

COMPANY:<companyId>

Your API token must have a COMPANY scope with your company ID as the scope key. The legacy CATALOG_COMPANY scope is also accepted as a fallback.

Overview

The Catalog API exposes a single query that returns everything in your company’s catalog:

query {
  catalog(contractId: "optional-contract-id") {
    companyId
    programs {
      key
      title
      type
      summary
      duration
      difficultyLevel
      syllabusUrl
      imageUrl
    }
    assessments {
      id
      title
      category
      isTimed
      timeLimit
      totalQuestionsInAssessment
    }
    learningPlans {
      id
      title
      key
      slug
      steps {
        stepId
        stepType
        label
      }
    }
  }
}

What’s in the catalog

ResourceDescription
ProgramsCourses, degrees, and parts available to your company — includes metadata like title, duration, syllabus URL, and SSO launch links
AssessmentsAssessments available to your company — includes title, category (pass/fail or practice), time limits, and question counts
Learning PlansStructured learning paths configured by your admins — includes title, key, URL slug, and the full step-by-step structure (programs, assessments, surveys, applications, and grouped containers)

Next

  • Queries — Full query reference
  • Types — All types in the Catalog schema