# HubSpot Marketing Events API

> HubSpot Marketing Events API on Apizie: 36 endpoints (List, Get lists associated with a marketing event, Associate a list with a marketing event, Disassociate a list from a marketing event, …) 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/open-data:hubapi-marketing/{endpoint} or from Claude, ChatGPT and Cursor through the Apizie MCP server. Free plan: 1,000 requests a month.

- Project key: `open-data:hubapi-marketing`
- Category: Open Data
- Status: byok
- Source: https://developers.hubspot.com/docs/api/overview
- Page: https://apizie.tech/api/open-data/hubapi-marketing
- OpenAPI: https://apizie.tech/api/open-data/hubapi-marketing/openapi.json

Basepom for all HubSpot Projects

## Endpoints

### List
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-marketing-marketing-e` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| after | string | no | The cursor indicating the position of the last retrieved item. |
| limit | integer | no | The limit for response size. The default value is 10, the max number is 100 |

### Get lists associated with a marketing event
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-associations-external` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalAccountId | string | yes | The accountId that is associated with this marketing event in the external event application. |
| externalEventId | string | yes | The id of the marketing event in the external event application. |

### Associate a list with a marketing event
`POST https://apizie.tech/v1/open-data:hubapi-marketing/put-marketing-marketing-events-2026-09-associations-external` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalAccountId | string | yes | The accountId that is associated with this marketing event in the external event application. |
| externalEventId | string | yes | The id of the marketing event in the external event application. |
| listId | string | yes | The ILS ID of the list. |

### Disassociate a list from a marketing event
`POST https://apizie.tech/v1/open-data:hubapi-marketing/delete-marketing-marketing-events-2026-09-associations-exter` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalAccountId | string | yes | The accountId that is associated with this marketing event in the external event application. |
| externalEventId | string | yes | The id of the marketing event in the external event application. |
| listId | string | yes | The ILS ID of the list. |

### Get lists associated with a marketing event
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-associations-marketin` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| marketingEventId | string | yes | The internal id of the marketing event in HubSpot. |

### Associate a list with a marketing event
`POST https://apizie.tech/v1/open-data:hubapi-marketing/put-marketing-marketing-events-2026-09-associations-marketin` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| listId | string | yes | The ILS ID of the list. |
| marketingEventId | string | yes | The internal id of the marketing event in HubSpot. |

### Disassociate a list from a marketing event
`POST https://apizie.tech/v1/open-data:hubapi-marketing/delete-marketing-marketing-events-2026-09-associations-marke` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| listId | string | yes | The ILS ID of the list. |
| marketingEventId | string | yes | The internal id of the marketing event in HubSpot. |

### Record Participants by ContactId with Marketing Event External Ids
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-attendance-external` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| subscriberState | string | yes | The state of the subscriber's attendance, such as 'register', 'attend', or 'cancel'. |
| externalAccountId | string | no | The account ID associated with the marketing event in the external event application. |
| body | object | yes | JSON request body |

### Record Participants by Email with Marketing Event External Ids
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-attendance-external-2` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| subscriberState | string | yes | The state of the subscriber, which can be used to indicate their attendance status. |
| externalAccountId | string | no | The account ID associated with the marketing event in the external event application. |
| body | object | yes | JSON request body |

### Delete Multiple Marketing Events by ObjectId
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-batch-archive-archiv` (byok)

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

### Update Multiple Marketing Events by ObjectId
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-batch-update-update` (byok)

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

### Create a marketing event
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-create` (byok)

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

### Delete Multiple Marketing Events by External Ids
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-delete-archiv` (byok)

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

### Find App-Specific Marketing Events by External Event Id
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-events-search-do-sear` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| q | string | yes | The search query string used to filter marketing events. |

### Create or Update Multiple Marketing Events
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-upsert-upsert` (byok)

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

### Get Marketing Event by External IDs
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-events-external-event` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| externalAccountId | string | yes | The accountId associated with the marketing event in the external event application. |

### Create or update a marketing event
`POST https://apizie.tech/v1/open-data:hubapi-marketing/put-marketing-marketing-events-2026-09-events-external-event` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The id of the marketing event in the external event application. |
| body | object | yes | JSON request body |

### Update Marketing Event by External IDs
`POST https://apizie.tech/v1/open-data:hubapi-marketing/patch-marketing-marketing-events-2026-09-events-external-eve` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| externalAccountId | string | yes | The account ID associated with this marketing event in the external event application. |
| body | object | yes | JSON request body |

### Delete Marketing Event by External Ids
`POST https://apizie.tech/v1/open-data:hubapi-marketing/delete-marketing-marketing-events-2026-09-events-external-ev` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. This parameter is required. |
| externalAccountId | string | yes | The account ID associated with the marketing event in the external event application. This parameter is required. |

### Mark a marketing event as cancelled
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-external-even` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The unique identifier of the marketing event in the external event application. |
| externalAccountId | string | yes | The unique identifier for the account associated with the marketing event in the external event application. |

### Mark a marketing event as completed
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-external-even-2` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| externalAccountId | string | yes | The ID of the external account associated with the marketing event. |
| body | object | yes | JSON request body |

### Record a subscriber state by contact email
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-external-even-3` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| subscriberState | string | yes | The state of the subscriber, which can be used to categorize subscribers based on their engagement with the event. |
| externalAccountId | string | yes | The account ID associated with the marketing event in the external event application. This parameter is required. |
| body | object | yes | JSON request body |

### Record a subscriber state by contact ID
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-events-external-even-4` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The ID of the marketing event in the external event application. |
| subscriberState | string | yes | The state of the subscriber, which may include values such as 'register', 'attend', or 'cancel'. |
| externalAccountId | string | yes | The account ID associated with the marketing event in the external event application. |
| body | object | yes | JSON request body |

### Read participations breakdown by Contact identifier
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-participations-contac` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| contactIdentifier | string | yes | The identifier of the Contact. It may be email or internal id. |
| after | string | no | The cursor indicating the position of the last retrieved item. |
| limit | integer | no | The limit for response size. The default value is 10, the max number is 100 |
| state | string | no | The participation state value. It may be REGISTERED, CANCELLED, ATTENDED, NO_SHOW |

### Read participations counters by Marketing Event external identifier
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-participations-extern` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalAccountId | string | yes | The accountId that is associated with this marketing event in the external event application. |
| externalEventId | string | yes | The id of the marketing event in the external event application. |

### Read participations breakdown by Marketing Event external identifier
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-participations-extern-2` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalAccountId | string | yes | The accountId that is associated with this marketing event in the external event application. |
| externalEventId | string | yes | The id of the marketing event in the external event application. |
| after | string | no | The cursor indicating the position of the last retrieved item. |
| contactIdentifier | string | no | The identifier of the Contact. It may be email or internal id. |
| limit | integer | no | The limit for response size. The default value is 10, the max number is 100 |
| state | string | no | The participation state value. It may be REGISTERED, CANCELLED, ATTENDED, NO_SHOW |

### Read participations counters by Marketing Event internal identifier
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-participations-market` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| marketingEventId | integer | yes | The internal id of the marketing event in HubSpot. |

### Read participations breakdown by Marketing Event internal identifier
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-participations-market-2` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| marketingEventId | integer | yes | The internal id of the marketing event in HubSpot. |
| after | string | no | The cursor indicating the position of the last retrieved item. |
| contactIdentifier | string | no | The identifier of the Contact. It may be email or internal id. |
| limit | integer | no | The limit for response size. The default value is 10, the max number is 100 |
| state | string | no | The participation state value. It may be REGISTERED, CANCELLED, ATTENDED, NO_SHOW |

### Retrieve the application settings
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-app-id-settings-get-a` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | integer | yes | The unique identifier of the application for which settings are being retrieved. It is an integer value. |

### Update the application settings
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-app-id-settings-upda` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| appId | integer | yes | The unique identifier of the marketing event application whose settings are to be updated. |
| body | object | yes | JSON request body |

### Find Marketing Events by External Event Id
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-external-event-id-ide` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| externalEventId | string | yes | The id of the marketing event in the external event application. |

### Get Marketing Event by objectId
`GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-object-id-get-by-obje` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| objectId | string | yes | The internal id of the marketing event in HubSpot. |

### Update Marketing Event by objectId
`POST https://apizie.tech/v1/open-data:hubapi-marketing/patch-marketing-marketing-events-2026-09-object-id-update-by` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| objectId | string | yes | The internal id of the marketing event in HubSpot. |
| body | object | yes | JSON request body |

### Delete Marketing Event by objectId
`POST https://apizie.tech/v1/open-data:hubapi-marketing/delete-marketing-marketing-events-2026-09-object-id-archive` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| objectId | string | yes | The internal id of the marketing event in HubSpot. |

### Record Participants by ContactId with Marketing Event Object Id
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-object-id-attendance` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| objectId | string | yes | The internal id of the marketing event in HubSpot. |
| subscriberState | string | yes | The attendance state value. It may be 'register', 'attend' or 'cancel' |
| body | object | yes | JSON request body |

### Record Participants by Email with Marketing Event Object Id
`POST https://apizie.tech/v1/open-data:hubapi-marketing/post-marketing-marketing-events-2026-09-object-id-attendance-2` (byok)

| Parameter | Type | Required | Description |
|---|---|---|---|
| objectId | string | yes | The internal id of the marketing event in HubSpot. |
| subscriberState | string | yes | The attendance state value. It may be 'register', 'attend' or 'cancel' |
| body | object | yes | JSON request body |

## Example
```
curl "https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-marketing-marketing-e" \
  -H "x-api-key: $APIZIE_KEY" \
  -H "x-upstream-key: $PROVIDER_KEY"
```

## FAQ

### How do I call the HubSpot Marketing Events API?
Create a free Apizie key, then send GET https://apizie.tech/v1/open-data:hubapi-marketing/get-marketing-marketing-events-2026-09-marketing-marketing-e with the header x-api-key. Every endpoint returns { project, data, timestamp }.

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

### Can AI agents use the HubSpot Marketing Events 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 open-data:hubapi-marketing.

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