Update contact
Update an existing contact's email, subscription state, or data fields.
Authorization
ApiKeyAuth API Key authentication. The project is automatically derived from the key.
/v1/track requires a public key (pk_*) — it is the one endpoint intended for client-side use, and a secret key is rejected there with 401.
Every other endpoint requires a secret key (sk_*) and rejects public keys with 401.
So the two key types are not interchangeable in either direction: pick the key that matches the endpoint you are calling.
In: header
Path Parameters
Request Body
application/json
Change the contact's email address. Returns 409 if another contact in the project already uses this email.
emailUpdate subscription state. Flipping this fires contact.subscribed or contact.unsubscribed.
Patch contact data. null deletes a key, empty strings are ignored, primitives are stored. Reserved keys are silently filtered out.
Response Body
application/json
application/json
application/json
application/json
curl -X PATCH "https://api.plunk.jimster.dev/contacts/string" \ -H "Content-Type: application/json" \ -d '{}'{
"id": "string",
"email": "user@example.com",
"subscribed": true,
"data": {},
"createdAt": "2019-08-24T14:15:22Z",
"updatedAt": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "INVALID_API_KEY",
"message": "Invalid secret API key. This endpoint requires a secret key (sk_*), not a public key.",
"statusCode": 401,
"requestId": "8f14e45f-ceea-467a-9575-1f0f38e0b1c2"
},
"timestamp": "2025-01-15T10:30:00.000Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"statusCode": 0,
"requestId": "string",
"errors": [
{
"field": "string",
"message": "string",
"code": "string",
"received": null
}
],
"details": {},
"suggestion": "string"
},
"timestamp": "2019-08-24T14:15:22Z"
}{
"success": false,
"error": {
"code": "string",
"message": "string",
"statusCode": 0,
"requestId": "string",
"errors": [
{
"field": "string",
"message": "string",
"code": "string",
"received": null
}
],
"details": {},
"suggestion": "string"
},
"timestamp": "2019-08-24T14:15:22Z"
}