API reference · Account
Set email preferences
PATCH /v1/email-preferences
Set how often the attention summary may arrive and whether optional product emails may send. Send at least one field. `daily` sends at most once a day and only on days something is actually wrong; `weekly` gathers anything still unresolved into at most one email a week; `off` stops it entirely. `onboarding` controls optional product emails. There is deliberately no MCP tool for this: these emails are how a person learns a post did not go out, and an agent that could switch them off could hide a failure it caused.
Request
Authenticate with a bearer API key. Agents calling over MCP authorise with OAuth instead and never handle the key.
curl -X PATCH https://api.postlake.dev/v1/email-preferences \
-H "Authorization: Bearer $POSTLAKE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"digestFrequency":"…","onboarding":true}'Body
| Field | Type | Required | What it is |
|---|---|---|---|
digestFrequency | string (off, weekly, daily) | No | |
onboarding | boolean | No | Whether to receive optional product emails. |
Response
Updated preferences (200).
Example
"…"Limits
Write operations are limited per account, and rate-limit responses include Retry-After. Do not automatically retry a write unless this operation explicitly documents idempotency.
Calling this from an agent
This operation is part of the REST surface. Agents working over the hosted MCP server reach the same product through tools instead, and authorise with OAuth so your API key is never pasted into a chat. See the MCP server.
Errors
Every failure uses one shape: a stable type, a granular code, the field at fault in param, and a plain-language fix. An agent can act on it without a person reading the message. See Errors and retries.
Idempotency-Key.Common questions
Is it safe to retry this call?
Do not automatically repeat a write after a timeout unless that endpoint explicitly documents idempotency. First read the resulting state; a second request could repeat the action.
What happens when it fails?
You get one error shape: a stable type, a granular code you can branch on, the offending field in param, and a fix written so an agent can correct itself rather than stop. Full list on Errors and retries.