Skip to main content
POST
/
recipients
/
{recipient_id}
/
contacts
cURL
curl -X POST https://api.bodhveda.com/recipients/recipient_123/contacts \
  -H "Authorization: Bearer bv_xxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "medium": "email",
    "address": "alice@example.com",
    "is_primary": true
  }'
{
  "message": "Contact created",
  "data": {
    "id": 1,
    "medium": "email",
    "address": "alice@example.com",
    "is_primary": true,
    "verified_at": null,
    "created_at": "2025-11-07T05:31:56Z",
    "updated_at": "2025-11-07T05:31:56Z"
  }
}
{
"message": "Contact already exists"
}
Register a contact address for a recipient. To send email to a recipient, add an email contact and mark it is_primary. 💡 Sync this server-side (e.g. on your /me endpoint) so the address never rides a browser request.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer bv_xxxxxxxxx, where bv_xxxxxxxxx is your API Key with Full access or Recipient acess scope.

Path Parameters

recipient_id
string
required

The unique identifier of the recipient.

Body

application/json
medium
enum<string>
required

The delivery transport. Only email is exercised today.

Available options:
email,
sms,
web_push,
mobile_push
address
string
required

The contact address. For email it must contain @ and is stored lowercased.

is_primary
boolean
default:false

Mark this as the primary contact for its medium. Only one primary is allowed per (recipient, medium).

Response

Contact created