API Access

How do I get access to Pluralsight GraphQL APIs?
All STARTER, PRO, and ENTERPRISE plans have access to the APIs that align with the level of their plan. Please generate an API key to get started. Note that only plan admins can generate an API key.

How do I know if I am a Pluralsight plan admin?
See Manage Keys to check if you have permission to generate a new GraphQL API key (This page uses the same login credentials as your Pluralsight account).

How do I get an API key if I am not a plan admin?
Please contact your Pluralsight plan admin. They can either add you as a plan admin, or generate and share an API key with you.

Can I generate more than 1 API Key?
Yes. Please generate an API key for each integration you want to enable.

APIs

What APIs are available?
See GraphQL Query (read APIs) and GraphQL Mutation (write APIs) to see all available APIs.

What type of data can I get through these APIs?

Type of APIs Read APIsWrite APIs
APIs on Skill AssessmentsA catalog of Skill Assessments and the Skill IQ results for all your learners.Not Applicable
APIs on RolesA catalog of standard (Pluralsight curated) and custom Role IQs and the results for your learners. (ie proficiency levels of a specific user, by department, and by role).Create/edit custom roles and add members or team(s) to a role
APIs on ChannelsList of channels within a plan, all content within a specific channel, the learners assigned to the channel and a user's progress by channel.Create/edit a new channel, add channel content and add or remove channel members/contributors
APIs on CoursesLists video courses in the Pluralsight catalog and user progress by courseNot Applicable
APIs on Content

Aggregate API that contains catalogs and user progress of many PS content types such as interactive course, projects and guides.

Not Applicable
APIs Team managementReturns learner data such as name, email and teamCreate a new team, add learners and a manager to team, move learners from one team to another as well as remove learner or manager from a team and delete team. Create/edit licensed users/learners, invite a user to use the plan and accept a license (via email), and remove users from a plan.

Where can I find the definitions of data fields for each API?
See Schema docs for the definitions of data entities and fields.

Do all data entities have CRUD capability?
No, some entities like CourseProgress only have read access.
See GraphQL queries for a list of read only APIs.
See GraphQL mutations for list of write APIs.

What is the format in which dates will be returned?,br /> Dates are serialized in ISO-8601 for input and output. For example "2021-02-01T00:00:00.000Z".

How does this API differ from the previous Pluralsight REST APIs I was using?
GraphQL APIs give you access to more than 70 data entities and fields than provided by legacy REST APIs. See this Pluralsight help center article to learn how the two differ.

What APIs are available on my plan?
See Plan Permissions page to get the list of APIs your plan has access to.

Are the APIs production ready?
Yes, most of the APIs are in General Release (GR) and are production ready. The APIs that are in alpha/beta status are indicated with a [Alpha] or [Beta] tags in the schema docs

How do you handle breaking changes in the APIs?
The Pluralsight team will make sure to provide a deprecation path before rolling out breaking API changes. The deprecated data fields are marked with a @deprecated decorator to warn users to migrate to an alternative datafield, or stop using it altogether.

Is the data fetched by the APIs in real time?
Yes, the data fetched is in real time. Two exceptions for real time data are: courseCatalog API: This API data gets daily updates on a daily basis. courseProgress API: This API data gets updated on a daily basis.

What time of the day does the data for the courseCatalog and courseProgress APIs get updated?
Update time can vary and hence we don’t specify a certain time of the day when data gets updated.

How frequently should I get the API data?
Most of our API users call the APIs on a daily, weekly, or monthly frequency to suit their data needs.

Is there a way to retrieve all the records instead of the first 100 when I run the query?
By default the APIs get the first 100 records. See the pagination section to learn how you can specify the number of records you want using ‘first’ parameter.

Where can I find the recent changes to APIs?
See Changelog to check the recent changes.

Is there any limit for the number of records I can extract during each API request?
We recommend getting 1000 records with each API request. Use pagination to get all the records when you have more than limit.

Is there any rate limit for the APIs?
Yes, and if you follow the recommendation of extracting 1000 records per page/API request, you shouldn’t hit the limit. Integrations

What integrations are available?
See the list of integrations in the dev portal. Integrations are populated in the left-hand sidebar navigation menu.

How do I submit a request for a new integration?
Please use feature request form to request a new integration. Alternatively, you can contact [email protected] to submit your request.

Support

Who do I connect with if I have additional questions?
Please contact [email protected] If you have purchased the Integrations SKU in the last 12 months, you can request the help of our Professional Services team. Contact your Customer Success Manager or Account Executive to know more.