API overview
| Reference | For |
|---|---|
@lettrove/embed | Opening the editor in a page: createEditor, every option, method and event |
@lettrove/react | The <LettroveEditor /> React component |
@lettrove/vue | The same component for Vue 3 |
@lettrove/node | Your server: tokens, designs, exports, rendering, erasure, webhook verification |
| REST API | The same server calls over HTTPS, from any language. Also an OpenAPI 3.1 document |
| Webhook events | What Lettrove sends your server |
| Error codes | Every code, what it means, what to do |
| The design document | What you may rely on in a stored design |
| Glossary | One word for each idea |
Conventions
- Base address:
https://api.lettrove.com. Server routes are under/embed/v1/. - Authentication: your secret key, as
Authorization: Bearer lt_sk_test_…orlt_sk_live_…. Only from your server. - JSON in and out, UTF-8. Request bodies are strict: an unknown field is refused, naming it.
- Ids are strings. Design ids are 26-character ids such as
01J9ZQ3W8D2K7M5T1V4XG6HB0R; your own ids for people are whatever you chose, up to 256 characters. - Times are ISO 8601 in UTC:
2026-10-07T16:03:10.000Z. - Lists come newest first, a page at a time:
{ "items…": […], "nextCursor": "…" }; passcursorfor the next page;nextCursorisnullon the last. - Errors:
{ "error": "…", "code": "…", "requestId": "…" }with an HTTP status; quoterequestIdto support. - Rate limits per key, per minute; over one,
429withRetry-Afterin seconds. See Limits. - Versioning: within 1.x, fields are only ever added. Ignore fields you do not know. Anything added after 1.0 says Added in 1.y.