Skip to main content

Pylon full reference

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

Supported entities and actions

The Pylon connector supports the following entities and actions.

EntityActions
IssuesList, Create, Get, Update, Delete, Context Store Search
Issue RepliesCreate
Issue AssignmentsUpdate
Issue StatusesUpdate
MessagesList, Context Store Search
Issue NotesCreate
Issue ThreadsCreate
AccountsList, Create, Get, Update, Context Store Search
ContactsList, Create, Get, Update, Context Store Search
TeamsList, Create, Get, Update, Context Store Search
TagsList, Create, Get, Update, Context Store Search
UsersList, Get, Context Store Search
Custom FieldsList, Get, Context Store Search
Ticket FormsList, Context Store Search
User RolesList, Context Store Search
TasksCreate, Update
ProjectsCreate, Update
MilestonesCreate, Update
ArticlesCreate, Update
CollectionsCreate
MeGet

Issues

Issues List

Get a list of issues within a time range

Python SDK

await pylon.issues.list(
start_time="2025-01-01T00:00:00Z",
end_time="2025-01-01T00:00:00Z"
)

API

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": "issues",
"action": "list",
"params": {
"start_time": "2025-01-01T00:00:00Z",
"end_time": "2025-01-01T00:00:00Z"
}
}'

Parameters

Parameter NameTypeRequiredDescription
start_timestringYesThe start time (RFC3339) of the time range to get issues for.
end_timestringYesThe end time (RFC3339) of the time range to get issues for.
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
accountobject | any
assigneeobject | any
attachment_urlsarray | null
author_unverifiedboolean | null
body_htmlstring | null
business_hours_first_response_secondsinteger | null
business_hours_resolution_secondsinteger | null
business_hours_time_in_status_secondsobject | null
chat_widget_infoobject | any
created_atstring | null
csat_responsesarray | null
csat_responses[].commentstring | null
csat_responses[].scoreinteger | null
custom_fieldsobject | null
customer_portal_visibleboolean | null
external_issuesarray | null
external_issues[].external_idstring | null
external_issues[].linkstring | null
external_issues[].sourcestring | null
first_response_secondsinteger | null
first_response_timestring | null
latest_message_timestring | null
linkstring | null
numberinteger | null
number_of_touchesinteger | null
requesterobject | any
resolution_secondsinteger | null
resolution_timestring | null
slackobject | any
snoozed_until_timestring | null
source"slack" | "microsoft_teams" | "microsoft_teams_chat" | "chat_widget" | "email" | "manual" | "form" | "discord" | "whatsapp" | "sms" | "telegram" | any
statestring | null
tagsarray | null
teamobject | any
titlestring | null
time_in_status_secondsobject | null
type"conversation" | "ticket" | any
updated_atstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Issues Create

Create a new issue

Python SDK

await pylon.issues.create(
title="<str>",
body_html="<str>",
priority="<str>",
requester_email="<str>",
requester_name="<str>",
account_id="<str>",
assignee_id="<str>",
team_id="<str>",
tags=[]
)

API

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": "issues",
"action": "create",
"params": {
"title": "<str>",
"body_html": "<str>",
"priority": "<str>",
"requester_email": "<str>",
"requester_name": "<str>",
"account_id": "<str>",
"assignee_id": "<str>",
"team_id": "<str>",
"tags": []
}
}'

Parameters

Parameter NameTypeRequiredDescription
titlestringYesThe title of the issue
body_htmlstringYesThe HTML content of the body of the issue
prioritystringNoThe priority of the issue (urgent, high, medium, low)
requester_emailstringNoThe email of the requester
requester_namestringNoThe full name of the requester
account_idstringNoThe account that this issue belongs to
assignee_idstringNoThe user the issue should be assigned to
team_idstringNoThe ID of the team this issue should be assigned to
tagsarray<string>NoTags to associate with the issue
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.accountobject | any
data.assigneeobject | any
data.attachment_urlsarray | null
data.author_unverifiedboolean | null
data.body_htmlstring | null
data.business_hours_first_response_secondsinteger | null
data.business_hours_resolution_secondsinteger | null
data.business_hours_time_in_status_secondsobject | null
data.chat_widget_infoobject | any
data.created_atstring | null
data.csat_responsesarray | null
data.csat_responses[].commentstring | null
data.csat_responses[].scoreinteger | null
data.custom_fieldsobject | null
data.customer_portal_visibleboolean | null
data.external_issuesarray | null
data.external_issues[].external_idstring | null
data.external_issues[].linkstring | null
data.external_issues[].sourcestring | null
data.first_response_secondsinteger | null
data.first_response_timestring | null
data.latest_message_timestring | null
data.linkstring | null
data.numberinteger | null
data.number_of_touchesinteger | null
data.requesterobject | any
data.resolution_secondsinteger | null
data.resolution_timestring | null
data.slackobject | any
data.snoozed_until_timestring | null
data.source"slack" | "microsoft_teams" | "microsoft_teams_chat" | "chat_widget" | "email" | "manual" | "form" | "discord" | "whatsapp" | "sms" | "telegram" | any
data.statestring | null
data.tagsarray | null
data.teamobject | any
data.titlestring | null
data.time_in_status_secondsobject | null
data.type"conversation" | "ticket" | any
data.updated_atstring | null
request_idstring

Issues Get

Get a single issue by ID

Python SDK

await pylon.issues.get(
id="<str>"
)

API

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": "issues",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the issue
Response Schema

Records

Field NameTypeDescription
idstring
accountobject | any
assigneeobject | any
attachment_urlsarray | null
author_unverifiedboolean | null
body_htmlstring | null
business_hours_first_response_secondsinteger | null
business_hours_resolution_secondsinteger | null
business_hours_time_in_status_secondsobject | null
chat_widget_infoobject | any
created_atstring | null
csat_responsesarray | null
csat_responses[].commentstring | null
csat_responses[].scoreinteger | null
custom_fieldsobject | null
customer_portal_visibleboolean | null
external_issuesarray | null
external_issues[].external_idstring | null
external_issues[].linkstring | null
external_issues[].sourcestring | null
first_response_secondsinteger | null
first_response_timestring | null
latest_message_timestring | null
linkstring | null
numberinteger | null
number_of_touchesinteger | null
requesterobject | any
resolution_secondsinteger | null
resolution_timestring | null
slackobject | any
snoozed_until_timestring | null
source"slack" | "microsoft_teams" | "microsoft_teams_chat" | "chat_widget" | "email" | "manual" | "form" | "discord" | "whatsapp" | "sms" | "telegram" | any
statestring | null
tagsarray | null
teamobject | any
titlestring | null
time_in_status_secondsobject | null
type"conversation" | "ticket" | any
updated_atstring | null

Issues Update

Update an existing issue by ID

Python SDK

await pylon.issues.update(
state="<str>",
assignee_id="<str>",
team_id="<str>",
account_id="<str>",
tags=[],
id="<str>"
)

API

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": "issues",
"action": "update",
"params": {
"state": "<str>",
"assignee_id": "<str>",
"team_id": "<str>",
"account_id": "<str>",
"tags": [],
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
statestringNoThe state of the issue (open, snoozed, closed)
assignee_idstringNoThe user the issue should be assigned to
team_idstringNoThe ID of the team this issue should be assigned to
account_idstringNoThe account that this issue belongs to
tagsarray<string>NoTags to associate with the issue
idstringYesThe ID of the issue to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.accountobject | any
data.assigneeobject | any
data.attachment_urlsarray | null
data.author_unverifiedboolean | null
data.body_htmlstring | null
data.business_hours_first_response_secondsinteger | null
data.business_hours_resolution_secondsinteger | null
data.business_hours_time_in_status_secondsobject | null
data.chat_widget_infoobject | any
data.created_atstring | null
data.csat_responsesarray | null
data.csat_responses[].commentstring | null
data.csat_responses[].scoreinteger | null
data.custom_fieldsobject | null
data.customer_portal_visibleboolean | null
data.external_issuesarray | null
data.external_issues[].external_idstring | null
data.external_issues[].linkstring | null
data.external_issues[].sourcestring | null
data.first_response_secondsinteger | null
data.first_response_timestring | null
data.latest_message_timestring | null
data.linkstring | null
data.numberinteger | null
data.number_of_touchesinteger | null
data.requesterobject | any
data.resolution_secondsinteger | null
data.resolution_timestring | null
data.slackobject | any
data.snoozed_until_timestring | null
data.source"slack" | "microsoft_teams" | "microsoft_teams_chat" | "chat_widget" | "email" | "manual" | "form" | "discord" | "whatsapp" | "sms" | "telegram" | any
data.statestring | null
data.tagsarray | null
data.teamobject | any
data.titlestring | null
data.time_in_status_secondsobject | null
data.type"conversation" | "ticket" | any
data.updated_atstring | null
request_idstring

Issues Delete

Permanently deletes an issue by ID. This action cannot be undone.

Python SDK

await pylon.issues.delete(
id="<str>"
)

API

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": "issues",
"action": "delete",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the issue to delete
Response Schema

Records

Field NameTypeDescription
request_idstring

Search and filter issues 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

await pylon.issues.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "issues",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the issue
titlestringTitle of the issue
statestringCurrent state of the issue (e.g. new, in_progress, closed)
sourcestringChannel the issue originated from (e.g. email, slack)
typestringType classification of the issue
numberintegerHuman-readable issue number within the workspace
created_atstringTimestamp when the issue was created, in ISO 8601 format
latest_message_timestringTimestamp of the most recent message on the issue, in ISO 8601 format
resolution_timestringTimestamp when the issue was resolved, in ISO 8601 format
snoozed_until_timestringTimestamp the issue is snoozed until, in ISO 8601 format
customer_portal_visiblebooleanWhether the issue is visible in the customer portal
Response Schema
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[].idstringUnique identifier for the issue
data[].titlestringTitle of the issue
data[].statestringCurrent state of the issue (e.g. new, in_progress, closed)
data[].sourcestringChannel the issue originated from (e.g. email, slack)
data[].typestringType classification of the issue
data[].numberintegerHuman-readable issue number within the workspace
data[].created_atstringTimestamp when the issue was created, in ISO 8601 format
data[].latest_message_timestringTimestamp of the most recent message on the issue, in ISO 8601 format
data[].resolution_timestringTimestamp when the issue was resolved, in ISO 8601 format
data[].snoozed_until_timestringTimestamp the issue is snoozed until, in ISO 8601 format
data[].customer_portal_visiblebooleanWhether the issue is visible in the customer portal

Issue Replies

Issue Replies Create

Sends a customer-facing reply on an issue, visible to the requester.

Python SDK

await pylon.issue_replies.create(
body_html="<str>",
message_id="<str>",
user_id="<str>",
contact_id="<str>",
attachment_urls=[],
id="<str>"
)

API

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": "issue_replies",
"action": "create",
"params": {
"body_html": "<str>",
"message_id": "<str>",
"user_id": "<str>",
"contact_id": "<str>",
"attachment_urls": [],
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
body_htmlstringYesThe body of the reply message in HTML
message_idstringYesThe ID of the message to reply to
user_idstringNoOptional user ID to post the message as. Only one of user_id or contact_id can be provided.
contact_idstringNoOptional contact ID to post the message as. Only one of user_id or contact_id can be provided.
attachment_urlsarray<string>NoAn array of attachment URLs to attach to this reply
idstringYesThe ID of the issue to reply to
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.issue_idstring
request_idstring

Issue Assignments

Issue Assignments Update

Assign an issue to a user or team, or remove the current assignment.

Python SDK

await pylon.issue_assignments.update(
assignee_id="<str>",
team_id="<str>",
id="<str>"
)

API

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": "issue_assignments",
"action": "update",
"params": {
"assignee_id": "<str>",
"team_id": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
assignee_idstringNoThe ID of the user to assign the issue to. Pass an empty string to unassign.
team_idstringNoThe ID of the team to assign the issue to. Pass an empty string to remove team assignment.
idstringYesThe ID of the issue to assign
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.accountobject | any
data.assigneeobject | any
data.attachment_urlsarray | null
data.author_unverifiedboolean | null
data.body_htmlstring | null
data.business_hours_first_response_secondsinteger | null
data.business_hours_resolution_secondsinteger | null
data.business_hours_time_in_status_secondsobject | null
data.chat_widget_infoobject | any
data.created_atstring | null
data.csat_responsesarray | null
data.csat_responses[].commentstring | null
data.csat_responses[].scoreinteger | null
data.custom_fieldsobject | null
data.customer_portal_visibleboolean | null
data.external_issuesarray | null
data.external_issues[].external_idstring | null
data.external_issues[].linkstring | null
data.external_issues[].sourcestring | null
data.first_response_secondsinteger | null
data.first_response_timestring | null
data.latest_message_timestring | null
data.linkstring | null
data.numberinteger | null
data.number_of_touchesinteger | null
data.requesterobject | any
data.resolution_secondsinteger | null
data.resolution_timestring | null
data.slackobject | any
data.snoozed_until_timestring | null
data.source"slack" | "microsoft_teams" | "microsoft_teams_chat" | "chat_widget" | "email" | "manual" | "form" | "discord" | "whatsapp" | "sms" | "telegram" | any
data.statestring | null
data.tagsarray | null
data.teamobject | any
data.titlestring | null
data.time_in_status_secondsobject | null
data.type"conversation" | "ticket" | any
data.updated_atstring | null
request_idstring

Issue Statuses

Issue Statuses Update

Transition an issue to a new status (new, waiting_on_you, waiting_on_customer, on_hold, closed, or a custom status slug).

Python SDK

await pylon.issue_statuses.update(
state="<str>",
id="<str>"
)

API

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": "issue_statuses",
"action": "update",
"params": {
"state": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
statestringYesThe target state for the issue (new, waiting_on_you, waiting_on_customer, on_hold, closed, or a custom status slug)
idstringYesThe ID of the issue to update status for
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.accountobject | any
data.assigneeobject | any
data.attachment_urlsarray | null
data.author_unverifiedboolean | null
data.body_htmlstring | null
data.business_hours_first_response_secondsinteger | null
data.business_hours_resolution_secondsinteger | null
data.business_hours_time_in_status_secondsobject | null
data.chat_widget_infoobject | any
data.created_atstring | null
data.csat_responsesarray | null
data.csat_responses[].commentstring | null
data.csat_responses[].scoreinteger | null
data.custom_fieldsobject | null
data.customer_portal_visibleboolean | null
data.external_issuesarray | null
data.external_issues[].external_idstring | null
data.external_issues[].linkstring | null
data.external_issues[].sourcestring | null
data.first_response_secondsinteger | null
data.first_response_timestring | null
data.latest_message_timestring | null
data.linkstring | null
data.numberinteger | null
data.number_of_touchesinteger | null
data.requesterobject | any
data.resolution_secondsinteger | null
data.resolution_timestring | null
data.slackobject | any
data.snoozed_until_timestring | null
data.source"slack" | "microsoft_teams" | "microsoft_teams_chat" | "chat_widget" | "email" | "manual" | "form" | "discord" | "whatsapp" | "sms" | "telegram" | any
data.statestring | null
data.tagsarray | null
data.teamobject | any
data.titlestring | null
data.time_in_status_secondsobject | null
data.type"conversation" | "ticket" | any
data.updated_atstring | null
request_idstring

Messages

Messages List

Returns all messages on an issue (customer-facing replies and internal notes)

Python SDK

await pylon.messages.list(
id="<str>"
)

API

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": "messages",
"action": "list",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the issue to fetch messages for
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
authorobject | any
email_infoobject | any
file_urlsarray | null
is_privateboolean | null
message_htmlstring | null
sourcestring | null
thread_idstring | null
timestampstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Search and filter messages 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

await pylon.messages.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "messages",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the message
timestampstringTimestamp the message was posted, in ISO 8601 format
is_privatebooleanWhether the message is an internal note (not visible to the customer)
sourcestringChannel the message was sent through (e.g. email, slack)
thread_idstringIdentifier of the thread this message belongs to
Response Schema
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[].idstringUnique identifier for the message
data[].timestampstringTimestamp the message was posted, in ISO 8601 format
data[].is_privatebooleanWhether the message is an internal note (not visible to the customer)
data[].sourcestringChannel the message was sent through (e.g. email, slack)
data[].thread_idstringIdentifier of the thread this message belongs to

Issue Notes

Issue Notes Create

Create an internal note on an issue

Python SDK

await pylon.issue_notes.create(
body_html="<str>",
thread_id="<str>",
message_id="<str>",
id="<str>"
)

API

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": "issue_notes",
"action": "create",
"params": {
"body_html": "<str>",
"thread_id": "<str>",
"message_id": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
body_htmlstringYesThe HTML content of the note
thread_idstringNoThe ID of the thread to add the note to
message_idstringNoThe ID of the message to add the note to
idstringYesThe ID of the issue to add a note to
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.body_htmlstring | null
data.timestampstring | null
request_idstring

Issue Threads

Issue Threads Create

Create a new thread on an issue

Python SDK

await pylon.issue_threads.create(
name="<str>",
id="<str>"
)

API

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": "issue_threads",
"action": "create",
"params": {
"name": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the thread
idstringYesThe ID of the issue to create a thread on
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
request_idstring

Accounts

Accounts List

Get a list of accounts

Python SDK

await pylon.accounts.list()

API

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": "accounts",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
channelsarray | null
channels[].channel_idstring | null
channels[].sourcestring | null
channels[].is_primaryboolean | null
created_atstring | null
custom_fieldsobject | null
domainstring | null
domainsarray | null
external_idsobject | null
is_disabledboolean | null
latest_customer_activity_timestring | null
namestring | null
ownerobject | any
primary_domainstring | null
tagsarray | null
typestring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Accounts Create

Create a new account

Python SDK

await pylon.accounts.create(
name="<str>",
domains=[],
primary_domain="<str>",
owner_id="<str>",
logo_url="<str>",
tags=[]
)

API

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": "accounts",
"action": "create",
"params": {
"name": "<str>",
"domains": [],
"primary_domain": "<str>",
"owner_id": "<str>",
"logo_url": "<str>",
"tags": []
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringYesThe name of the account
domainsarray<string>NoThe domains of the account (e.g. stripe.com)
primary_domainstringNoMust be in the list of domains. If there are any domains, there must be exactly one primary domain.
owner_idstringNoThe ID of the owner of the account
logo_urlstringNoThe logo URL of the account. Must be a square .png, .jpg or .jpeg.
tagsarray<string>NoTags to associate with the account
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.channelsarray | null
data.channels[].channel_idstring | null
data.channels[].sourcestring | null
data.channels[].is_primaryboolean | null
data.created_atstring | null
data.custom_fieldsobject | null
data.domainstring | null
data.domainsarray | null
data.external_idsobject | null
data.is_disabledboolean | null
data.latest_customer_activity_timestring | null
data.namestring | null
data.ownerobject | any
data.primary_domainstring | null
data.tagsarray | null
data.typestring | null
request_idstring

Accounts Get

Get a single account by ID

Python SDK

await pylon.accounts.get(
id="<str>"
)

API

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": "accounts",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the account
Response Schema

Records

Field NameTypeDescription
idstring
channelsarray | null
channels[].channel_idstring | null
channels[].sourcestring | null
channels[].is_primaryboolean | null
created_atstring | null
custom_fieldsobject | null
domainstring | null
domainsarray | null
external_idsobject | null
is_disabledboolean | null
latest_customer_activity_timestring | null
namestring | null
ownerobject | any
primary_domainstring | null
tagsarray | null
typestring | null

Accounts Update

Update an existing account by ID

Python SDK

await pylon.accounts.update(
name="<str>",
domains=[],
primary_domain="<str>",
owner_id="<str>",
logo_url="<str>",
is_disabled=True,
tags=[],
id="<str>"
)

API

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": "accounts",
"action": "update",
"params": {
"name": "<str>",
"domains": [],
"primary_domain": "<str>",
"owner_id": "<str>",
"logo_url": "<str>",
"is_disabled": True,
"tags": [],
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the account
domainsarray<string>NoDomains of the account. Must specify one domain as primary.
primary_domainstringNoMust be in the list of domains. If there are any domains, there must be exactly one primary domain.
owner_idstringNoThe ID of the owner of the account. If empty string is passed in, the owner will be removed.
logo_urlstringNoLogo URL of the account
is_disabledbooleanNoWhether the account is disabled
tagsarray<string>NoTags to associate with the account
idstringYesThe ID of the account to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.channelsarray | null
data.channels[].channel_idstring | null
data.channels[].sourcestring | null
data.channels[].is_primaryboolean | null
data.created_atstring | null
data.custom_fieldsobject | null
data.domainstring | null
data.domainsarray | null
data.external_idsobject | null
data.is_disabledboolean | null
data.latest_customer_activity_timestring | null
data.namestring | null
data.ownerobject | any
data.primary_domainstring | null
data.tagsarray | null
data.typestring | null
request_idstring

Search and filter accounts 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

await pylon.accounts.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "accounts",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the account
namestringName of the account (customer organization)
domainstringPrimary domain associated with the account
primary_domainstringCanonical primary domain for the account
typestringClassification of the account (e.g. customer, prospect)
is_disabledbooleanWhether the account has been disabled
created_atstringTimestamp when the account was created, in ISO 8601 format
latest_customer_activity_timestringTimestamp of the most recent activity from this account, in ISO 8601 format
Response Schema
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[].idstringUnique identifier for the account
data[].namestringName of the account (customer organization)
data[].domainstringPrimary domain associated with the account
data[].primary_domainstringCanonical primary domain for the account
data[].typestringClassification of the account (e.g. customer, prospect)
data[].is_disabledbooleanWhether the account has been disabled
data[].created_atstringTimestamp when the account was created, in ISO 8601 format
data[].latest_customer_activity_timestringTimestamp of the most recent activity from this account, in ISO 8601 format

Contacts

Contacts List

Get a list of contacts

Python SDK

await pylon.contacts.list()

API

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": "contacts",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
accountobject | any
avatar_urlstring | null
custom_fieldsobject | null
emailstring | null
emailsarray | null
integration_user_idsarray | null
integration_user_ids[].idstring | null
integration_user_ids[].sourcestring | null
namestring | null
phone_numbersarray | null
portal_rolestring | null
portal_role_idstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Contacts Create

Create a new contact

Python SDK

await pylon.contacts.create(
name="<str>",
email="<str>",
account_id="<str>",
avatar_url="<str>"
)

API

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": "contacts",
"action": "create",
"params": {
"name": "<str>",
"email": "<str>",
"account_id": "<str>",
"avatar_url": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringYesThe name of the contact
emailstringNoThe email address of the contact
account_idstringNoThe ID of the account to associate this contact with
avatar_urlstringNoThe URL of the contact's avatar
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.accountobject | any
data.avatar_urlstring | null
data.custom_fieldsobject | null
data.emailstring | null
data.emailsarray | null
data.integration_user_idsarray | null
data.integration_user_ids[].idstring | null
data.integration_user_ids[].sourcestring | null
data.namestring | null
data.phone_numbersarray | null
data.portal_rolestring | null
data.portal_role_idstring | null
request_idstring

Contacts Get

Get a single contact by ID

Python SDK

await pylon.contacts.get(
id="<str>"
)

API

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": "contacts",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the contact
Response Schema

Records

Field NameTypeDescription
idstring
accountobject | any
avatar_urlstring | null
custom_fieldsobject | null
emailstring | null
emailsarray | null
integration_user_idsarray | null
integration_user_ids[].idstring | null
integration_user_ids[].sourcestring | null
namestring | null
phone_numbersarray | null
portal_rolestring | null
portal_role_idstring | null

Contacts Update

Update an existing contact by ID

Python SDK

await pylon.contacts.update(
name="<str>",
email="<str>",
account_id="<str>",
id="<str>"
)

API

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": "contacts",
"action": "update",
"params": {
"name": "<str>",
"email": "<str>",
"account_id": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the contact
emailstringNoThe email address of the contact
account_idstringNoThe ID of the account to associate this contact with
idstringYesThe ID of the contact to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.accountobject | any
data.avatar_urlstring | null
data.custom_fieldsobject | null
data.emailstring | null
data.emailsarray | null
data.integration_user_idsarray | null
data.integration_user_ids[].idstring | null
data.integration_user_ids[].sourcestring | null
data.namestring | null
data.phone_numbersarray | null
data.portal_rolestring | null
data.portal_role_idstring | null
request_idstring

Search and filter contacts 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

await pylon.contacts.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "contacts",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the contact
namestringFull name of the contact
emailstringPrimary email address of the contact
primary_phone_numberstringPrimary phone number of the contact
portal_rolestringRole the contact has in the customer portal
Response Schema
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[].idstringUnique identifier for the contact
data[].namestringFull name of the contact
data[].emailstringPrimary email address of the contact
data[].primary_phone_numberstringPrimary phone number of the contact
data[].portal_rolestringRole the contact has in the customer portal

Teams

Teams List

Get a list of teams

Python SDK

await pylon.teams.list()

API

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": "teams",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
namestring | null
usersarray | null
users[].emailstring | null
users[].idstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Teams Create

Create a new team

Python SDK

await pylon.teams.create(
name="<str>"
)

API

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": "teams",
"action": "create",
"params": {
"name": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the team
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
data.usersarray | null
data.users[].emailstring | null
data.users[].idstring | null
request_idstring

Teams Get

Get a single team by ID

Python SDK

await pylon.teams.get(
id="<str>"
)

API

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": "teams",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the team
Response Schema

Records

Field NameTypeDescription
idstring
namestring | null
usersarray | null
users[].emailstring | null
users[].idstring | null

Teams Update

Update an existing team by ID

Python SDK

await pylon.teams.update(
name="<str>",
id="<str>"
)

API

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": "teams",
"action": "update",
"params": {
"name": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the team
idstringYesThe ID of the team to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
data.usersarray | null
data.users[].emailstring | null
data.users[].idstring | null
request_idstring

Search and filter teams 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

await pylon.teams.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "teams",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the team
namestringName of the team
Response Schema
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[].idstringUnique identifier for the team
data[].namestringName of the team

Tags

Tags List

Get all tags

Python SDK

await pylon.tags.list()

API

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": "tags",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
hex_colorstring | null
object_typestring | null
valuestring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Tags Create

Create a new tag

Python SDK

await pylon.tags.create(
value="<str>",
object_type="<str>",
hex_color="<str>"
)

API

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": "tags",
"action": "create",
"params": {
"value": "<str>",
"object_type": "<str>",
"hex_color": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
valuestringYesThe tag value
object_typestringYesThe object type (issue, account, contact)
hex_colorstringNoThe hex color code of the tag
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.hex_colorstring | null
data.object_typestring | null
data.valuestring | null
request_idstring

Tags Get

Get a tag by its ID

Python SDK

await pylon.tags.get(
id="<str>"
)

API

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": "tags",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the tag
Response Schema

Records

Field NameTypeDescription
idstring
hex_colorstring | null
object_typestring | null
valuestring | null

Tags Update

Update an existing tag by ID

Python SDK

await pylon.tags.update(
value="<str>",
hex_color="<str>",
id="<str>"
)

API

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": "tags",
"action": "update",
"params": {
"value": "<str>",
"hex_color": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
valuestringNoThe tag value
hex_colorstringNoThe hex color code of the tag
idstringYesThe ID of the tag to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.hex_colorstring | null
data.object_typestring | null
data.valuestring | null
request_idstring

Search and filter tags 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

await pylon.tags.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "tags",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the tag
valuestringDisplay value of the tag
object_typestringType of object this tag applies to (e.g. issue, account)
Response Schema
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[].idstringUnique identifier for the tag
data[].valuestringDisplay value of the tag
data[].object_typestringType of object this tag applies to (e.g. issue, account)

Users

Users List

Get a list of users

Python SDK

await pylon.users.list()

API

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": "users",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
avatar_urlstring | null
emailstring | null
emailsarray | null
namestring | null
role_idstring | null
statusstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Users Get

Get a single user by ID

Python SDK

await pylon.users.get(
id="<str>"
)

API

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": "users",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the user
Response Schema

Records

Field NameTypeDescription
idstring
avatar_urlstring | null
emailstring | null
emailsarray | null
namestring | null
role_idstring | null
statusstring | null

Search and filter users 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

await pylon.users.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "users",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the user
namestringFull name of the user
emailstringPrimary email address of the user
role_idstringIdentifier of the user's role
statusstringCurrent status of the user (e.g. active, disabled)
Response Schema
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[].idstringUnique identifier for the user
data[].namestringFull name of the user
data[].emailstringPrimary email address of the user
data[].role_idstringIdentifier of the user's role
data[].statusstringCurrent status of the user (e.g. active, disabled)

Custom Fields

Custom Fields List

Get all custom fields for a given object type

Python SDK

await pylon.custom_fields.list(
object_type="<str>"
)

API

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": "custom_fields",
"action": "list",
"params": {
"object_type": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
object_type"account" | "issue" | "contact"YesThe object type of the custom fields. Can be "account", "issue", or "contact".
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
created_atstring | null
default_valuestring | null
default_valuesarray | null
descriptionstring | null
is_read_onlyboolean | null
labelstring | null
number_metadataobject | any
object_typestring | null
select_metadataobject | any
slugstring | null
sourcestring | null
typestring | null
updated_atstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Custom Fields Get

Get a custom field by its ID

Python SDK

await pylon.custom_fields.get(
id="<str>"
)

API

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": "custom_fields",
"action": "get",
"params": {
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
idstringYesThe ID of the custom field
Response Schema

Records

Field NameTypeDescription
idstring
created_atstring | null
default_valuestring | null
default_valuesarray | null
descriptionstring | null
is_read_onlyboolean | null
labelstring | null
number_metadataobject | any
object_typestring | null
select_metadataobject | any
slugstring | null
sourcestring | null
typestring | null
updated_atstring | null

Search and filter custom fields 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

await pylon.custom_fields.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "custom_fields",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the custom field
labelstringDisplay label of the custom field
slugstringURL-safe identifier for the custom field
typestringData type of the custom field (e.g. text, select)
object_typestringType of object this custom field applies to (e.g. issue, account)
is_read_onlybooleanWhether the custom field is read-only
created_atstringTimestamp when the custom field was created, in ISO 8601 format
Response Schema
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[].idstringUnique identifier for the custom field
data[].labelstringDisplay label of the custom field
data[].slugstringURL-safe identifier for the custom field
data[].typestringData type of the custom field (e.g. text, select)
data[].object_typestringType of object this custom field applies to (e.g. issue, account)
data[].is_read_onlybooleanWhether the custom field is read-only
data[].created_atstringTimestamp when the custom field was created, in ISO 8601 format

Ticket Forms

Ticket Forms List

Get a list of ticket forms

Python SDK

await pylon.ticket_forms.list()

API

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": "ticket_forms",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
description_htmlstring | null
fieldsarray | null
fields[].description_htmlstring | null
fields[].namestring | null
fields[].slugstring | null
fields[].typestring | null
is_publicboolean | null
namestring | null
slugstring | null
urlstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Search and filter ticket forms 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

await pylon.ticket_forms.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "ticket_forms",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the ticket form
namestringDisplay name of the ticket form
slugstringURL-safe identifier for the ticket form
is_publicbooleanWhether the ticket form is publicly accessible
Response Schema
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[].idstringUnique identifier for the ticket form
data[].namestringDisplay name of the ticket form
data[].slugstringURL-safe identifier for the ticket form
data[].is_publicbooleanWhether the ticket form is publicly accessible

User Roles

User Roles List

Get a list of all user roles

Python SDK

await pylon.user_roles.list()

API

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": "user_roles",
"action": "list"
}'

Parameters

Parameter NameTypeRequiredDescription
cursorstringNoCursor for pagination
Response Schema

Records

Field NameTypeDescription
idstring
namestring | null
slugstring | null

Meta

Field NameTypeDescription
next_cursorstring | null
has_next_pageboolean

Search and filter user roles 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

await pylon.user_roles.context_store_search(
query={"filter": {"eq": {"id": "<str>"}}}
)

API

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": "user_roles",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": "<str>"}}}
}
}'

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
idstringUnique identifier for the user role
namestringDisplay name of the user role
slugstringURL-safe identifier for the user role
Response Schema
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[].idstringUnique identifier for the user role
data[].namestringDisplay name of the user role
data[].slugstringURL-safe identifier for the user role

Tasks

Tasks Create

Create a new task

Python SDK

await pylon.tasks.create(
title="<str>",
body_html="<str>",
status="<str>",
assignee_id="<str>",
project_id="<str>",
milestone_id="<str>",
due_date="<str>"
)

API

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": "tasks",
"action": "create",
"params": {
"title": "<str>",
"body_html": "<str>",
"status": "<str>",
"assignee_id": "<str>",
"project_id": "<str>",
"milestone_id": "<str>",
"due_date": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
titlestringYesThe title of the task
body_htmlstringNoThe body HTML of the task
statusstringNoThe status of the task (not_started, in_progress, completed)
assignee_idstringNoThe assignee ID for the task
project_idstringNoThe project ID for the task
milestone_idstringNoThe milestone ID for the task
due_datestringNoThe due date for the task (RFC3339)
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.titlestring | null
data.body_htmlstring | null
data.statusstring | null
data.assignee_idstring | null
data.project_idstring | null
data.milestone_idstring | null
data.due_datestring | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Tasks Update

Update an existing task by ID

Python SDK

await pylon.tasks.update(
title="<str>",
body_html="<str>",
status="<str>",
assignee_id="<str>",
id="<str>"
)

API

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": "tasks",
"action": "update",
"params": {
"title": "<str>",
"body_html": "<str>",
"status": "<str>",
"assignee_id": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
titlestringNoThe title of the task
body_htmlstringNoThe body HTML of the task
statusstringNoThe status of the task (not_started, in_progress, completed)
assignee_idstringNoThe assignee ID for the task
idstringYesThe ID of the task to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.titlestring | null
data.body_htmlstring | null
data.statusstring | null
data.assignee_idstring | null
data.project_idstring | null
data.milestone_idstring | null
data.due_datestring | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Projects

Projects Create

Create a new project

Python SDK

await pylon.projects.create(
name="<str>",
account_id="<str>",
description_html="<str>",
start_date="<str>",
end_date="<str>"
)

API

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": "projects",
"action": "create",
"params": {
"name": "<str>",
"account_id": "<str>",
"description_html": "<str>",
"start_date": "<str>",
"end_date": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringYesThe name of the project
account_idstringYesThe account ID for the project
description_htmlstringNoThe HTML description of the project
start_datestringNoThe start date of the project (RFC3339)
end_datestringNoThe end date of the project (RFC3339)
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
data.description_htmlstring | null
data.account_idstring | null
data.owner_idstring | null
data.start_datestring | null
data.end_datestring | null
data.is_archivedboolean | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Projects Update

Update an existing project by ID

Python SDK

await pylon.projects.update(
name="<str>",
description_html="<str>",
is_archived=True,
id="<str>"
)

API

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": "projects",
"action": "update",
"params": {
"name": "<str>",
"description_html": "<str>",
"is_archived": True,
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the project
description_htmlstringNoThe HTML description of the project
is_archivedbooleanNoWhether the project is archived
idstringYesThe ID of the project to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
data.description_htmlstring | null
data.account_idstring | null
data.owner_idstring | null
data.start_datestring | null
data.end_datestring | null
data.is_archivedboolean | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Milestones

Milestones Create

Create a new milestone

Python SDK

await pylon.milestones.create(
name="<str>",
project_id="<str>",
due_date="<str>"
)

API

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": "milestones",
"action": "create",
"params": {
"name": "<str>",
"project_id": "<str>",
"due_date": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringYesThe name of the milestone
project_idstringYesThe project ID for the milestone
due_datestringNoThe due date of the milestone (RFC3339)
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
data.project_idstring | null
data.due_datestring | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Milestones Update

Update an existing milestone by ID

Python SDK

await pylon.milestones.update(
name="<str>",
due_date="<str>",
id="<str>"
)

API

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": "milestones",
"action": "update",
"params": {
"name": "<str>",
"due_date": "<str>",
"id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
namestringNoThe name of the milestone
due_datestringNoThe due date of the milestone (RFC3339)
idstringYesThe ID of the milestone to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.namestring | null
data.project_idstring | null
data.due_datestring | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Articles

Articles Create

Create a new article in a knowledge base

Python SDK

await pylon.articles.create(
title="<str>",
body_html="<str>",
author_user_id="<str>",
slug="<str>",
is_published=True,
kb_id="<str>"
)

API

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": "articles",
"action": "create",
"params": {
"title": "<str>",
"body_html": "<str>",
"author_user_id": "<str>",
"slug": "<str>",
"is_published": True,
"kb_id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
titlestringYesThe title of the article
body_htmlstringYesThe HTML body of the article
author_user_idstringYesThe ID of the user attributed as the author
slugstringNoThe slug of the article
is_publishedbooleanNoWhether the article should be published
kb_idstringYesThe ID of the knowledge base
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.titlestring | null
data.body_htmlstring | null
data.slugstring | null
data.is_publishedboolean | null
data.author_user_idstring | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Articles Update

Update an existing article in a knowledge base

Python SDK

await pylon.articles.update(
title="<str>",
body_html="<str>",
kb_id="<str>",
article_id="<str>"
)

API

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": "articles",
"action": "update",
"params": {
"title": "<str>",
"body_html": "<str>",
"kb_id": "<str>",
"article_id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
titlestringNoThe title of the article
body_htmlstringNoThe HTML body of the article
kb_idstringYesThe ID of the knowledge base
article_idstringYesThe ID of the article to update
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.titlestring | null
data.body_htmlstring | null
data.slugstring | null
data.is_publishedboolean | null
data.author_user_idstring | null
data.created_atstring | null
data.updated_atstring | null
request_idstring

Collections

Collections Create

Create a new collection in a knowledge base

Python SDK

await pylon.collections.create(
title="<str>",
description="<str>",
slug="<str>",
kb_id="<str>"
)

API

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": "collections",
"action": "create",
"params": {
"title": "<str>",
"description": "<str>",
"slug": "<str>",
"kb_id": "<str>"
}
}'

Parameters

Parameter NameTypeRequiredDescription
titlestringYesThe title of the collection
descriptionstringNoThe description of the collection
slugstringNoThe slug of the collection
kb_idstringYesThe ID of the knowledge base
Response Schema

Records

Field NameTypeDescription
dataobject
data.idstring
data.titlestring | null
data.descriptionstring | null
data.slugstring | null
data.created_atstring | null
request_idstring

Me

Me Get

Get the currently authenticated user

Python SDK

await pylon.me.get()

API

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": "me",
"action": "get"
}'
Response Schema

Records

Field NameTypeDescription
idstring
avatar_urlstring | null
emailstring | null
emailsarray | null
namestring | null
role_idstring | null
statusstring | null