Retrieve a recipient
One recipient with its certificate.
Scope: recipients:read.
Authorization
bearerAuth A Platform API token, wyc_live_... or wyc_test_..., created at Settings > API tokens in the dashboard.
In: header
Path Parameters
Id of the recipient.
^rcp_[A-Za-z0-9]{24}$Response Body
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/recipients/string"{ "id": "rcp_1vT9yN6pDmQ2xL7rCkZa8bW3", "object": "recipient", "livemode": true, "first_name": "Jane", "last_name": "Doe", "email": "jane@example.com", "language": "nl", "external_reference": "ORDER-5012", "trees": 1, "project": "prj_9Lp3xW7mQv2kT8bZa4yR6cN1", "message": "Thank you for your order.", "source": "api", "certificate": { "id": "cert_3pDmQ2xL7rCkZa8bW1vT9yN6", "object": "certificate", "livemode": true, "type": "personal", "number": "WYC-2026-000418", "trees": 1, "project": "prj_9Lp3xW7mQv2kT8bZa4yR6cN1", "recipient": "rcp_1vT9yN6pDmQ2xL7rCkZa8bW3", "allocations": [ "alloc_6yN3pDmQ2xL7rCkZa8bW1vT9" ], "language": "nl", "issued_at": "2026-09-28T09:15:00Z", "url": "https://woodyou.care/certificate/cert_3pDmQ2xL7rCkZa8bW1vT9yN6", "download_url": "https://woodyou.care/certificate/cert_3pDmQ2xL7rCkZa8bW1vT9yN6/download?expires=1790600000&signature=...", "created_at": "2026-09-28T09:15:00Z", "updated_at": "2026-09-28T09:15:00Z" }, "allocations": [ "alloc_6yN3pDmQ2xL7rCkZa8bW1vT9" ], "email_sent_at": "2026-09-28T09:15:05Z", "claimed_at": null, "created_at": "2026-09-28T09:15:00Z", "updated_at": "2026-09-28T09:15:05Z"}Create a recipient POST
Assigns `trees` trees from your unassigned trees to a new recipient and issues a personal certificate. The trees come from the oldest unassigned allocation first, from `project` when given. Fails with `422 no_trees_available` when your company has too few unassigned trees; pledge more trees at the Foundation first. Requires an `Idempotency-Key`. Send `external_reference` (your order or customer number) so the same customer can never be created twice. The certificate is generated right after the response; `certificate` is `null` until then and the `certificate.created` webhook tells you when it is ready. With `send_email` the recipient receives it by email in their `language`. Scope: `recipients:write`.
Update a recipient PATCH
Changes the given fields. Changing `first_name`, `last_name`, `language` or `message` regenerates the certificate; the `certificate.created` webhook fires again. The number of trees cannot change. Scope: `recipients:write`.