Early access — Cases are in preview and may change in backwards-incompatible ways before they are marked stable. Reach out before building on them in production.
How it works
- Palm opens a case on the filing and sends a
case.openedwebhook. - Read what it asks for. Each case carries a list of the values Palm needs.
- Collect the answers from your member, rendering your prompts from that list.
- Submit the response.
- Palm acts on it and the filing continues.
What a case asks for
There is no fixed catalogue of questions, so a case arrives with a description of exactly what to collect rather than a scenario code you switch on. For each value it gives you the key to answer under, the type, a human-readable prompt, whether it is required, and an example of the expected format. That is enough to build the form at the moment you need it. Write one handler that reads the list and renders a prompt per entry, and it covers every case without a screen per scenario. For the exact object and field definitions, see Retrieve a case.Respond to a case
Bash
case.opened payload carries the whole case, so you can act on the webhook without a follow-up read. Key each answer by the field name Palm asked for, and submit while the case is still waiting on you.
A successful submission hands the case back to Palm and fires case.updated. When the work behind it finishes, Palm closes the case and fires case.resolved.
Whose turn it is
The status says who acts next.needs_response is yours, and it is the only state that accepts a response. under_review means your answer arrived and Palm is acting on it, with nothing needed from you.
Two states are terminal. A case reaches resolved when the work moved forward, and superseded when the filing underneath it finished or stopped first. Either way, resolution_reason records why it closed.
Find cases
Bash
needs_response is a reasonable safety net if a webhook delivery fails.
Webhooks
Three events cover the full lifecycle:case.opened when Palm needs you, case.updated when an open case changes, and case.resolved when it closes. Each payload carries the full case object.
See Webhooks for payloads, delivery, retries, and signature verification.

