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 request an API key?
A plan admin on your account can create an API Key on the Manage Keys section of the Developer Portal.

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.

How long does it take to generate an API token?
API keys can be generated in a matter of minutes on the developer portal and are active immediately. If there is a delay for any reason or it does not function, please contact [email protected].

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 API documentation in the left-hand navigation.

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 API documentation in the left-hand navigation.

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.

Does the GraphQL API documentation cover data on SKILLS and FLOW plans?
Currently Skills data is available via the Pluralsight GraphQL endpoints and developer portal. See also Flow REST API Intro.

Is there a limitation to the number of queries we create?
Best practice is to create 1 query per API unless you have multiple use cases for an API that could benefit from different query filters. We strongly encourage you to use filters to scope the dataset to your needs and improve your reporting performance. For example, you could specify a filter on courseProgress that would return data for the last 30 or 90 days. This would dramatically improve your report performance, reduce load on our servers and provide a better experience to all customers who are using the API endpoint. For more information see the Filters section on the Using GraphQL page.

Only x records are being returned by a GraphQL query. I know I have more data than that, how do I pull it?
See the Appendix for examples on pagination

What data can I not see?
Your API key is specific to your plan and it has access to the APIs that correspond with the plan you have purchased. See details on the Developer Portal.

I would prefer to use the Pluralsight REST APIs. Can I continue to use your REST APIs?
The REST APIs will be deprecated in 2021. The GraphQL APIs contain much richer datasets for multiple content types (paths, channels, interactive courses, labs, etc) as well as Skills, Priorities, and Roles that are not available via REST.

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.

Does this cost extra?
If you have purchased the Integration’s SKU, or have an Enterprise SKU that was purchased before July 1st 2020 and it has not yet expired and been renewed, then there is no additional charge. If you have not purchased our Integrations SKU and have a subscription starting after July 1st 2020, whether a new subscription or renewal, then you will have to speak to your CSM and Sales rep to get started.

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.