# Contacts API

> Contacts API on Apizie: 13 endpoints (Retrieve contacts, Create a contact, Archive a batch of contacts, Create a batch of contacts, …) returned as clean JSON through one API key. Send your own provider key in the x-upstream-key header. Call it over REST at https://apizie.tech/v1/business:hubspot-contacts/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `business:hubspot-contacts`
- Category: Business
- Status: byok
- Source: https://hubspot
- Page: https://apizie.tech/api/business/hubspot-contacts
- OpenAPI: https://apizie.tech/api/business/hubspot-contacts/openapi.json

CRM objects such as companies, contacts, deals, line items, products, tickets, and quotes are standard objects in HubSpot’s CRM. These core building blocks support custom properties, store critical information, and…

## Endpoints

### Retrieve contacts
`GET https://apizie.tech/v1/business:hubspot-contacts/get-crm-v3-objects-contacts-get-page` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| after | string | no | The paging cursor token of the last successfully read resource will be returned as the `paging.next.after` JSON property of a paged… |
| archived | boolean | no | Whether to return only results that have been archived. |
| associations | array | no | A comma separated list of object types to retrieve associated IDs for. If any of the specified associations do not exist, they will be… |
| limit | integer | no | The maximum number of results to display per page. |
| properties | array | no | A comma separated list of the properties to be returned in the response. If any of the specified properties are not present on the… |
| propertiesWithHistory | array | no | A comma separated list of the properties to be returned along with their history of previous values. If any of the specified properties… |

### Create a contact
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Archive a batch of contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-batch-archive-archive` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Create a batch of contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-batch-create-create` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Retrieve a batch of contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-batch-read-read` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| archived | boolean | no | Whether to return only results that have been archived. |
| body | object | yes | JSON request body |

### Update a batch of contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-batch-update-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Create or update a batch of contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-batch-upsert-upsert` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Permanently delete a contact (GDPR-compliant)
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-gdpr-delete-purge` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Merge two contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-merge-merge` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Search for contacts
`POST https://apizie.tech/v1/business:hubspot-contacts/post-crm-v3-objects-contacts-search-do-search` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| body | object | yes | JSON request body |

### Retrieve a contact
`GET https://apizie.tech/v1/business:hubspot-contacts/get-crm-v3-objects-contacts-contact-id-get-by-id` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contactId | string | yes |  |
| archived | boolean | no | Whether to return only results that have been archived. |
| associations | array | no | A comma separated list of object types to retrieve associated IDs for. If any of the specified associations do not exist, they will be… |
| idProperty | string | no | The name of a property whose values are unique for this object type |
| properties | array | no | A comma separated list of the properties to be returned in the response. If any of the specified properties are not present on the… |
| propertiesWithHistory | array | no | A comma separated list of the properties to be returned along with their history of previous values. If any of the specified properties… |

### Update a contact
`POST https://apizie.tech/v1/business:hubspot-contacts/patch-crm-v3-objects-contacts-contact-id-update` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contactId | string | yes |  |
| idProperty | string | no | The name of a property whose values are unique for this object type |
| body | object | yes | JSON request body |

### Archive a contact
`POST https://apizie.tech/v1/business:hubspot-contacts/delete-crm-v3-objects-contacts-contact-id-archive` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contactId | string | yes |  |

## Example
```
curl "https://apizie.tech/v1/business:hubspot-contacts/get-crm-v3-objects-contacts-get-page" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the Contacts API?
Create a free Apizie key, then send GET https://apizie.tech/v1/business:hubspot-contacts/get-crm-v3-objects-contacts-get-page with the header x-api-key. Every endpoint returns { project, data, timestamp }.

### Is the Contacts API free on Apizie?
Yes. The Free plan includes 1,000 requests a month at 100 requests a minute, no credit card. Contacts itself also needs your own key from hubspot.

### Can AI agents use the Contacts API?
Yes. Add the Apizie MCP server (https://apizie.tech/mcp) to Claude, ChatGPT, Cursor or VS Code, then ask in plain language. The agent calls run_scraper with project key business:hubspot-contacts.

### What is the status of the Contacts API?
Needs your own provider key (bring your own key)
