Skip to main content

Overview

The Platzi Business API provides REST endpoints for managing companies, users, teams, and learning paths.

Base URLs

The API is served from two base URLs depending on the domain you call. Each endpoint reference page indicates which base URL to use at the top.

Base URLDomains
https://api-sls.platzi.com/production-sls-business-domainsUsers, Groups, Learning Paths, API Key
https://api.platzi.com/businessReports

Domains

DomainBase PathDescription
Users/v3/users/{company_id}Invite, update, delete, and list company users
Groups/v3/group-builder/{company_id}Company team management
Learning Paths/v3/lp-builder/{company_id}Custom learning path management
API Key/v2/api-key/authAPI key validation and SSO magic link generation
Reports/v2/reports, /v1/englishUser activity, learning paths, courses, and English

Webhooks work the other way around: instead of calling us, you expose an endpoint and Platzi POSTs to it when an employee finishes a certifying exam. No API key is involved — see that page for how to request it.

Authentication

All endpoints require two headers:

HeaderDescription
x-platzi-company-api-keyAPI key provided by the Platzi team
User-AgentProvided along with the API key

Ask Platzi organizers to provide you with the API key and API secret.

API secret is used to encrypt the email in some resources.

The usual information provided by Platzi organizers is:

Company Id: <company_id>
Label: <label>
Key: <key>
Secret: <secret>
User-Agent: <user-agent>
Expiration: <expiration>
Scope: <scope>

Response Format

All endpoints return JSON responses with a consistent structure:

Success:

{
"data": { ... },
"metadata": { "count": 100, "page": 1, "page_size": 20, "total_pages": 5 }
}

Error:

{
"errors": [{ "code": "ERROR_CODE", "message": "Human-readable description" }]
}

Rate Limits

LimitThreshold
Per minute400 requests
Per 5-minute window15,000 requests

Pagination

List endpoints support pagination via query parameters:

ParameterTypeDefaultDescription
pageint1Page number
page_sizeint20Items per page (max varies by endpoint)