API reference / Contacts
Contacts
The address book phones sync too.
Base URL https://api.zilomail.in
List contacts#
GET/v1/contacts
The person's address book (the same one phones sync over CardDAV), by name.
Query
qstringUp to 200 characters.
limitintegerHow many to return (1–200). Default 50.
cursorstringThe
next value from the previous page. Up to 500 characters.Answer · 200 OK
dataarray of objectidstringnamestring | nullemailstring | nullphonestring | nullcompanystring | nullnotesstring | nullcreatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
updatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
nextstring | nullPass as
cursor for the next page; null on the last.curl "https://api.zilomail.in/v1/contacts?limit=20" \
-H "Authorization: Bearer $ZILO_TOKEN"Answer · 200 OK
{
"data": [
{
"id": "string",
"name": "string",
"email": "string",
"phone": "string",
"company": "string",
"notes": "string",
"createdAt": "2026-10-17T09:30:00.000Z",
"updatedAt": "2026-10-17T09:30:00.000Z"
}
],
"next": "string"
}Try it
Sign in to call it as yourself.
Get a contact#
GET/v1/contacts/{id}
Path
idstringrequiredAn id this API gave out. Up to 64 characters.
Answer · 200 OK
idstringnamestring | nullemailstring | nullphonestring | nullcompanystring | nullnotesstring | nullcreatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
updatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
curl "https://api.zilomail.in/v1/contacts/ID" \
-H "Authorization: Bearer $ZILO_TOKEN"Answer · 200 OK
{
"id": "string",
"name": "string",
"email": "string",
"phone": "string",
"company": "string",
"notes": "string",
"createdAt": "2026-10-17T09:30:00.000Z",
"updatedAt": "2026-10-17T09:30:00.000Z"
}Try it
Sign in to call it as yourself.
Add a contact#
POST/v1/contacts
Needs an email address or a phone number; one contact per email address.
Body
namestring | nullemailstring | nullphonestring | nullcompanystring | nullnotesstring | nullAnswer · 201 Created
idstringnamestring | nullemailstring | nullphonestring | nullcompanystring | nullnotesstring | nullcreatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
updatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
curl -X POST "https://api.zilomail.in/v1/contacts" \
-H "Authorization: Bearer $ZILO_TOKEN" \
-H "Idempotency-Key: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"name": "Ravi Kumar",
"email": "ravi@example.com",
"phone": "+91 98765 43210",
"company": "Kumar Traders"
}'Answer · 201 Created
{
"id": "string",
"name": "string",
"email": "string",
"phone": "string",
"company": "string",
"notes": "string",
"createdAt": "2026-10-17T09:30:00.000Z",
"updatedAt": "2026-10-17T09:30:00.000Z"
}Try it
Sign in to call it as yourself.
Change a contact#
PATCH/v1/contacts/{id}
Path
idstringrequiredAn id this API gave out. Up to 64 characters.
Body
namestring | nullemailstring | nullphonestring | nullcompanystring | nullnotesstring | nullAnswer · 200 OK
idstringnamestring | nullemailstring | nullphonestring | nullcompanystring | nullnotesstring | nullcreatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
updatedAtstringISO 8601 date and time, UTC, e.g. 2026-10-17T09:30:00.000Z.
curl -X PATCH "https://api.zilomail.in/v1/contacts/ID" \
-H "Authorization: Bearer $ZILO_TOKEN" \
-H "Content-Type: application/json" \
-d '{}'Answer · 200 OK
{
"id": "string",
"name": "string",
"email": "string",
"phone": "string",
"company": "string",
"notes": "string",
"createdAt": "2026-10-17T09:30:00.000Z",
"updatedAt": "2026-10-17T09:30:00.000Z"
}Try it
Sign in to call it as yourself.
Remove a contact#
DELETE/v1/contacts/{id}
Path
idstringrequiredAn id this API gave out. Up to 64 characters.
curl -X DELETE "https://api.zilomail.in/v1/contacts/ID" \
-H "Authorization: Bearer $ZILO_TOKEN"Answers 204 with no body.
Try it
Sign in to call it as yourself.