curl --request POST \
--url https://app.useqx.com/api/v1/contacts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tax_id": "12.345.678/0001-95",
"email": "fiscal@importadora.com.br",
"name": "Importadora Exemplo Ltda"
}
'{
"id": "com_12",
"type": "company",
"name": "Importadora Exemplo Ltda",
"trade_name": null,
"email": "fiscal@importadora.com.br",
"tax_id": "12345678000195",
"lookup_status": "pending",
"discarded": false,
"origin": "contact",
"created_at": "2026-09-25T10:30:00.000-03:00"
}Create a contact
Creates a person from a CPF or a company from a CNPJ. QX looks up the CPF or the CNPJ after the creation, and the lookup_status shows the progress of the lookup. The creation counts toward the paid write limit of the key.
curl --request POST \
--url https://app.useqx.com/api/v1/contacts \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tax_id": "12.345.678/0001-95",
"email": "fiscal@importadora.com.br",
"name": "Importadora Exemplo Ltda"
}
'{
"id": "com_12",
"type": "company",
"name": "Importadora Exemplo Ltda",
"trade_name": null,
"email": "fiscal@importadora.com.br",
"tax_id": "12345678000195",
"lookup_status": "pending",
"discarded": false,
"origin": "contact",
"created_at": "2026-09-25T10:30:00.000-03:00"
}Authorizations
The API key of the organization, in the Authorization: Bearer <key> header. The key starts with qx_.
Headers
A unique value that your system creates for each write, such as a UUID. A repeated call with the same value and the same content gets the first response, and the API writes nothing new. The API keeps the response for 24 hours.
1 - 255Body
The CPF of the person or the CNPJ of the company, with or without punctuation. A CNPJ can have letters in the first twelve positions. The value decides the type of the contact.
"12.345.678/0001-95"
The email of the contact.
"fiscal@importadora.com.br"
The name of the contact. Without a name, the contact gets the name that the CPF or CNPJ lookup returns.
"Importadora Exemplo Ltda"
Response
The new contact.
The id of the contact. A person id starts with per_, and a company id starts with com_.
^(per|com)_[1-9][0-9]*$"com_12"
person for a person and company for a company.
person, company The name of the contact. The value is null until the CPF or CNPJ lookup returns the name.
"Importadora Exemplo Ltda"
The trade name of the company. On a person, the value is null.
"Exemplo"
The email of the contact, in lowercase.
"fiscal@importadora.com.br"
The CPF of the person or the CNPJ of the company, without punctuation and with uppercase letters. The value is null on a person who waits for the CPF confirmation.
"12345678000195"
The progress of the CPF or CNPJ lookup. not_enqueued: the lookup did not start. pending: the lookup is in progress. completed: the lookup ended. failed: the lookup failed. stale: the lookup data is old. needs_review: the person waits for the CPF confirmation.
not_enqueued, pending, completed, failed, stale, needs_review With true, the contact is archived.
contact for a contact that the organization created. shareholder for a shareholder that the CNPJ lookup created.
contact, shareholder The date and the time of the creation, in the time zone of the organization.
"2026-09-25T10:30:00.000-03:00"