.vcf contact format used by phones/email clients) and bulk-creates/updates contacts from them.| vCard line | Maps to |
|---|---|
FN: | name |
TEL...: | phoneNumber (parses past TEL;type=CELL;...: prefixes to the actual number) |
EMAIL...: | email |
ORG: | company |
TITLE: | position |
duplicateStrategy controls what happens:| Value | Name | Behavior |
|---|---|---|
| 1 | Skip (default) | Leave the existing contact untouched |
| 2 | Update | Overwrite the existing contact with the imported data |
| 3 | Error | Mark that entry as failed instead of touching the existing contact |
curl --location 'https://api.voxa.sa/v1/contacts/import/vcards' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
"vCards": [
"BEGIN:VCARD\nVERSION:3.0\nFN:Ahmed Al-Otaibi\nTEL:+966501234567\nEMAIL:ahmed@example.com\nORG:Acme Co\nTITLE:Manager\nEND:VCARD"
],
"duplicateStrategy": 1
}'{
"totalContacts": 1,
"successCount": 1,
"failedCount": 0,
"skippedCount": 0,
"updatedCount": 0,
"results": [
{
"phoneNumber": "+966501334567",
"name": "Ahmed Noshy",
"contactId": "3a21f3...............",
"isSuccess": true,
"status": 1,
"errorMessage": null
}
]
}