openapi: 3.0.2 info: title: Klaviyo Accounts Tracking Settings API version: '2026-04-15' description: The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details. contact: name: Klaviyo Developer Experience Team email: developers@klaviyo.com url: https://developers.klaviyo.com termsOfService: https://www.klaviyo.com/legal/api-terms license: name: License url: https://www.klaviyo.com/legal servers: - url: https://a.klaviyo.com description: Production security: - Klaviyo-API-Key: [] tags: - name: Tracking Settings description: tracking settings paths: /api/tracking-settings: get: operationId: get_tracking_settings summary: Get Tracking Settings description: 'Get all UTM tracking settings in an account. Returns an array with a single tracking setting. More information about UTM tracking settings can be found [here](https://help.klaviyo.com/hc/en-us/articles/115005247808).

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `tracking-settings:read`' parameters: - name: fields[tracking-setting] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - auto_add_parameters - custom_parameters - utm_campaign - utm_campaign.campaign - utm_campaign.campaign.type - utm_campaign.campaign.value - utm_campaign.flow - utm_campaign.flow.type - utm_campaign.flow.value - utm_id - utm_id.campaign - utm_id.campaign.type - utm_id.campaign.value - utm_id.flow - utm_id.flow.type - utm_id.flow.value - utm_medium - utm_medium.campaign - utm_medium.campaign.type - utm_medium.campaign.value - utm_medium.flow - utm_medium.flow.type - utm_medium.flow.value - utm_source - utm_source.campaign - utm_source.campaign.type - utm_source.campaign.value - utm_source.flow - utm_source.flow.type - utm_source.flow.value - utm_term - utm_term.campaign - utm_term.campaign.type - utm_term.campaign.value - utm_term.flow - utm_term.flow.type - utm_term.flow.value explode: false - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 1. Min: 1. Max: 1.' required: false schema: type: integer default: 1 maximum: 1 minimum: 1 - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetTrackingSettingResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Tracking Settings x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 10/s steady: 150/m x-klaviyo-scopes: - tracking-settings:read /api/tracking-settings/{id}: get: operationId: get_tracking_setting summary: Get Tracking Setting description: 'Get the UTM tracking setting with the given account ID. More information about UTM tracking settings can be found [here](https://help.klaviyo.com/hc/en-us/articles/115005247808).

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `tracking-settings:read`' parameters: - name: id in: path description: The id of the tracking setting (account ID). required: true schema: description: The id of the tracking setting (account ID). type: string example: abCdEf - name: fields[tracking-setting] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - auto_add_parameters - custom_parameters - utm_campaign - utm_campaign.campaign - utm_campaign.campaign.type - utm_campaign.campaign.value - utm_campaign.flow - utm_campaign.flow.type - utm_campaign.flow.value - utm_id - utm_id.campaign - utm_id.campaign.type - utm_id.campaign.value - utm_id.flow - utm_id.flow.type - utm_id.flow.value - utm_medium - utm_medium.campaign - utm_medium.campaign.type - utm_medium.campaign.value - utm_medium.flow - utm_medium.flow.type - utm_medium.flow.value - utm_source - utm_source.campaign - utm_source.campaign.type - utm_source.campaign.value - utm_source.flow - utm_source.flow.type - utm_source.flow.value - utm_term - utm_term.campaign - utm_term.campaign.type - utm_term.campaign.value - utm_term.flow - utm_term.flow.type - utm_term.flow.value explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetTrackingSettingResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Tracking Settings x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 10/s steady: 150/m x-klaviyo-scopes: - tracking-settings:read patch: operationId: update_tracking_setting summary: Update Tracking Setting description: 'Update the UTM tracking setting with the given account ID. More information about UTM tracking settings can be found [here](https://help.klaviyo.com/hc/en-us/articles/115005247808).

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `tracking-settings:write`' parameters: - name: id in: path description: The id of the tracking setting (account ID). required: true schema: description: The id of the tracking setting (account ID). type: string - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: description: DTO for updating tracking settings required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/TrackingSettingPartialUpdateQuery' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PatchTrackingSettingResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Tracking Settings x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 10/s steady: 150/m x-klaviyo-scopes: - tracking-settings:write components: schemas: TrackingSettingPartialUpdateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/TrackingSettingEnum' id: description: The id of the tracking setting (account ID). type: string attributes: type: object properties: auto_add_parameters: description: Whether tracking parameters are automatically added to campaigns and flows. type: boolean nullable: true utm_source: description: The utm_source tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_medium: description: The utm_medium tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_campaign: description: The utm_campaign tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_id: description: The utm_id tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_term: description: The utm_term tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true custom_parameters: description: List of custom tracking parameters. type: array items: $ref: '#/components/schemas/CustomTrackingParamDTO' nullable: true required: - type - id - attributes TrackingSettingPartialUpdateQuery: type: object properties: data: $ref: '#/components/schemas/TrackingSettingPartialUpdateQueryResourceObject' required: - data GetTrackingSettingResponse: type: object properties: data: $ref: '#/components/schemas/TrackingSettingResponseObjectResource' links: $ref: '#/components/schemas/ObjectLinks' required: - data ObjectLinks: type: object properties: self: type: string format: uri required: - self TrackingSettingResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/TrackingSettingEnum' id: description: The id of the tracking setting (account ID). type: string attributes: type: object properties: auto_add_parameters: description: Whether tracking parameters are automatically added to campaigns and flows. type: boolean utm_source: description: The utm_source tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' utm_medium: description: The utm_medium tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' utm_campaign: description: The utm_campaign tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_id: description: The utm_id tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_term: description: The utm_term tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true custom_parameters: description: Additional custom tracking parameters. type: array items: $ref: '#/components/schemas/CustomTrackingParamDTO' nullable: true required: - auto_add_parameters - utm_source - utm_medium links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links CollectionLinks: type: object properties: self: type: string format: uri first: type: string format: uri last: type: string format: uri prev: type: string format: uri next: type: string format: uri required: - self CustomTrackingParamDTO: type: object properties: flow: description: The value of the tracking parameter when applied to a flow. nullable: true oneOf: - $ref: '#/components/schemas/FlowTrackingSettingDynamicParam' - $ref: '#/components/schemas/FlowTrackingSettingStaticParam' campaign: description: The value of the tracking parameter when applied to a campaign. nullable: true oneOf: - $ref: '#/components/schemas/CampaignTrackingSettingDynamicParam' - $ref: '#/components/schemas/CampaignTrackingSettingStaticParam' name: description: The name of the custom tracking parameter type: string required: - name CampaignTrackingSettingStaticParam: type: object properties: type: description: The type of the tracking parameter type: string enum: - static value: description: The value of the tracking parameter type: string required: - type - value TrackingParamDTO: type: object properties: flow: description: The value of the tracking parameter when applied to a flow. nullable: true oneOf: - $ref: '#/components/schemas/FlowTrackingSettingDynamicParam' - $ref: '#/components/schemas/FlowTrackingSettingStaticParam' campaign: description: The value of the tracking parameter when applied to a campaign. nullable: true oneOf: - $ref: '#/components/schemas/CampaignTrackingSettingDynamicParam' - $ref: '#/components/schemas/CampaignTrackingSettingStaticParam' GetTrackingSettingResponseCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/TrackingSettingResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data FlowTrackingSettingDynamicParam: type: object properties: type: description: The type of the tracking parameter type: string enum: - dynamic value: description: The value of the tracking parameter type: string enum: - email_subject - flow_id - flow_name - link_alt_text - message_name - message_name_id - message_type - profile_external_id - profile_id required: - type - value PatchTrackingSettingResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/TrackingSettingEnum' id: description: The id of the tracking setting (account ID). type: string attributes: type: object properties: auto_add_parameters: description: Whether tracking parameters are automatically added to campaigns and flows. type: boolean utm_source: description: The utm_source tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' utm_medium: description: The utm_medium tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' utm_campaign: description: The utm_campaign tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_id: description: The utm_id tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true utm_term: description: The utm_term tracking parameter. $ref: '#/components/schemas/TrackingParamDTO' nullable: true custom_parameters: description: Additional custom tracking parameters. type: array items: $ref: '#/components/schemas/CustomTrackingParamDTO' nullable: true required: - auto_add_parameters - utm_source - utm_medium links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data FlowTrackingSettingStaticParam: type: object properties: type: description: The type of the tracking parameter type: string enum: - static value: description: The value of the tracking parameter type: string required: - type - value TrackingSettingEnum: type: string enum: - tracking-setting CampaignTrackingSettingDynamicParam: type: object properties: type: description: The type of the tracking parameter type: string enum: - dynamic value: description: The value of the tracking parameter type: string enum: - campaign_id - campaign_name - campaign_name_id - campaign_name_send_day - email_subject - group_id - group_name - group_name_id - link_alt_text - message_type - profile_external_id - profile_id required: - type - value responses: ClientError: description: Client Error content: application/vnd.api+json: schema: type: object properties: errors: type: array items: type: object required: - id - code - title - detail properties: id: type: string code: type: string title: type: string detail: type: string source: type: object properties: pointer: type: string parameter: type: string required: - errors ServerError: description: Server Error content: application/vnd.api+json: schema: type: object properties: errors: type: array items: type: object required: - id - code - title - detail properties: id: type: string code: type: string title: type: string detail: type: string source: type: object properties: pointer: type: string parameter: type: string required: - errors securitySchemes: Klaviyo-API-Key: type: apiKey in: header name: Authorization description: Private key authentication for /api/ endpoints is performed by setting the `Authorization` header to `Klaviyo-API-Key your-private-api-key`
For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#authentication x-default: Klaviyo-API-Key your-private-api-key x-readme: explorer-enabled: false proxy-enabled: true samples-enabled: true