# Cademí Developers > Public REST API of Cademí, an online course platform: students, enrollments and access, courses and lessons, exams and certificates, sales, support and events. Base URL `https://api.cademi.com.br/api/v3`, release 3.4.7. Requests authenticate with an API credential sent as `Authorization: Bearer `; each credential carries its own permissions. Resources use public IDs with a type prefix (`usr_`, `prd_`, `enr_`). Errors return a stable `error.code` with the matching HTTP status. Writes accept an `Idempotency-Key` header, and long-running work returns an asynchronous operation. The Cademí MCP (https://mcp.cademi.dev/mcp) exposes the same API as MCP tools for AI assistants, with OAuth sign-in as an administrator. The cademi CLI runs every API operation as a command. ## MCP - [Cademí MCP](https://cademi.dev/mcp/overview.md): Cademí MCP is a remote Model Context Protocol server that lets AI assistants work with your Cademí account. You connect it once, authorize it by signing in… - [Connect a client](https://cademi.dev/mcp/connect.md): Add https://mcp.cademi.dev/mcp to your MCP client as a remote server and authorize it by signing in to Cademí. You never paste an API key or a token. - [Authorization and permissions](https://cademi.dev/mcp/authorization.md): A connection to Cademí MCP is authorized by an administrator who signs in to Cademí and approves it. From then on, it works on one account, acts as that… - [Tools](https://cademi.dev/mcp/tools.md): Cademí MCP offers 396 tools: 5 composite tools that answer common questions in one call, and 391 tools that each call one operation of the Cademí API v3,… - [Resources and prompts](https://cademi.dev/mcp/resources-and-prompts.md): Besides tools, Cademí MCP offers three resources, which give the assistant context to read, and three prompts, which give it a strategy for common… - [Errors and limits](https://cademi.dev/mcp/errors-and-limits.md): When a tool call fails, Cademí MCP returns an error with a stable code, a message, and the API request_id when there is one. This page lists the codes, what… - [Tool catalog](https://cademi.dev/mcp/catalog.md): All 396 tools of the Cademí MCP, by resource, with access and permission. ## API guides - [Overview](https://cademi.dev/api.md): Public documentation for the Cademí API v3, release 3.4.7. The base URL is https://api.cademi.com.br/api/v3, and every response includes the… - [Authentication](https://cademi.dev/api/authentication.md): The v3 API is served at https://api.cademi.com.br/api/v3. It accepts HTTPS only and uses no cookies, sessions, or CSRF tokens. The credential, not the host,… - [Sandbox](https://cademi.dev/api/sandbox.md): The sandbox is a separate account linked to your production account. Each production account can have at most one sandbox. A credential's environment… - [Permissions and scope](https://cademi.dev/api/access-control.md): API v3 authorization answers two questions, in this order: does the credential have the permission the operation requires, and is the requested resource… - [Pagination, filtering, and conditional requests](https://cademi.dev/api/pagination-and-filtering.md): Every resource includes object and id. A related resource appears as a reference ({ "object": "product", "id": "prd_12" }) or as the related public ID. To… - [Errors](https://cademi.dev/api/errors.md): Every error response uses the same envelope, with a stable, machine-readable code and the request_id of the call. The HTTP status tells you the class of… - [Asynchronous operations, batches, and idempotency](https://cademi.dev/api/operations.md): Every POST request that creates something or has a side effect requires an Idempotency-Key header. Generate one UUID or ULID per intent. The key must be 1… - [Limits, quotas, and retention](https://cademi.dev/api/limits.md): Rate limits use a sliding 60-second window and are counted in three independent scopes. - [Human mode (OAuth)](https://cademi.dev/api/oauth.md): Human mode lets a call act on behalf of a specific administrator, on top of an existing API credential. It never replaces the credential: every human-mode… - [Files and uploads](https://cademi.dev/api/files.md): The v3 API never receives file content, and no operation accepts multipart/form-data. Your client sends the bytes directly to the storage service through… - [Webhooks](https://cademi.dev/api/webhooks.md): A webhook endpoint (POST /webhooks) receives the public events of your account (the same ones returned by GET /events) as HTTPS POST requests, one event per… - [Event streams](https://cademi.dev/api/event-streams.md): An event stream delivers the same public events as GET /events over Server-Sent Events (SSE), in the same order and with the same JSON, so you don't need to… - [Declarative configuration](https://cademi.dev/api/declarative-configuration.md): A JSON manifest describes the desired state of part of an account's catalog and presentation. The API validates the manifest, calculates a signed plan with… - [Certificates and legal terms](https://cademi.dev/api/certificates.md): This guide covers two areas. For certificates, you manage a product's certificate template and the certificates issued to users. For legal terms, you manage… - [Diamond automations](https://cademi.dev/api/diamond.md): A Diamond is a marketing automation built around three lessons and an offer. It follows a lead from sign-up to purchase, records the stage the lead is in,… - [Imports, exports, and reports](https://cademi.dev/api/imports-exports-reports.md): This guide covers three groups of resources: importing users from a spreadsheet, exporting account data to a file, and reading aggregate reports. Import… - [Versioning and compatibility](https://cademi.dev/api/versioning.md): API v3 evolves along four independent axes. A release can change one of them without touching the others, and you track each one through a different channel. - [Migrating to v3](https://cademi.dev/api/migrating.md): What changes when you move a v1 or v2 integration to API v3: credentials, errors, IDs and asynchronous operations. ## API reference - [OpenAPI document](https://cademi.dev/openapi/v3.json): the full v3 release as OpenAPI 3.1 JSON, the most precise source for generating clients. - [API v3 reference](https://cademi.dev/api/reference.md): Release 3.4.7: 395 operations in 50 resources. - [Capabilities](https://cademi.dev/api/reference/capabilities.md): Capabilities in API v3. - [Credentials](https://cademi.dev/api/reference/credentials.md): Credentials in API v3. - [Sandbox](https://cademi.dev/api/reference/sandbox.md): Sandbox in API v3. - [OpenAPI](https://cademi.dev/api/reference/openapi.md): OpenAPI in API v3. - [Users](https://cademi.dev/api/reference/users.md): Users in API v3. - [Enrollments](https://cademi.dev/api/reference/enrollments.md): Enrollments in API v3. - [Tags](https://cademi.dev/api/reference/tags.md): Tags in API v3. - [Custom fields](https://cademi.dev/api/reference/customfields.md): Custom fields in API v3. - [Gamification](https://cademi.dev/api/reference/gamification.md): Gamification in API v3. - [Products](https://cademi.dev/api/reference/products.md): Products in API v3. - [Modules](https://cademi.dev/api/reference/modules.md): Modules in API v3. - [Lessons](https://cademi.dev/api/reference/lessons.md): Lessons in API v3. - [Taxonomies](https://cademi.dev/api/reference/taxonomies.md): Taxonomies in API v3. - [Showcases](https://cademi.dev/api/reference/showcases.md): Showcases in API v3. - [Exams](https://cademi.dev/api/reference/exams.md): Exams in API v3. - [Questions](https://cademi.dev/api/reference/questions.md): Questions in API v3. - [Certificates](https://cademi.dev/api/reference/certificates.md): Certificates in API v3. - [Gateways](https://cademi.dev/api/reference/gateways.md): Gateways in API v3. - [Deliveries](https://cademi.dev/api/reference/deliveries.md): Deliveries in API v3. - [Sales events](https://cademi.dev/api/reference/salesevents.md): Sales events in API v3. - [Sales transactions](https://cademi.dev/api/reference/salestransactions.md): Sales transactions in API v3. - [Banners](https://cademi.dev/api/reference/banners.md): Banners in API v3. - [Menus](https://cademi.dev/api/reference/menus.md): Menus in API v3. - [FAQs](https://cademi.dev/api/reference/faqs.md): FAQs in API v3. - [Legal terms](https://cademi.dev/api/reference/legalterms.md): Legal terms in API v3. - [Account](https://cademi.dev/api/reference/account.md): Account in API v3. - [Domains](https://cademi.dev/api/reference/domains.md): Domains in API v3. - [Replicas](https://cademi.dev/api/reference/replicas.md): Replicas in API v3. - [Administrators](https://cademi.dev/api/reference/administrators.md): Administrators in API v3. - [General settings](https://cademi.dev/api/reference/generalsettings.md): General settings in API v3. - [Access and sign-up](https://cademi.dev/api/reference/accesssettings.md): Access and sign-up in API v3. - [Email settings](https://cademi.dev/api/reference/emailsettings.md): Email settings in API v3. - [Support settings](https://cademi.dev/api/reference/supportsettings.md): Support settings in API v3. - [Custom code](https://cademi.dev/api/reference/customcode.md): Custom code in API v3. - [Configuration](https://cademi.dev/api/reference/configuration.md): Configuration in API v3. - [Tickets](https://cademi.dev/api/reference/tickets.md): Tickets in API v3. - [Departments](https://cademi.dev/api/reference/departments.md): Departments in API v3. - [Comments](https://cademi.dev/api/reference/comments.md): Comments in API v3. - [Webhooks](https://cademi.dev/api/reference/webhooks.md): Webhooks in API v3. - [Events](https://cademi.dev/api/reference/events.md): Events in API v3. - [Event streams](https://cademi.dev/api/reference/eventstreams.md): Event streams in API v3. - [Diamonds](https://cademi.dev/api/reference/diamonds.md): Diamonds in API v3. - [Imports](https://cademi.dev/api/reference/imports.md): Imports in API v3. - [Exports](https://cademi.dev/api/reference/exports.md): Exports in API v3. - [Reports](https://cademi.dev/api/reference/reports.md): Reports in API v3. - [Files](https://cademi.dev/api/reference/files.md): Files in API v3. - [Uploads](https://cademi.dev/api/reference/uploads.md): Uploads in API v3. - [Operations](https://cademi.dev/api/reference/operations.md): Operations in API v3. - [Requests](https://cademi.dev/api/reference/requests.md): Requests in API v3. - [Audit entries](https://cademi.dev/api/reference/auditentries.md): Audit entries in API v3. ## Examples - [Examples](https://cademi.dev/api/examples.md): Ready-to-run requests, one per subject. ## CLI - [Cademí CLI](https://cademi.dev/cli/overview.md): cademi is the command-line tool for the Cademí API v3. It runs every API operation as a command, signs in as an administrator or with a credential alone,… - [Installation](https://cademi.dev/cli/installation.md): Install cademi with a one-line script on macOS, Linux, or Windows. The CLI then keeps itself up to date and verifies the signature of every release before… - [Authentication](https://cademi.dev/cli/authentication.md): cademi auth login connects the CLI to your account and saves the connection as a profile. Use human mode when a person runs the CLI, so every call is… - [Commands](https://cademi.dev/cli/commands.md): Every API v3 operation is a cademi command, generated from the API contract. This page explains how an operation becomes a command, how to find commands,… - [Raw requests](https://cademi.dev/cli/api.md): cademi api sends an authenticated request to any API v3 endpoint and prints the response. Use it for operations added to the API after your CLI version, or… - [Events with cademi listen](https://cademi.dev/cli/listen.md): cademi listen streams the public events of your account to the terminal in real time. With --forward-to, it also delivers each event to an application on… - [Declarative configuration](https://cademi.dev/cli/config.md): cademi config manages part of your account as code: you describe the desired state in a manifest, check it, review the plan of changes, and apply it. The… - [Sandbox](https://cademi.dev/cli/sandbox.md): Use a separate profile with sandbox credentials to test your integration without touching production. The CLI adds two commands to the sandbox group: cademi… - [Files](https://cademi.dev/cli/files.md): cademi upload sends a local file to your account in one command and prints the resulting file object. cademi download saves a file from your account to… - [Environment and diagnostics](https://cademi.dev/cli/environment.md): cademi env shows the settings the CLI is using and where each one comes from, and cademi doctor checks the configuration, the network, and the credentials.… - [Exit codes](https://cademi.dev/cli/exit-codes.md): Every cademi command ends with an exit code that tells scripts what happened without parsing the output. API errors map to a code by HTTP status, after the… - [CI and automation](https://cademi.dev/cli/ci.md): cademi runs without a terminal in CI pipelines, cron jobs, and containers. Give it a credential through an environment variable, pass --yes to commands that… - [AGENTS.md](https://github.com/minhacademi/developers/blob/main/AGENTS.md): how AI agents should use the cademi CLI. ## Optional - [Changelog](https://cademi.dev/api/changelog.md): Current release of the contract. Backward compatible with 3.4.6. - [Event catalog](https://cademi.dev/api/events.md): Release 3.4.7, 132 event types. The event type is what you subscribe to in a webhook (event_types) and what GET /events returns in type. Internal events… - [Overview](https://cademi.dev/api/v2.md): API v2 answers at your school address, https:///api/v2, on the Cademí subdomain or a custom domain. Release 2.0.0 is the first documented… - [API v2 reference](https://cademi.dev/api/v2/reference.md): Release 2.0.0: 5 operations in 3 resources. - [Overview](https://cademi.dev/api/v1.md): API v1 answers at your school address, https:///api/v1, on the Cademí subdomain or a custom domain. Release 1.0.0 is the first documented… - [API v1 reference](https://cademi.dev/api/v1/reference.md): Release 1.0.0: 17 operations in 5 resources.