---
title: "Update Marketing Event by External IDs"
method: PATCH
path: "/marketing/marketing-events/2026-03/events/{externalEventId}"
tags: ["Basic"]
---

# Update Marketing Event by External IDs

`PATCH /marketing/marketing-events/2026-03/events/{externalEventId}`

Updates the details of an existing Marketing Event identified by its externalAccountId, externalEventId if it exists.

Only Marketing Events created by the same app can be updated.

## Path parameters

- `externalEventId` string, required

## Query parameters

- `externalAccountId` string, required

## Request body

- MarketingMarketingEventsMarketingEventUpdateRequestParams
  - `customProperties` PropertyValue[], required — A list of PropertyValues. These can be whatever kind of property names and values you want. However, they must already exist on the HubSpot account's definition of the MarketingEvent Object. If they don't they will be filtered out and not set. In order to do this you'll need to create a new PropertyGroup on the HubSpot account's MarketingEvent object for your specific app and create the Custom Property you want to track on that HubSpot account. Do not create any new default properties on the MarketingEvent object as that will apply to all HubSpot accounts.
    - `dataSensitivity` 'high' | 'none' | 'standard', required — The sensitivity level of the property, such as "non_sensitive", "sensitive", and "highly_sensitive".
    - `isEncrypted` boolean, required — Whether the property value is encrypted.
    - `isLargeValue` boolean, required — Indicates if the value exceeds normal size limits.
    - `name` string, required — The unique property name.
    - `persistenceTimestamp` integer, required — When the value was persisted to database, in epoch milliseconds.
    - `requestId` string, required — A unique ID associated with this request.
    - `selectedByUser` boolean, required — Whether the value was selected by a user.
    - `selectedByUserTimestamp` integer, required — The timestamp when the value was selected by a user, if applicable.
    - `source` 'ACADEMY' | 'ACCEPTANCE_TEST' | 'ACTIVITY_AUTO_ASSOCIATE' | 'ACTIVITY_LOG_REVERT' | 'ADS' | 'AI_GROUP' | 'ANALYTICS' | 'API' | 'APPROVALS' | 'ASSISTS' | 'ASSOCIATIONS' | 'AUTO_ASSOCIATE_BY_DOMAIN' | 'AUTOMATION_JOURNEY' | 'AUTOMATION_PLATFORM' | 'AVATARS_SERVICE' | 'BATCH_UPDATE' | 'BCC_TO_CRM' | 'BEHAVIORAL_EVENTS' | 'BET_ASSIGNMENT' | 'BET_CRM_CONNECTOR' | 'BIDEN' | 'BILLING' | 'BOT' | 'BREEZE_AGENT' | 'CALCULATED' | 'CENTRAL_EXCHANGE_RATES' | 'CHATSPOT' | 'CLONE_OBJECTS' | 'COMMUNICATOR' | 'COMPANIES' | 'COMPANY_FAMILIES' | 'COMPANY_INSIGHTS' | 'CONNECTED_ACCOUNT' | 'CONTACTS' | 'CONTACTS_WEB' | 'CONTENT_MEMBERSHIP' | 'CONVERSATIONAL_ENRICHMENT' | 'CONVERSATIONS' | 'CRM_PROCESSES_PLATFORM' | 'CRM_UI' | 'CRM_UI_BULK_ACTION' | 'CUSTOMER_AGENT' | 'DATA_ENRICHMENT' | 'DATA_QUALITY' | 'DATASET' | 'DEALS' | 'DEFAULT' | 'DELETE_OBJECTS' | 'DI_WRITE_TO_CRM' | 'EMAIL' | 'EMAIL_INBOX_IMPORT' | 'EMAIL_INTEGRATION' | 'ENGAGEMENTS' | 'EXTENSION' | 'FILE_MANAGER' | 'FLYWHEEL_PRODUCT_DATA_SYNC' | 'FORECASTING' | 'FORM' | 'FORWARD_TO_CRM' | 'GMAIL_INTEGRATION' | 'GOALS' | 'HEISENBERG' | 'HELP_DESK' | 'HELP_DESK_AI' | 'IMPORT' | 'INTEGRATION' | 'INTEGRATIONS_PLATFORM' | 'INTEGRATIONS_SYNC' | 'INTENT' | 'INTERNAL_PROCESSING' | 'LEADIN' | 'LEGAL_BASIS_REMEDIATION' | 'MARKET_SOURCING' | 'MARKETPLACE' | 'MARKETS' | 'MEETINGS' | 'MERGE_COMPANIES' | 'MERGE_CONTACTS' | 'MERGE_OBJECTS' | 'MERGE_REVERT_OBJECTS' | 'MICROAPPS' | 'MIGRATION' | 'MOBILE_ANDROID' | 'MOBILE_IOS' | 'PAYMENTS' | 'PIPELINE_SETTINGS' | 'PLAYBOOKS' | 'PORTAL_OBJECT_SYNC' | 'PORTAL_USER_ASSOCIATOR' | 'PRESENTATIONS' | 'PRIMARY_AUTOMATION' | 'PROPERTY_DEFAULT_VALUE' | 'PROPERTY_RESTORE' | 'PROPERTY_SETTINGS' | 'PROSPECTING_AGENT' | 'QUOTAS' | 'QUOTES' | 'RECYCLING_BIN' | 'RESTORE_OBJECTS' | 'REVENUE_PLATFORM' | 'SALES' | 'SALES_MESSAGES' | 'SALESFORCE' | 'SEQUENCES' | 'SETTINGS' | 'SIDEKICK' | 'SIGNALS' | 'SLACK_INTEGRATION' | 'SMART_DATA_CAPTURE' | 'SOCIAL' | 'SUCCESS' | 'TALLY' | 'TASK' | 'UNKNOWN' | 'WAL_INCREMENTAL' | 'WORK_UI' | 'WORKFLOW_CONTACT_DELETE_ACTION' | 'WORKFLOWS', required — The origin of the property value, such as "IMPORT" or "API".
    - `sourceId` string, required — The ID of the property source indicating where it was created.
    - `sourceLabel` string, required — A human-readable label.
    - `sourceMetadata` string, required — Metadata providing additional context about the source.
    - `sourceUpstreamDeployable` string, required
    - `sourceVid` integer[], required — The unique identifier associated with the source.
    - `timestamp` integer, required — When the value was set, as a 64-bit integer.
    - `unit` string, required — The unit of measurement or context for the value.
    - `updatedByUserId` integer, required — The ID of the user who updated the property.
    - `useTimestampAsPersistenceTimestamp` boolean, required — Flag indicating whether to use the timestamp field as the persistence timestamp.
    - `value` string, required — The property value.
  - `endDateTime` string, date-time — The end date and time of the marketing event.
  - `eventCancelled` boolean — Indicates if the marketing event has been cancelled. Defaults to `false`
  - `eventCompleted` boolean — Indicates if the marketing event has been completed. Defaults to `false`
  - `eventDescription` string — The description of the marketing event.
  - `eventName` string — The name of the marketing event.
  - `eventOrganizer` string — The name of the organizer of the marketing event.
  - `eventType` string — Describes what type of event this is. For example: `WEBINAR`, `CONFERENCE`, `WORKSHOP`
  - `eventUrl` string — A URL in the external event application where the marketing event can be managed.
  - `startDateTime` string, date-time — The start date and time of the marketing event.

## Response `200`

successful operation

- MarketingMarketingEventsMarketingEventPublicDefaultResponse
  - `createdAt` string, date-time, required — The creation date and time of the marketing event.
  - `customProperties` PropertyValue[], required — A list of PropertyValues. These can be whatever kind of property names and values you want. However, they must already exist on the HubSpot account's definition of the MarketingEvent Object. If they don't they will be filtered out and not set. In order to do this you'll need to create a new PropertyGroup on the HubSpot account's MarketingEvent object for your specific app and create the Custom Property you want to track on that HubSpot account. Do not create any new default properties on the MarketingEvent object as that will apply to all HubSpot accounts.
    - `dataSensitivity` 'high' | 'none' | 'standard', required — The sensitivity level of the property, such as "non_sensitive", "sensitive", and "highly_sensitive".
    - `isEncrypted` boolean, required — Whether the property value is encrypted.
    - `isLargeValue` boolean, required — Indicates if the value exceeds normal size limits.
    - `name` string, required — The unique property name.
    - `persistenceTimestamp` integer, required — When the value was persisted to database, in epoch milliseconds.
    - `requestId` string, required — A unique ID associated with this request.
    - `selectedByUser` boolean, required — Whether the value was selected by a user.
    - `selectedByUserTimestamp` integer, required — The timestamp when the value was selected by a user, if applicable.
    - `source` 'ACADEMY' | 'ACCEPTANCE_TEST' | 'ACTIVITY_AUTO_ASSOCIATE' | 'ACTIVITY_LOG_REVERT' | 'ADS' | 'AI_GROUP' | 'ANALYTICS' | 'API' | 'APPROVALS' | 'ASSISTS' | 'ASSOCIATIONS' | 'AUTO_ASSOCIATE_BY_DOMAIN' | 'AUTOMATION_JOURNEY' | 'AUTOMATION_PLATFORM' | 'AVATARS_SERVICE' | 'BATCH_UPDATE' | 'BCC_TO_CRM' | 'BEHAVIORAL_EVENTS' | 'BET_ASSIGNMENT' | 'BET_CRM_CONNECTOR' | 'BIDEN' | 'BILLING' | 'BOT' | 'BREEZE_AGENT' | 'CALCULATED' | 'CENTRAL_EXCHANGE_RATES' | 'CHATSPOT' | 'CLONE_OBJECTS' | 'COMMUNICATOR' | 'COMPANIES' | 'COMPANY_FAMILIES' | 'COMPANY_INSIGHTS' | 'CONNECTED_ACCOUNT' | 'CONTACTS' | 'CONTACTS_WEB' | 'CONTENT_MEMBERSHIP' | 'CONVERSATIONAL_ENRICHMENT' | 'CONVERSATIONS' | 'CRM_PROCESSES_PLATFORM' | 'CRM_UI' | 'CRM_UI_BULK_ACTION' | 'CUSTOMER_AGENT' | 'DATA_ENRICHMENT' | 'DATA_QUALITY' | 'DATASET' | 'DEALS' | 'DEFAULT' | 'DELETE_OBJECTS' | 'DI_WRITE_TO_CRM' | 'EMAIL' | 'EMAIL_INBOX_IMPORT' | 'EMAIL_INTEGRATION' | 'ENGAGEMENTS' | 'EXTENSION' | 'FILE_MANAGER' | 'FLYWHEEL_PRODUCT_DATA_SYNC' | 'FORECASTING' | 'FORM' | 'FORWARD_TO_CRM' | 'GMAIL_INTEGRATION' | 'GOALS' | 'HEISENBERG' | 'HELP_DESK' | 'HELP_DESK_AI' | 'IMPORT' | 'INTEGRATION' | 'INTEGRATIONS_PLATFORM' | 'INTEGRATIONS_SYNC' | 'INTENT' | 'INTERNAL_PROCESSING' | 'LEADIN' | 'LEGAL_BASIS_REMEDIATION' | 'MARKET_SOURCING' | 'MARKETPLACE' | 'MARKETS' | 'MEETINGS' | 'MERGE_COMPANIES' | 'MERGE_CONTACTS' | 'MERGE_OBJECTS' | 'MERGE_REVERT_OBJECTS' | 'MICROAPPS' | 'MIGRATION' | 'MOBILE_ANDROID' | 'MOBILE_IOS' | 'PAYMENTS' | 'PIPELINE_SETTINGS' | 'PLAYBOOKS' | 'PORTAL_OBJECT_SYNC' | 'PORTAL_USER_ASSOCIATOR' | 'PRESENTATIONS' | 'PRIMARY_AUTOMATION' | 'PROPERTY_DEFAULT_VALUE' | 'PROPERTY_RESTORE' | 'PROPERTY_SETTINGS' | 'PROSPECTING_AGENT' | 'QUOTAS' | 'QUOTES' | 'RECYCLING_BIN' | 'RESTORE_OBJECTS' | 'REVENUE_PLATFORM' | 'SALES' | 'SALES_MESSAGES' | 'SALESFORCE' | 'SEQUENCES' | 'SETTINGS' | 'SIDEKICK' | 'SIGNALS' | 'SLACK_INTEGRATION' | 'SMART_DATA_CAPTURE' | 'SOCIAL' | 'SUCCESS' | 'TALLY' | 'TASK' | 'UNKNOWN' | 'WAL_INCREMENTAL' | 'WORK_UI' | 'WORKFLOW_CONTACT_DELETE_ACTION' | 'WORKFLOWS', required — The origin of the property value, such as "IMPORT" or "API".
    - `sourceId` string, required — The ID of the property source indicating where it was created.
    - `sourceLabel` string, required — A human-readable label.
    - `sourceMetadata` string, required — Metadata providing additional context about the source.
    - `sourceUpstreamDeployable` string, required
    - `sourceVid` integer[], required — The unique identifier associated with the source.
    - `timestamp` integer, required — When the value was set, as a 64-bit integer.
    - `unit` string, required — The unit of measurement or context for the value.
    - `updatedByUserId` integer, required — The ID of the user who updated the property.
    - `useTimestampAsPersistenceTimestamp` boolean, required — Flag indicating whether to use the timestamp field as the persistence timestamp.
    - `value` string, required — The property value.
  - `endDateTime` string, date-time — The end date and time of the marketing event.
  - `eventCancelled` boolean — Indicates if the marketing event has been cancelled.
  - `eventCompleted` boolean — Indicates if the marketing event has been completed.
  - `eventDescription` string — The description of the marketing event.
  - `eventName` string, required — The name of the marketing event.
  - `eventOrganizer` string, required — The name of the organizer of the marketing event.
  - `eventType` string — The type of the marketing event.
  - `eventUrl` string — A URL in the external event application where the marketing event can be managed.
  - `id` string, required — The ID of the marketing event CRM object.
  - `objectId` string — The ID of the marketing event CRM object.
  - `startDateTime` string, date-time — The start date and time of the marketing event.
  - `updatedAt` string, date-time, required — The update date and time of the marketing event.

## Other responses

- `default` — An error occurred.

---

[API](https://skmtc.net/hubspot/apis/hubspot-api-specification.md) · [All operations](https://skmtc.net/hubspot/apis/hubspot-api-specification/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hubspot/hubspot-api-specification/revisions/f9c7181056c5/schema)
