Contacts
Enrich a contact's mobile phone (asynchronous)
Starts a mobile phone enrichment for the given contact and returns immediately, without waiting for the enrichment providers to respond. Recommended over the synchronous route for AI/MCP integrations and any client that cannot hold a long-running HTTP connection. Needs the contacts:write scope.
To verify completion, poll Get an enrichment job with the returned job_id until its status is no longer pending, or poll Get one contact: the enrichment is done once enriching_phone is false. The phone field is then filled if a phone number was found, and stays empty otherwise.
Costs 10 credits, charged only when a phone number is found (a miss or a provider error is refunded). A contact that already has a phone number gets it back for free, without a lookup. The balance is checked up front: with fewer than 10 credits the call fails with 402 and no job is started.
https://app.replysparrow.com/api/v1/contacts/{id}/enrich/phone-asyncAuthorizations
Path Parameters
Contact id
Response
application/jsonPhone enrichment accepted and running in the background
Always true
Contact being enriched
How to check for completion
Enrichment job id, for Get an enrichment job
Always pending at first
curl --request POST \ --url https://app.replysparrow.com/api/v1/contacts/string/enrich/phone-async \ --header 'Authorization: Bearer <token>'{ "accepted": true, "contact_id": "8f1c2c3e-5b7a-4a51-9d0e-2b6f8f6d9c11", "job_id": "0192c4a1-7d2e-7f3a-9b10-5e6f7a8b9c0d", "status": "pending", "message": "Poll GET /api/v1/contacts/enrich/jobs/0192c4a1-7d2e-7f3a-9b10-5e6f7a8b9c0d until status is no longer pending, or GET /api/v1/contacts/8f1c2c3e-5b7a-4a51-9d0e-2b6f8f6d9c11: the lookup is done once enriching_phone is false."}