Prezent Platform API
Project description
The Prezent Platform API exposes Prezent's AutoGenerator, Template Converter, Audiences, Themes, and File-upload services as a uniform JSON HTTP API. This contract describes the **target agent-ready shape** of the API: every documented endpoint returns a uniform success envelope `{ \"success\": true, \"data\": { ... } }` or a uniform error envelope `{ \"success\": false, \"data\": null, \"error\": { \"code\": \"...\", \"message\": \"...\", \"details\": { ... } } }`. Error codes are drawn from a stable catalog (see `ErrorCode`). The contract is additive: handlers may continue to emit legacy keys alongside the documented ones for backwards compatibility, so schemas explicitly allow additional properties at the envelope and data levels. Several endpoints kick off long-running background work and return a `callback_id` that the client polls against a corresponding status endpoint. The canonical async polling endpoint for the Template Converter family is **`GET /api/v2/template-converter/status/{callback_id}`** which uses strict HTTP-status mapping (200 only on workflow success, 4xx/5xx on workflow failure). The v1 polling endpoint at `/api/v1/template-converter/status/{callbackId}` (and its REST alias `GET /api/v1/template-conversions/{callback_id}`) continues to be served with legacy semantics (HTTP 200 with `status` field) and is intentionally omitted from this documentation. **REST resource aliases (v1.1).** AutoGenerator and Template Converter endpoints are documented here under their REST-resource path names (`/api/v1/autogenerations`, `/api/v1/template-conversions`). The legacy RPC-style paths under `/api/v1/autogenerator/*` and `/api/v1/template-converter/*` continue to be served indefinitely; they return a `Deprecation: true` header pointing to the successor alias. **Conventions that apply to every endpoint** (full reference in the companion guides on this documentation site): - **Auth:** API key as a Bearer token — `Authorization: Bearer <key>`. Each key is scoped to an allow-list of endpoint paths; an out-of-scope call returns `404 ENDPOINT_NOT_FOUND`. - **Rate limits:** gateway throttle 10 req/s sustained, 5 burst, 1,000 req/day per key; per-company per-category 60-second sliding windows; annual quotas (50,000 slide generations/yr, 1,000,000 downloads/yr). Limit breaches return `429` with `error.code` `TOO_MANY_REQUESTS` (gateway), `RATE_LIMIT_EXCEEDED` (per-category), or `USAGE_LIMIT_EXCEEDED` (annual). - **Errors:** every error uses the `{ success:false, data:null, error:{ code, message, details } }` envelope with stable, documented `code` values. - **Idempotency & pagination:** mutating requests accept an `Idempotency-Key`; list endpoints accept opt-in `limit`/`cursor` paging. **Building with an AI agent?** Prezent ships a first-class Model Context Protocol (MCP) server. The hosted endpoint is `https://mcp.myprezent.com/mcp` (OAuth 2.1, works with Claude.ai Custom Connectors); a local stdio server is published on PyPI as `prezent-mcp-server` and plugs into Claude Desktop, Cursor, Cline, Continue, and Zed. The MCP tools wrap the same REST endpoints described here. **Official SDKs.** Typed REST clients are published for Python, TypeScript, Go, Java, Ruby, C#, and PHP — generated from and versioned against this spec. See the SDKs guide for per-language install commands. **Out of scope of this document:** SCIM endpoints under `/api/v1/scim/*`. Those endpoints conform to RFC 7644 (SCIM 2.0) and follow a different envelope (`schemas`, `Resources`, `totalResults`, etc.). They are documented separately at /docs/scim-user-management.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
prezent_sdk-0.1.0.tar.gz
(124.0 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
prezent_sdk-0.1.0-py3-none-any.whl
(493.0 kB
view details)
File details
Details for the file prezent_sdk-0.1.0.tar.gz.
File metadata
- Download URL: prezent_sdk-0.1.0.tar.gz
- Upload date:
- Size: 124.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cc43d67a408e8bbedec4984b9dcc92b96c916d01cc03ff44ddd8e85c6a2b48f0
|
|
| MD5 |
5a1c8628a28f218f7964b08c89d91e0e
|
|
| BLAKE2b-256 |
e0394498a78cd4cadddc74528fed4bd35afffde92b62daf9b9dbb27e2d1d3774
|
File details
Details for the file prezent_sdk-0.1.0-py3-none-any.whl.
File metadata
- Download URL: prezent_sdk-0.1.0-py3-none-any.whl
- Upload date:
- Size: 493.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
765127913c9d710472d6b56f001dcbff806e09b63851d56ce31c61e3f3a550fe
|
|
| MD5 |
aeb83d627ea7f5444e0a0c611429ff1f
|
|
| BLAKE2b-256 |
930a711000238ba9c7c7e5e8d16e36be5310c7b90edf07d239d8ae0babb9bd15
|