Back to Airbyte

Klaviyo full reference

docs/ai-agents/connectors/klaviyo/REFERENCE.md

2.0.028.5 KB
Original Source

Klaviyo full reference

This is the full reference documentation for the Klaviyo agent connector.

Supported entities and actions

The Klaviyo connector supports the following entities and actions.

EntityActions
ProfilesList, Get, Search
ListsList, Get, Search
CampaignsList, Get, Search
EventsList, Search
MetricsList, Get, Search
FlowsList, Get, Search
Email TemplatesList, Get, Search

Profiles

Profiles List

Returns a paginated list of profiles (contacts) in your Klaviyo account

Python SDK

python
await klaviyo.profiles.list()

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "profiles",
    "action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Profiles Get

Get a single profile by ID

Python SDK

python
await klaviyo.profiles.get(
    id="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "profiles",
    "action": "get",
    "params": {
        "id": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesProfile ID
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Search and filter profiles records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.profiles.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "profiles",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
idstring
linksobject
relationshipsobject
segmentsobject
typestring
updatedstring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].idstring
data[].linksobject
data[].relationshipsobject
data[].segmentsobject
data[].typestring
data[].updatedstring
</details>

Lists

Lists List

Returns a paginated list of all lists in your Klaviyo account

Python SDK

python
await klaviyo.lists.list()

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "lists",
    "action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Lists Get

Get a single list by ID

Python SDK

python
await klaviyo.lists.get(
    id="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "lists",
    "action": "get",
    "params": {
        "id": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesList ID
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Search and filter lists records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.lists.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "lists",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
idstring
linksobject
relationshipsobject
typestring
updatedstring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].idstring
data[].linksobject
data[].relationshipsobject
data[].typestring
data[].updatedstring
</details>

Campaigns

Campaigns List

Returns a paginated list of campaigns. A channel filter is required.

Python SDK

python
await klaviyo.campaigns.list(
    filter="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "campaigns",
    "action": "list",
    "params": {
        "filter": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
filterstringYesFilter by channel (email or sms)
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Campaigns Get

Get a single campaign by ID

Python SDK

python
await klaviyo.campaigns.get(
    id="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "campaigns",
    "action": "get",
    "params": {
        "id": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesCampaign ID
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Search and filter campaigns records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.campaigns.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "campaigns",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
idstring
linksobject
relationshipsobject
typestring
updated_atstring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].idstring
data[].linksobject
data[].relationshipsobject
data[].typestring
data[].updated_atstring
</details>

Events

Events List

Returns a paginated list of events (actions taken by profiles)

Python SDK

python
await klaviyo.events.list()

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "events",
    "action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
sortstringNoSort order for events
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
relationshipsobject | null
linksobject | null
</details>

Search and filter events records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.events.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "events",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
datetimestring
idstring
linksobject
relationshipsobject
typestring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].datetimestring
data[].idstring
data[].linksobject
data[].relationshipsobject
data[].typestring
</details>

Metrics

Metrics List

Returns a paginated list of metrics (event types)

Python SDK

python
await klaviyo.metrics.list()

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "metrics",
    "action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Metrics Get

Get a single metric by ID

Python SDK

python
await klaviyo.metrics.get(
    id="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "metrics",
    "action": "get",
    "params": {
        "id": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesMetric ID
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Search and filter metrics records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.metrics.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "metrics",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
idstring
linksobject
relationshipsobject
typestring
updatedstring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].idstring
data[].linksobject
data[].relationshipsobject
data[].typestring
data[].updatedstring
</details>

Flows

Flows List

Returns a paginated list of flows (automated sequences)

Python SDK

python
await klaviyo.flows.list()

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "flows",
    "action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Flows Get

Get a single flow by ID

Python SDK

python
await klaviyo.flows.get(
    id="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "flows",
    "action": "get",
    "params": {
        "id": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesFlow ID
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Search and filter flows records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.flows.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "flows",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
idstring
linksobject
relationshipsobject
typestring
updatedstring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].idstring
data[].linksobject
data[].relationshipsobject
data[].typestring
data[].updatedstring
</details>

Email Templates

Email Templates List

Returns a paginated list of email templates

Python SDK

python
await klaviyo.email_templates.list()

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "email_templates",
    "action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
page[size]integerNoNumber of results per page (max 100)
page[cursor]stringNoCursor for pagination
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Email Templates Get

Get a single email template by ID

Python SDK

python
await klaviyo.email_templates.get(
    id="<str>"
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "email_templates",
    "action": "get",
    "params": {
        "id": "<str>"
    }
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesTemplate ID
<details> <summary><b>Response Schema</b></summary>

Records

Field NameTypeDescription
idstring
typestring | null
attributesobject | null
linksobject | null
</details>

Search and filter email templates records powered by Airbyte's data sync. This often provides additional fields and operators beyond what the API natively supports, making it easier to narrow down results before performing further operations. Only available in hosted mode.

Python SDK

python
await klaviyo.email_templates.search(
    query={"filter": {"eq": {"attributes": {}}}}
)

API

bash
curl --location 'https://api.airbyte.ai/api/v1/integrations/connectors/{your_connector_id}/execute' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {your_auth_token}' \
--data '{
    "entity": "email_templates",
    "action": "search",
    "params": {
        "query": {"filter": {"eq": {"attributes": {}}}}
    }
}'

Parameters

Parameter NameTypeRequiredDescription
queryobjectYesFilter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, like, fuzzy, keyword, not, and, or
query.filterobjectNoFilter conditions
query.sortarrayNoSort conditions
limitintegerNoMaximum results to return (default 1000)
cursorstringNoPagination cursor from previous response's meta.cursor
fieldsarrayNoField paths to include in results

Searchable Fields

Field NameTypeDescription
attributesobject
idstring
linksobject
typestring
updatedstring
<details> <summary><b>Response Schema</b></summary>
Field NameTypeDescription
dataarrayList of matching records
metaobjectPagination metadata
meta.has_morebooleanWhether additional pages are available
meta.cursorstring | nullCursor for next page of results
meta.took_msnumber | nullQuery execution time in milliseconds
data[].attributesobject
data[].idstring
data[].linksobject
data[].typestring
data[].updatedstring
</details>