This is the full reference documentation for the Shopify agent connector.
Supported entities and actions
The Shopify connector supports the following entities and actions.
| Entity | Actions |
|---|
| Customers | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Orders | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Products | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Product Variants | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Product Images | List, Get, Context Store Search, Context Store SQL Query |
| Abandoned Checkouts | List, Context Store Search, Context Store SQL Query |
| Locations | List, Get, Context Store Search, Context Store SQL Query |
| Inventory Levels | List, Context Store Search, Context Store SQL Query |
| Inventory Items | List, Get, Context Store Search, Context Store SQL Query |
| Shop | Get, Context Store Search, Context Store SQL Query |
| Price Rules | List, Get, Context Store Search, Context Store SQL Query |
| Discount Codes | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Custom Collections | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Smart Collections | List, Get, Context Store Search, Context Store SQL Query |
| Collects | List, Get, Context Store Search, Context Store SQL Query |
| Draft Orders | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Fulfillments | List, Get, Context Store Search, Context Store SQL Query |
| Order Refunds | List, Get, Context Store Search, Context Store SQL Query |
| Transactions | List, Get |
| Tender Transactions | List, Context Store Search, Context Store SQL Query |
| Countries | List, Get, Context Store Search, Context Store SQL Query |
| Metafield Shops | List, Get, Context Store Search, Context Store SQL Query |
| Metafield Customers | List, Context Store Search, Context Store SQL Query |
| Metafield Products | List, Context Store Search, Context Store SQL Query |
| Metafield Orders | List, Context Store Search, Context Store SQL Query |
| Metafield Draft Orders | List, Context Store Search, Context Store SQL Query |
| Metafield Locations | List, Context Store Search, Context Store SQL Query |
| Metafield Product Variants | List, Context Store Search, Context Store SQL Query |
| Metafield Smart Collections | List, Context Store Search, Context Store SQL Query |
| Metafield Product Images | List, Context Store Search, Context Store SQL Query |
| Customer Address | List, Get |
| Fulfillment Orders | List, Get, Context Store Search, Context Store SQL Query |
| Pages | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Blogs | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Articles | List, Get, Create, Update, Delete, Context Store Search, Context Store SQL Query |
| Balance Transactions | List, Context Store Search, Context Store SQL Query |
| Disputes | List, Get, Context Store Search, Context Store SQL Query |
| Metafield Pages | List, Context Store Search, Context Store SQL Query |
| Metafield Blogs | List, Context Store Search, Context Store SQL Query |
| Metafield Articles | List, Context Store Search, Context Store SQL Query |
| Draft Order Complete | Update |
| Inventory Set | Create |
| Inventory Adjust | Create |
| Metafields | Create, Delete |
Customers
Customers List
Returns a list of customers from the store
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "list"
}'
Python SDK
await shopify.customers.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": "customers",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show customers created after date (ISO 8601 format) |
created_at_max | string | No | Show customers created before date (ISO 8601 format) |
updated_at_min | string | No | Show customers last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show customers last updated before date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
email | string | null | |
accepts_marketing | boolean | null | |
created_at | string | null | |
updated_at | string | null | |
first_name | string | null | |
last_name | string | null | |
orders_count | integer | null | |
state | string | null | |
total_spent | string | null | |
last_order_id | integer | null | |
note | string | null | |
verified_email | boolean | null | |
multipass_identifier | string | null | |
tax_exempt | boolean | null | |
tags | string | null | |
last_order_name | string | null | |
currency | string | null | |
phone | string | null | |
addresses | array | null | |
addresses[].id | integer | |
addresses[].customer_id | integer | null | |
addresses[].first_name | string | null | |
addresses[].last_name | string | null | |
addresses[].company | string | null | |
addresses[].address1 | string | null | |
addresses[].address2 | string | null | |
addresses[].city | string | null | |
addresses[].province | string | null | |
addresses[].country | string | null | |
addresses[].zip | string | null | |
addresses[].phone | string | null | |
addresses[].name | string | null | |
addresses[].province_code | string | null | |
addresses[].country_code | string | null | |
addresses[].country_name | string | null | |
addresses[].default | boolean | null | |
accepts_marketing_updated_at | string | null | |
marketing_opt_in_level | string | null | |
tax_exemptions | array | null | |
email_marketing_consent | object | any | |
sms_marketing_consent | object | any | |
admin_graphql_api_id | string | null | |
default_address | object | any | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Customers Get
Retrieves a single customer by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "get",
"params": {
"customer_id": 0
}
}'
Python SDK
await shopify.customers.get(
customer_id=0
)
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": "customers",
"action": "get",
"params": {
"customer_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
customer_id | integer | Yes | The customer ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
email | string | null | |
accepts_marketing | boolean | null | |
created_at | string | null | |
updated_at | string | null | |
first_name | string | null | |
last_name | string | null | |
orders_count | integer | null | |
state | string | null | |
total_spent | string | null | |
last_order_id | integer | null | |
note | string | null | |
verified_email | boolean | null | |
multipass_identifier | string | null | |
tax_exempt | boolean | null | |
tags | string | null | |
last_order_name | string | null | |
currency | string | null | |
phone | string | null | |
addresses | array | null | |
addresses[].id | integer | |
addresses[].customer_id | integer | null | |
addresses[].first_name | string | null | |
addresses[].last_name | string | null | |
addresses[].company | string | null | |
addresses[].address1 | string | null | |
addresses[].address2 | string | null | |
addresses[].city | string | null | |
addresses[].province | string | null | |
addresses[].country | string | null | |
addresses[].zip | string | null | |
addresses[].phone | string | null | |
addresses[].name | string | null | |
addresses[].province_code | string | null | |
addresses[].country_code | string | null | |
addresses[].country_name | string | null | |
addresses[].default | boolean | null | |
accepts_marketing_updated_at | string | null | |
marketing_opt_in_level | string | null | |
tax_exemptions | array | null | |
email_marketing_consent | object | any | |
sms_marketing_consent | object | any | |
admin_graphql_api_id | string | null | |
default_address | object | any | |
Customers Create
Creates a new customer in the store via GraphQL mutation.
Requires at least one of: email, phone, firstName, or lastName.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "create",
"params": {
"input": {}
}
}'
Python SDK
await shopify.customers.create(
input={}
)
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": "customers",
"action": "create",
"params": {
"input": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | CustomerInput object |
input.email | string | No | Customer email address |
input.firstName | string | No | Customer first name |
input.lastName | string | No | Customer last name |
input.phone | string | No | Customer phone number (E.164 format, e.g. +16465555555) |
input.note | string | No | Note about the customer |
input.tags | array<string> | No | Tags to associate with the customer |
input.taxExempt | boolean | No | Whether the customer is tax exempt |
input.addresses | array<object> | No | List of customer addresses |
input.addresses.address1 | string | No | |
input.addresses.address2 | string | No | |
input.addresses.city | string | No | |
input.addresses.province | string | No | |
input.addresses.zip | string | No | |
input.addresses.countryCode | string | No | |
input.addresses.phone | string | No | |
input.addresses.firstName | string | No | |
input.addresses.lastName | string | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
customer | object | |
customer.id | string | |
customer.email | string | null | |
customer.firstName | string | null | |
customer.lastName | string | null | |
customer.phone | string | null | |
customer.note | string | null | |
customer.tags | array<string> | |
customer.taxExempt | boolean | null | |
customer.createdAt | string | null | |
customer.updatedAt | string | null | |
Customers Update
Updates an existing customer via GraphQL mutation.
All fields except id are optional for partial updates.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "update",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.customers.update(
input={
"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": "customers",
"action": "update",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | CustomerInput object with id |
input.id | string | Yes | The GraphQL GID of the customer (e.g. gid://shopify/Customer/123) |
input.email | string | No | Customer email address |
input.firstName | string | No | Customer first name |
input.lastName | string | No | Customer last name |
input.phone | string | No | Customer phone number (E.164 format) |
input.note | string | No | Note about the customer |
input.tags | array<string> | No | Tags to associate with the customer |
input.taxExempt | boolean | No | Whether the customer is tax exempt |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
customer | object | |
customer.id | string | |
customer.email | string | null | |
customer.firstName | string | null | |
customer.lastName | string | null | |
customer.phone | string | null | |
customer.note | string | null | |
customer.tags | array<string> | |
customer.taxExempt | boolean | null | |
customer.createdAt | string | null | |
customer.updatedAt | string | null | |
Customers Delete
Deletes a customer from the store via GraphQL mutation.
Only succeeds if the customer has no orders. This action is irreversible.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.customers.delete(
input={
"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": "customers",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.id | string | Yes | The GraphQL GID of the customer to delete (e.g. gid://shopify/Customer/123) |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedCustomerId | string | null | |
Customers Context Store Search
Search and filter customers 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.customers.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "customers",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the customer |
email | string | Primary email address of the customer |
phone | string | Primary phone number of the customer |
first_name | string | First name of the customer |
last_name | string | Last name of the customer |
state | string | Account state (disabled, invited, enabled, declined) |
orders_count | integer | Number of orders placed by the customer |
total_spent | string | Total lifetime amount spent by the customer |
currency | string | ISO 4217 currency code for the customer's total spend |
created_at | string | ISO 8601 timestamp when the customer record was created |
updated_at | string | ISO 8601 timestamp when the customer record was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the customer |
data[].email | string | Primary email address of the customer |
data[].phone | string | Primary phone number of the customer |
data[].first_name | string | First name of the customer |
data[].last_name | string | Last name of the customer |
data[].state | string | Account state (disabled, invited, enabled, declined) |
data[].orders_count | integer | Number of orders placed by the customer |
data[].total_spent | string | Total lifetime amount spent by the customer |
data[].currency | string | ISO 4217 currency code for the customer's total spend |
data[].created_at | string | ISO 8601 timestamp when the customer record was created |
data[].updated_at | string | ISO 8601 timestamp when the customer record was last updated |
Customers Context Store SQL Query
Run a SQL query against customers records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customers",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.customers.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "customers",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Orders
Orders List
Returns a list of orders from the store
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "list"
}'
Python SDK
await shopify.orders.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": "orders",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show orders created after date (ISO 8601 format) |
created_at_max | string | No | Show orders created before date (ISO 8601 format) |
updated_at_min | string | No | Show orders last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show orders last updated before date (ISO 8601 format) |
status | "open" | "closed" | "cancelled" | "any" | No | Filter orders by status |
financial_status | "authorized" | "pending" | "paid" | "partially_paid" | "refunded" | "voided" | "partially_refunded" | "any" | "unpaid" | No | Filter orders by financial status |
fulfillment_status | "shipped" | "partial" | "unshipped" | "any" | "unfulfilled" | No | Filter orders by fulfillment status |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
admin_graphql_api_id | string | null | |
app_id | integer | null | |
browser_ip | string | null | |
buyer_accepts_marketing | boolean | null | |
cancel_reason | string | null | |
cancelled_at | string | null | |
cart_token | string | null | |
checkout_id | integer | null | |
checkout_token | string | null | |
client_details | object | null | |
closed_at | string | null | |
company | object | null | |
confirmation_number | string | null | |
confirmed | boolean | null | |
contact_email | string | null | |
created_at | string | null | |
currency | string | null | |
current_subtotal_price | string | null | |
current_subtotal_price_set | object | null | |
current_total_additional_fees_set | object | null | |
current_total_discounts | string | null | |
current_total_discounts_set | object | null | |
current_total_duties_set | object | null | |
current_total_price | string | null | |
current_total_price_set | object | null | |
current_total_tax | string | null | |
current_total_tax_set | object | null | |
customer | object | any | |
customer_locale | string | null | |
device_id | integer | null | |
discount_applications | array | null | |
discount_codes | array | null | |
email | string | null | |
estimated_taxes | boolean | null | |
financial_status | string | null | |
fulfillment_status | string | null | |
fulfillments | array | null | |
fulfillments[].id | integer | |
fulfillments[].order_id | integer | null | |
fulfillments[].status | string | null | |
fulfillments[].created_at | string | null | |
fulfillments[].service | string | null | |
fulfillments[].updated_at | string | null | |
fulfillments[].tracking_company | string | null | |
fulfillments[].shipment_status | string | null | |
fulfillments[].location_id | integer | null | |
fulfillments[].origin_address | object | null | |
fulfillments[].line_items | array | null | |
fulfillments[].line_items[].id | integer | |
fulfillments[].line_items[].admin_graphql_api_id | string | null | |
fulfillments[].line_items[].attributed_staffs | array | null | |
fulfillments[].line_items[].current_quantity | integer | null | |
fulfillments[].line_items[].fulfillable_quantity | integer | null | |
fulfillments[].line_items[].fulfillment_service | string | null | |
fulfillments[].line_items[].fulfillment_status | string | null | |
fulfillments[].line_items[].gift_card | boolean | null | |
fulfillments[].line_items[].grams | integer | null | |
fulfillments[].line_items[].name | string | null | |
fulfillments[].line_items[].price | string | null | |
fulfillments[].line_items[].price_set | object | null | |
fulfillments[].line_items[].product_exists | boolean | null | |
fulfillments[].line_items[].product_id | integer | null | |
fulfillments[].line_items[].properties | array | null | |
fulfillments[].line_items[].quantity | integer | null | |
fulfillments[].line_items[].requires_shipping | boolean | null | |
fulfillments[].line_items[].sku | string | null | |
fulfillments[].line_items[].taxable | boolean | null | |
fulfillments[].line_items[].title | string | null | |
fulfillments[].line_items[].total_discount | string | null | |
fulfillments[].line_items[].total_discount_set | object | null | |
fulfillments[].line_items[].variant_id | integer | null | |
fulfillments[].line_items[].variant_inventory_management | string | null | |
fulfillments[].line_items[].variant_title | string | null | |
fulfillments[].line_items[].vendor | string | null | |
fulfillments[].line_items[].tax_lines | array | null | |
fulfillments[].line_items[].duties | array | null | |
fulfillments[].line_items[].discount_allocations | array | null | |
fulfillments[].tracking_number | string | null | |
fulfillments[].tracking_numbers | array | null | |
fulfillments[].tracking_url | string | null | |
fulfillments[].tracking_urls | array | null | |
fulfillments[].receipt | object | null | |
fulfillments[].name | string | null | |
fulfillments[].admin_graphql_api_id | string | null | |
gateway | string | null | |
landing_site | string | null | |
landing_site_ref | string | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
location_id | integer | null | |
merchant_of_record_app_id | integer | null | |
merchant_business_entity_id | string | null | |
duties_included | boolean | null | |
total_cash_rounding_payment_adjustment_set | object | null | |
total_cash_rounding_refund_adjustment_set | object | null | |
payment_terms | object | null | |
name | string | null | |
note | string | null | |
note_attributes | array | null | |
number | integer | null | |
order_number | integer | null | |
order_status_url | string | null | |
original_total_additional_fees_set | object | null | |
original_total_duties_set | object | null | |
payment_gateway_names | array | null | |
phone | string | null | |
po_number | string | null | |
presentment_currency | string | null | |
processed_at | string | null | |
reference | string | null | |
referring_site | string | null | |
refunds | array | null | |
refunds[].id | integer | |
refunds[].order_id | integer | null | |
refunds[].created_at | string | null | |
refunds[].note | string | null | |
refunds[].user_id | integer | null | |
refunds[].processed_at | string | null | |
refunds[].restock | boolean | null | |
refunds[].duties | array | null | |
refunds[].total_duties_set | object | null | |
refunds[].return | object | null | |
refunds[].refund_line_items | array | null | |
refunds[].transactions | array | null | |
refunds[].transactions[].id | integer | |
refunds[].transactions[].order_id | integer | null | |
refunds[].transactions[].kind | string | null | |
refunds[].transactions[].gateway | string | null | |
refunds[].transactions[].status | string | null | |
refunds[].transactions[].message | string | null | |
refunds[].transactions[].created_at | string | null | |
refunds[].transactions[].test | boolean | null | |
refunds[].transactions[].authorization | string | null | |
refunds[].transactions[].location_id | integer | null | |
refunds[].transactions[].user_id | integer | null | |
refunds[].transactions[].parent_id | integer | null | |
refunds[].transactions[].processed_at | string | null | |
refunds[].transactions[].device_id | integer | null | |
refunds[].transactions[].error_code | string | null | |
refunds[].transactions[].source_name | string | null | |
refunds[].transactions[].receipt | object | null | |
refunds[].transactions[].currency_exchange_adjustment | object | null | |
refunds[].transactions[].amount | string | null | |
refunds[].transactions[].currency | string | null | |
refunds[].transactions[].payment_id | string | null | |
refunds[].transactions[].total_unsettled_set | object | null | |
refunds[].transactions[].manual_payment_gateway | boolean | null | |
refunds[].transactions[].admin_graphql_api_id | string | null | |
refunds[].order_adjustments | array | null | |
refunds[].admin_graphql_api_id | string | null | |
refunds[].refund_shipping_lines | array | null | |
shipping_address | object | any | |
shipping_lines | array | null | |
source_identifier | string | null | |
source_name | string | null | |
source_url | string | null | |
subtotal_price | string | null | |
subtotal_price_set | object | null | |
tags | string | null | |
tax_exempt | boolean | null | |
tax_lines | array | null | |
taxes_included | boolean | null | |
test | boolean | null | |
token | string | null | |
total_discounts | string | null | |
total_discounts_set | object | null | |
total_line_items_price | string | null | |
total_line_items_price_set | object | null | |
total_outstanding | string | null | |
total_price | string | null | |
total_price_set | object | null | |
total_shipping_price_set | object | null | |
total_tax | string | null | |
total_tax_set | object | null | |
total_tip_received | string | null | |
total_weight | integer | null | |
updated_at | string | null | |
user_id | integer | null | |
billing_address | object | any | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Orders Get
Retrieves a single order by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "get",
"params": {
"order_id": 0
}
}'
Python SDK
await shopify.orders.get(
order_id=0
)
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": "orders",
"action": "get",
"params": {
"order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
admin_graphql_api_id | string | null | |
app_id | integer | null | |
browser_ip | string | null | |
buyer_accepts_marketing | boolean | null | |
cancel_reason | string | null | |
cancelled_at | string | null | |
cart_token | string | null | |
checkout_id | integer | null | |
checkout_token | string | null | |
client_details | object | null | |
closed_at | string | null | |
company | object | null | |
confirmation_number | string | null | |
confirmed | boolean | null | |
contact_email | string | null | |
created_at | string | null | |
currency | string | null | |
current_subtotal_price | string | null | |
current_subtotal_price_set | object | null | |
current_total_additional_fees_set | object | null | |
current_total_discounts | string | null | |
current_total_discounts_set | object | null | |
current_total_duties_set | object | null | |
current_total_price | string | null | |
current_total_price_set | object | null | |
current_total_tax | string | null | |
current_total_tax_set | object | null | |
customer | object | any | |
customer_locale | string | null | |
device_id | integer | null | |
discount_applications | array | null | |
discount_codes | array | null | |
email | string | null | |
estimated_taxes | boolean | null | |
financial_status | string | null | |
fulfillment_status | string | null | |
fulfillments | array | null | |
fulfillments[].id | integer | |
fulfillments[].order_id | integer | null | |
fulfillments[].status | string | null | |
fulfillments[].created_at | string | null | |
fulfillments[].service | string | null | |
fulfillments[].updated_at | string | null | |
fulfillments[].tracking_company | string | null | |
fulfillments[].shipment_status | string | null | |
fulfillments[].location_id | integer | null | |
fulfillments[].origin_address | object | null | |
fulfillments[].line_items | array | null | |
fulfillments[].line_items[].id | integer | |
fulfillments[].line_items[].admin_graphql_api_id | string | null | |
fulfillments[].line_items[].attributed_staffs | array | null | |
fulfillments[].line_items[].current_quantity | integer | null | |
fulfillments[].line_items[].fulfillable_quantity | integer | null | |
fulfillments[].line_items[].fulfillment_service | string | null | |
fulfillments[].line_items[].fulfillment_status | string | null | |
fulfillments[].line_items[].gift_card | boolean | null | |
fulfillments[].line_items[].grams | integer | null | |
fulfillments[].line_items[].name | string | null | |
fulfillments[].line_items[].price | string | null | |
fulfillments[].line_items[].price_set | object | null | |
fulfillments[].line_items[].product_exists | boolean | null | |
fulfillments[].line_items[].product_id | integer | null | |
fulfillments[].line_items[].properties | array | null | |
fulfillments[].line_items[].quantity | integer | null | |
fulfillments[].line_items[].requires_shipping | boolean | null | |
fulfillments[].line_items[].sku | string | null | |
fulfillments[].line_items[].taxable | boolean | null | |
fulfillments[].line_items[].title | string | null | |
fulfillments[].line_items[].total_discount | string | null | |
fulfillments[].line_items[].total_discount_set | object | null | |
fulfillments[].line_items[].variant_id | integer | null | |
fulfillments[].line_items[].variant_inventory_management | string | null | |
fulfillments[].line_items[].variant_title | string | null | |
fulfillments[].line_items[].vendor | string | null | |
fulfillments[].line_items[].tax_lines | array | null | |
fulfillments[].line_items[].duties | array | null | |
fulfillments[].line_items[].discount_allocations | array | null | |
fulfillments[].tracking_number | string | null | |
fulfillments[].tracking_numbers | array | null | |
fulfillments[].tracking_url | string | null | |
fulfillments[].tracking_urls | array | null | |
fulfillments[].receipt | object | null | |
fulfillments[].name | string | null | |
fulfillments[].admin_graphql_api_id | string | null | |
gateway | string | null | |
landing_site | string | null | |
landing_site_ref | string | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
location_id | integer | null | |
merchant_of_record_app_id | integer | null | |
merchant_business_entity_id | string | null | |
duties_included | boolean | null | |
total_cash_rounding_payment_adjustment_set | object | null | |
total_cash_rounding_refund_adjustment_set | object | null | |
payment_terms | object | null | |
name | string | null | |
note | string | null | |
note_attributes | array | null | |
number | integer | null | |
order_number | integer | null | |
order_status_url | string | null | |
original_total_additional_fees_set | object | null | |
original_total_duties_set | object | null | |
payment_gateway_names | array | null | |
phone | string | null | |
po_number | string | null | |
presentment_currency | string | null | |
processed_at | string | null | |
reference | string | null | |
referring_site | string | null | |
refunds | array | null | |
refunds[].id | integer | |
refunds[].order_id | integer | null | |
refunds[].created_at | string | null | |
refunds[].note | string | null | |
refunds[].user_id | integer | null | |
refunds[].processed_at | string | null | |
refunds[].restock | boolean | null | |
refunds[].duties | array | null | |
refunds[].total_duties_set | object | null | |
refunds[].return | object | null | |
refunds[].refund_line_items | array | null | |
refunds[].transactions | array | null | |
refunds[].transactions[].id | integer | |
refunds[].transactions[].order_id | integer | null | |
refunds[].transactions[].kind | string | null | |
refunds[].transactions[].gateway | string | null | |
refunds[].transactions[].status | string | null | |
refunds[].transactions[].message | string | null | |
refunds[].transactions[].created_at | string | null | |
refunds[].transactions[].test | boolean | null | |
refunds[].transactions[].authorization | string | null | |
refunds[].transactions[].location_id | integer | null | |
refunds[].transactions[].user_id | integer | null | |
refunds[].transactions[].parent_id | integer | null | |
refunds[].transactions[].processed_at | string | null | |
refunds[].transactions[].device_id | integer | null | |
refunds[].transactions[].error_code | string | null | |
refunds[].transactions[].source_name | string | null | |
refunds[].transactions[].receipt | object | null | |
refunds[].transactions[].currency_exchange_adjustment | object | null | |
refunds[].transactions[].amount | string | null | |
refunds[].transactions[].currency | string | null | |
refunds[].transactions[].payment_id | string | null | |
refunds[].transactions[].total_unsettled_set | object | null | |
refunds[].transactions[].manual_payment_gateway | boolean | null | |
refunds[].transactions[].admin_graphql_api_id | string | null | |
refunds[].order_adjustments | array | null | |
refunds[].admin_graphql_api_id | string | null | |
refunds[].refund_shipping_lines | array | null | |
shipping_address | object | any | |
shipping_lines | array | null | |
source_identifier | string | null | |
source_name | string | null | |
source_url | string | null | |
subtotal_price | string | null | |
subtotal_price_set | object | null | |
tags | string | null | |
tax_exempt | boolean | null | |
tax_lines | array | null | |
taxes_included | boolean | null | |
test | boolean | null | |
token | string | null | |
total_discounts | string | null | |
total_discounts_set | object | null | |
total_line_items_price | string | null | |
total_line_items_price_set | object | null | |
total_outstanding | string | null | |
total_price | string | null | |
total_price_set | object | null | |
total_shipping_price_set | object | null | |
total_tax | string | null | |
total_tax_set | object | null | |
total_tip_received | string | null | |
total_weight | integer | null | |
updated_at | string | null | |
user_id | integer | null | |
billing_address | object | any | |
Orders Create
Creates a new order via GraphQL mutation.
Use line items with either variantId or customAttributes.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "create",
"params": {
"order": {
"lineItems": []
},
"options": {}
}
}'
Python SDK
await shopify.orders.create(
order={
"lineItems": []
},
options={}
)
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": "orders",
"action": "create",
"params": {
"order": {
"lineItems": []
},
"options": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order | object | Yes | OrderCreateOrderInput object |
order.lineItems | array<object> | Yes | Line items for the order |
order.lineItems.variantId | string | No | GraphQL GID of the product variant |
order.lineItems.quantity | integer | No | Quantity to order |
order.lineItems.title | string | No | Custom title (for custom line items without a variant) |
order.lineItems.priceSet | object | No | |
order.lineItems.priceSet.shopMoney | object | No | |
order.lineItems.priceSet.shopMoney.amount | string | No | |
order.lineItems.priceSet.shopMoney.currencyCode | string | No | |
order.customerId | string | No | GraphQL GID of the customer |
order.email | string | No | Customer email |
order.note | string | No | Order note |
order.tags | array<string> | No | Order tags |
order.shippingAddress | object | No | |
order.shippingAddress.address1 | string | No | |
order.shippingAddress.city | string | No | |
order.shippingAddress.provinceCode | string | No | |
order.shippingAddress.zip | string | No | |
order.shippingAddress.countryCode | string | No | |
order.shippingAddress.firstName | string | No | |
order.shippingAddress.lastName | string | No | |
options | object | No | OrderCreateOptionsInput |
options.inventoryBehaviour | "BYPASS" | "DECREMENT_IGNORING_POLICY" | "DECREMENT_OBEYING_POLICY" | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
order | object | |
order.id | string | |
order.name | string | null | |
order.email | string | null | |
order.createdAt | string | null | |
order.displayFinancialStatus | string | null | |
order.displayFulfillmentStatus | string | null | |
order.totalPriceSet | object | null | |
Orders Update
Updates simple fields on an existing order via GraphQL mutation.
For line item changes, use orderEditBegin/orderEditCommit instead.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "update",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.orders.update(
input={
"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": "orders",
"action": "update",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.id | string | Yes | The GraphQL GID of the order (e.g. gid://shopify/Order/123) |
input.email | string | No | Customer email |
input.note | string | No | Order note |
input.tags | array<string> | No | Order tags |
input.shippingAddress | object | No | |
input.shippingAddress.address1 | string | No | |
input.shippingAddress.city | string | No | |
input.shippingAddress.provinceCode | string | No | |
input.shippingAddress.zip | string | No | |
input.shippingAddress.countryCode | string | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
order | object | |
Orders Delete
Cancels an open order via GraphQL mutation.
This action is irreversible. Optional refund and restock parameters.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "delete",
"params": {
"orderId": "<str>",
"reason": "<str>",
"restock": true
}
}'
Python SDK
await shopify.orders.delete(
order_id="<str>",
reason="<str>",
restock=True
)
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": "orders",
"action": "delete",
"params": {
"orderId": "<str>",
"reason": "<str>",
"restock": True
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
orderId | string | Yes | The GraphQL GID of the order to cancel |
reason | "CUSTOMER" | "DECLINED" | "FRAUD" | "INVENTORY" | "OTHER" | "STAFF" | Yes | Reason for cancellation |
notifyCustomer | boolean | No | Whether to notify the customer |
refund | boolean | No | Whether to refund the order |
restock | boolean | Yes | Whether to restock items |
staffNote | string | No | Staff note for the cancellation |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
orderCancelUserErrors | array<object> | |
orderCancelUserErrors[].field | string | null | array | |
orderCancelUserErrors[].message | string | |
orderCancelUserErrors[].code | string | null | |
job | object | null | |
Orders Context Store Search
Search and filter orders 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.orders.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "orders",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the order |
name | string | Shopify-assigned display name for the order (e.g. #1001) |
email | string | Email address associated with the order |
phone | string | Phone number associated with the order |
order_number | integer | Sequential order number displayed in the Shopify admin |
financial_status | string | Payment status of the order (e.g. paid, pending, refunded, partially_refunded) |
fulfillment_status | string | Fulfillment status of the order (e.g. fulfilled, partial, null for unfulfilled) |
currency | string | ISO 4217 currency code for the order totals |
total_price | string | Total price of the order including taxes and discounts |
subtotal_price | string | Subtotal of the order before shipping and taxes |
total_tax | string | Total tax amount applied to the order |
total_discounts | string | Total discount amount applied to the order |
total_weight | integer | Total weight of all items in the order, in grams |
cancel_reason | string | Reason the order was cancelled, if applicable |
cancelled_at | string | ISO 8601 timestamp when the order was cancelled, if applicable |
closed_at | string | ISO 8601 timestamp when the order was closed, if applicable |
tags | string | Comma-separated tags attached to the order |
note | string | Merchant-provided note on the order |
processed_at | string | ISO 8601 timestamp when the order was processed |
created_at | string | ISO 8601 timestamp when the order was created |
updated_at | string | ISO 8601 timestamp when the order was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the order |
data[].name | string | Shopify-assigned display name for the order (e.g. #1001) |
data[].email | string | Email address associated with the order |
data[].phone | string | Phone number associated with the order |
data[].order_number | integer | Sequential order number displayed in the Shopify admin |
data[].financial_status | string | Payment status of the order (e.g. paid, pending, refunded, partially_refunded) |
data[].fulfillment_status | string | Fulfillment status of the order (e.g. fulfilled, partial, null for unfulfilled) |
data[].currency | string | ISO 4217 currency code for the order totals |
data[].total_price | string | Total price of the order including taxes and discounts |
data[].subtotal_price | string | Subtotal of the order before shipping and taxes |
data[].total_tax | string | Total tax amount applied to the order |
data[].total_discounts | string | Total discount amount applied to the order |
data[].total_weight | integer | Total weight of all items in the order, in grams |
data[].cancel_reason | string | Reason the order was cancelled, if applicable |
data[].cancelled_at | string | ISO 8601 timestamp when the order was cancelled, if applicable |
data[].closed_at | string | ISO 8601 timestamp when the order was closed, if applicable |
data[].tags | string | Comma-separated tags attached to the order |
data[].note | string | Merchant-provided note on the order |
data[].processed_at | string | ISO 8601 timestamp when the order was processed |
data[].created_at | string | ISO 8601 timestamp when the order was created |
data[].updated_at | string | ISO 8601 timestamp when the order was last updated |
Orders Context Store SQL Query
Run a SQL query against orders records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.orders.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Products
Products List
Returns a list of products from the store
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "list"
}'
Python SDK
await shopify.products.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": "products",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show products created after date (ISO 8601 format) |
created_at_max | string | No | Show products created before date (ISO 8601 format) |
updated_at_min | string | No | Show products last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show products last updated before date (ISO 8601 format) |
status | "active" | "archived" | "draft" | No | Filter products by status |
product_type | string | No | Filter by product type |
vendor | string | No | Filter by vendor |
collection_id | integer | No | Filter by collection ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
body_html | string | null | |
vendor | string | null | |
product_type | string | null | |
created_at | string | null | |
handle | string | null | |
updated_at | string | null | |
published_at | string | null | |
template_suffix | string | null | |
published_scope | string | null | |
tags | string | null | |
status | string | null | |
admin_graphql_api_id | string | null | |
variants | array | null | |
variants[].id | integer | |
variants[].product_id | integer | null | |
variants[].title | string | null | |
variants[].price | string | null | |
variants[].sku | string | null | |
variants[].position | integer | null | |
variants[].inventory_policy | string | null | |
variants[].compare_at_price | string | null | |
variants[].fulfillment_service | string | null | |
variants[].inventory_management | string | null | |
variants[].option1 | string | null | |
variants[].option2 | string | null | |
variants[].option3 | string | null | |
variants[].created_at | string | null | |
variants[].updated_at | string | null | |
variants[].taxable | boolean | null | |
variants[].barcode | string | null | |
variants[].grams | integer | null | |
variants[].image_id | integer | null | |
variants[].weight | number | null | |
variants[].weight_unit | string | null | |
variants[].inventory_item_id | integer | null | |
variants[].inventory_quantity | integer | null | |
variants[].old_inventory_quantity | integer | null | |
variants[].requires_shipping | boolean | null | |
variants[].admin_graphql_api_id | string | null | |
options | array | null | |
images | array | null | |
images[].id | integer | |
images[].product_id | integer | null | |
images[].position | integer | null | |
images[].created_at | string | null | |
images[].updated_at | string | null | |
images[].alt | string | null | |
images[].width | integer | null | |
images[].height | integer | null | |
images[].src | string | null | |
images[].variant_ids | array | null | |
images[].admin_graphql_api_id | string | null | |
image | object | any | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Products Get
Retrieves a single product by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "get",
"params": {
"product_id": 0
}
}'
Python SDK
await shopify.products.get(
product_id=0
)
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": "products",
"action": "get",
"params": {
"product_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product_id | integer | Yes | The product ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
body_html | string | null | |
vendor | string | null | |
product_type | string | null | |
created_at | string | null | |
handle | string | null | |
updated_at | string | null | |
published_at | string | null | |
template_suffix | string | null | |
published_scope | string | null | |
tags | string | null | |
status | string | null | |
admin_graphql_api_id | string | null | |
variants | array | null | |
variants[].id | integer | |
variants[].product_id | integer | null | |
variants[].title | string | null | |
variants[].price | string | null | |
variants[].sku | string | null | |
variants[].position | integer | null | |
variants[].inventory_policy | string | null | |
variants[].compare_at_price | string | null | |
variants[].fulfillment_service | string | null | |
variants[].inventory_management | string | null | |
variants[].option1 | string | null | |
variants[].option2 | string | null | |
variants[].option3 | string | null | |
variants[].created_at | string | null | |
variants[].updated_at | string | null | |
variants[].taxable | boolean | null | |
variants[].barcode | string | null | |
variants[].grams | integer | null | |
variants[].image_id | integer | null | |
variants[].weight | number | null | |
variants[].weight_unit | string | null | |
variants[].inventory_item_id | integer | null | |
variants[].inventory_quantity | integer | null | |
variants[].old_inventory_quantity | integer | null | |
variants[].requires_shipping | boolean | null | |
variants[].admin_graphql_api_id | string | null | |
options | array | null | |
images | array | null | |
images[].id | integer | |
images[].product_id | integer | null | |
images[].position | integer | null | |
images[].created_at | string | null | |
images[].updated_at | string | null | |
images[].alt | string | null | |
images[].width | integer | null | |
images[].height | integer | null | |
images[].src | string | null | |
images[].variant_ids | array | null | |
images[].admin_graphql_api_id | string | null | |
image | object | any | |
Products Create
Creates a new product via GraphQL mutation.
Creates the product with a default variant. Use productVariantsBulkCreate
to add additional variants afterwards.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "create",
"params": {
"product": {
"title": "<str>"
},
"media": []
}
}'
Python SDK
await shopify.products.create(
product={
"title": "<str>"
},
media=[]
)
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": "products",
"action": "create",
"params": {
"product": {
"title": "<str>"
},
"media": []
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product | object | Yes | ProductCreateInput object |
product.title | string | Yes | Product title |
product.descriptionHtml | string | No | Product description in HTML |
product.vendor | string | No | Product vendor |
product.productType | string | No | Product type |
product.tags | array<string> | No | Tags for the product |
product.status | "ACTIVE" | "ARCHIVED" | "DRAFT" | No | Product status (ACTIVE, ARCHIVED, DRAFT) |
media | array<object> | No | Media to attach to the product |
media.originalSource | string | No | URL of the media |
media.mediaContentType | "IMAGE" | "VIDEO" | "EXTERNAL_VIDEO" | "MODEL_3D" | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
product | object | |
product.id | string | |
product.title | string | null | |
product.descriptionHtml | string | null | |
product.vendor | string | null | |
product.productType | string | null | |
product.tags | array<string> | |
product.status | string | null | |
product.createdAt | string | null | |
product.updatedAt | string | null | |
Products Update
Updates an existing product via GraphQL mutation.
All fields except id are optional for partial updates.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "update",
"params": {
"product": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.products.update(
product={
"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": "products",
"action": "update",
"params": {
"product": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product | object | Yes | ProductUpdateInput object |
product.id | string | Yes | The GraphQL GID of the product (e.g. gid://shopify/Product/123) |
product.title | string | No | Product title |
product.descriptionHtml | string | No | Product description in HTML |
product.vendor | string | No | Product vendor |
product.productType | string | No | Product type |
product.tags | array<string> | No | Tags for the product |
product.status | "ACTIVE" | "ARCHIVED" | "DRAFT" | No | Product status |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
product | object | |
product.id | string | |
product.title | string | null | |
product.descriptionHtml | string | null | |
product.vendor | string | null | |
product.productType | string | null | |
product.tags | array<string> | |
product.status | string | null | |
product.createdAt | string | null | |
product.updatedAt | string | null | |
Products Delete
Deletes a product from the store via GraphQL mutation.
This action is irreversible.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.products.delete(
input={
"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": "products",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.id | string | Yes | The GraphQL GID of the product to delete (e.g. gid://shopify/Product/123) |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedProductId | string | null | |
Products Context Store Search
Search and filter products 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.products.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "products",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the product |
title | string | Product title |
body_html | string | Product description in HTML |
vendor | string | Product vendor or manufacturer |
product_type | string | Product type used for categorization |
handle | string | URL-friendly handle for the product |
status | string | Product status (active, archived, or draft) |
tags | string | Comma-separated tags attached to the product |
published_scope | string | Publishing scope (web or global) |
published_at | string | ISO 8601 timestamp when the product was published |
created_at | string | ISO 8601 timestamp when the product was created |
updated_at | string | ISO 8601 timestamp when the product was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the product |
data[].title | string | Product title |
data[].body_html | string | Product description in HTML |
data[].vendor | string | Product vendor or manufacturer |
data[].product_type | string | Product type used for categorization |
data[].handle | string | URL-friendly handle for the product |
data[].status | string | Product status (active, archived, or draft) |
data[].tags | string | Comma-separated tags attached to the product |
data[].published_scope | string | Publishing scope (web or global) |
data[].published_at | string | ISO 8601 timestamp when the product was published |
data[].created_at | string | ISO 8601 timestamp when the product was created |
data[].updated_at | string | ISO 8601 timestamp when the product was last updated |
Products Context Store SQL Query
Run a SQL query against products records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "products",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.products.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "products",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Product Variants
Product Variants List
Returns a list of variants for a product
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "list",
"params": {
"product_id": 0
}
}'
Python SDK
await shopify.product_variants.list(
product_id=0
)
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": "product_variants",
"action": "list",
"params": {
"product_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product_id | integer | Yes | The product ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
product_id | integer | null | |
title | string | null | |
price | string | null | |
sku | string | null | |
position | integer | null | |
inventory_policy | string | null | |
compare_at_price | string | null | |
fulfillment_service | string | null | |
inventory_management | string | null | |
option1 | string | null | |
option2 | string | null | |
option3 | string | null | |
created_at | string | null | |
updated_at | string | null | |
taxable | boolean | null | |
barcode | string | null | |
grams | integer | null | |
image_id | integer | null | |
weight | number | null | |
weight_unit | string | null | |
inventory_item_id | integer | null | |
inventory_quantity | integer | null | |
old_inventory_quantity | integer | null | |
requires_shipping | boolean | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Product Variants Get
Retrieves a single product variant by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "get",
"params": {
"variant_id": 0
}
}'
Python SDK
await shopify.product_variants.get(
variant_id=0
)
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": "product_variants",
"action": "get",
"params": {
"variant_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
variant_id | integer | Yes | The variant ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
product_id | integer | null | |
title | string | null | |
price | string | null | |
sku | string | null | |
position | integer | null | |
inventory_policy | string | null | |
compare_at_price | string | null | |
fulfillment_service | string | null | |
inventory_management | string | null | |
option1 | string | null | |
option2 | string | null | |
option3 | string | null | |
created_at | string | null | |
updated_at | string | null | |
taxable | boolean | null | |
barcode | string | null | |
grams | integer | null | |
image_id | integer | null | |
weight | number | null | |
weight_unit | string | null | |
inventory_item_id | integer | null | |
inventory_quantity | integer | null | |
old_inventory_quantity | integer | null | |
requires_shipping | boolean | null | |
admin_graphql_api_id | string | null | |
Product Variants Create
Creates one or more product variants via GraphQL mutation.
Variants are created in bulk for a given product.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "create",
"params": {
"productId": "<str>",
"variants": []
}
}'
Python SDK
await shopify.product_variants.create(
product_id="<str>",
variants=[]
)
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": "product_variants",
"action": "create",
"params": {
"productId": "<str>",
"variants": []
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
productId | string | Yes | The GraphQL GID of the product (e.g. gid://shopify/Product/123) |
variants | array<object> | Yes | List of variants to create |
variants.price | string | No | Variant price |
variants.barcode | string | No | Variant barcode |
variants.compareAtPrice | string | No | Compare-at price |
variants.inventoryItem | object | No | Inventory-item attributes for the variant. As of Admin API 2024-07+ the SKU is no longer a variant-level field and must be set here (a top-level sku is ignored/rejected by productVariantsBulkCreate). |
variants.inventoryItem.sku | string | No | Variant SKU (set via inventoryItem.sku) |
variants.optionValues | array<object> | No | Required in practice: each variant must supply one option value for EVERY option defined on the product. A product with options Color and Size needs both here; a product with only the default option needs a single "Title" entry. Omitting an option (or optionValues entirely) causes a userErrors rejection. |
variants.optionValues.optionName | string | Yes | Name of the product option this value belongs to (e.g. "Color", "Size", or "Title" for a single-option product). |
variants.optionValues.name | string | Yes | The option value (e.g. "Large"). If the value already exists on the option it is linked; otherwise a new option value is created. |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
productVariants | array | null | |
productVariants[].id | string | |
productVariants[].title | string | null | |
productVariants[].price | string | null | |
productVariants[].sku | string | null | |
productVariants[].barcode | string | null | |
productVariants[].compareAtPrice | string | null | |
productVariants[].inventoryQuantity | integer | null | |
Product Variants Update
Updates one or more product variants via GraphQL mutation.
Variants are updated in bulk for a given product.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "update",
"params": {
"productId": "<str>",
"variants": []
}
}'
Python SDK
await shopify.product_variants.update(
product_id="<str>",
variants=[]
)
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": "product_variants",
"action": "update",
"params": {
"productId": "<str>",
"variants": []
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
productId | string | Yes | The GraphQL GID of the product |
variants | array<object> | Yes | List of variants to update (each must include id) |
variants.id | string | Yes | The GraphQL GID of the variant |
variants.price | string | No | |
variants.barcode | string | No | |
variants.compareAtPrice | string | No | |
variants.inventoryItem | object | No | Inventory-item attributes for the variant. As of Admin API 2024-07+ the SKU is no longer a variant-level field and must be set here (a top-level sku is ignored/rejected by productVariantsBulkUpdate, which silently returns null instead of updating). |
variants.inventoryItem.sku | string | No | Variant SKU (set via inventoryItem.sku) |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
productVariants | array | null | |
productVariants[].id | string | |
productVariants[].title | string | null | |
productVariants[].price | string | null | |
productVariants[].sku | string | null | |
productVariants[].barcode | string | null | |
productVariants[].compareAtPrice | string | null | |
productVariants[].inventoryQuantity | integer | null | |
Product Variants Delete
Deletes one or more product variants via GraphQL mutation.
Cannot delete the last variant of a product.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "delete",
"params": {
"productId": "<str>",
"variantsIds": []
}
}'
Python SDK
await shopify.product_variants.delete(
product_id="<str>",
variants_ids=[]
)
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": "product_variants",
"action": "delete",
"params": {
"productId": "<str>",
"variantsIds": []
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
productId | string | Yes | The GraphQL GID of the product |
variantsIds | array<string> | Yes | List of variant GIDs to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
product | object | null | |
Product Variants Context Store Search
Search and filter product variants 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.product_variants.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "product_variants",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the product variant |
product_id | integer | Identifier of the parent product |
title | string | Display title of the variant |
sku | string | Stock keeping unit for the variant |
price | string | Price of the variant in the shop's currency |
compare_at_price | string | Original (compare-at) price of the variant, if set |
position | integer | Display position of the variant within the product |
inventory_policy | string | Behaviour when out of stock (deny or continue) |
created_at | string | ISO 8601 timestamp when the variant was created |
updated_at | string | ISO 8601 timestamp when the variant was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the product variant |
data[].product_id | integer | Identifier of the parent product |
data[].title | string | Display title of the variant |
data[].sku | string | Stock keeping unit for the variant |
data[].price | string | Price of the variant in the shop's currency |
data[].compare_at_price | string | Original (compare-at) price of the variant, if set |
data[].position | integer | Display position of the variant within the product |
data[].inventory_policy | string | Behaviour when out of stock (deny or continue) |
data[].created_at | string | ISO 8601 timestamp when the variant was created |
data[].updated_at | string | ISO 8601 timestamp when the variant was last updated |
Product Variants Context Store SQL Query
Run a SQL query against product variants records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_variants",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.product_variants.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "product_variants",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Product Images
Product Images List
Returns a list of images for a product
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_images",
"action": "list",
"params": {
"product_id": 0
}
}'
Python SDK
await shopify.product_images.list(
product_id=0
)
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": "product_images",
"action": "list",
"params": {
"product_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product_id | integer | Yes | The product ID |
since_id | integer | No | Restrict results to after the specified ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
product_id | integer | null | |
position | integer | null | |
created_at | string | null | |
updated_at | string | null | |
alt | string | null | |
width | integer | null | |
height | integer | null | |
src | string | null | |
variant_ids | array | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Product Images Get
Retrieves a single product image by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_images",
"action": "get",
"params": {
"product_id": 0,
"image_id": 0
}
}'
Python SDK
await shopify.product_images.get(
product_id=0,
image_id=0
)
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": "product_images",
"action": "get",
"params": {
"product_id": 0,
"image_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product_id | integer | Yes | The product ID |
image_id | integer | Yes | The image ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
product_id | integer | null | |
position | integer | null | |
created_at | string | null | |
updated_at | string | null | |
alt | string | null | |
width | integer | null | |
height | integer | null | |
src | string | null | |
variant_ids | array | null | |
admin_graphql_api_id | string | null | |
Product Images Context Store Search
Search and filter product images 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_images",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.product_images.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "product_images",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the product image |
product_id | integer | Identifier of the product the image belongs to |
position | integer | Display position of the image within the product |
alt | string | Alt text for the image |
width | integer | Image width in pixels |
height | integer | Image height in pixels |
src | string | Public URL of the image |
created_at | string | ISO 8601 timestamp when the image was created |
updated_at | string | ISO 8601 timestamp when the image was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the product image |
data[].product_id | integer | Identifier of the product the image belongs to |
data[].position | integer | Display position of the image within the product |
data[].alt | string | Alt text for the image |
data[].width | integer | Image width in pixels |
data[].height | integer | Image height in pixels |
data[].src | string | Public URL of the image |
data[].created_at | string | ISO 8601 timestamp when the image was created |
data[].updated_at | string | ISO 8601 timestamp when the image was last updated |
Product Images Context Store SQL Query
Run a SQL query against product images records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "product_images",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.product_images.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "product_images",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Abandoned Checkouts
Abandoned Checkouts List
Returns a list of abandoned checkouts
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "abandoned_checkouts",
"action": "list"
}'
Python SDK
await shopify.abandoned_checkouts.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": "abandoned_checkouts",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show checkouts created after date (ISO 8601 format) |
created_at_max | string | No | Show checkouts created before date (ISO 8601 format) |
updated_at_min | string | No | Show checkouts last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show checkouts last updated before date (ISO 8601 format) |
status | "open" | "closed" | "any" | No | Filter checkouts by status |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
token | string | null | |
cart_token | string | null | |
email | string | null | |
gateway | string | null | |
buyer_accepts_marketing | boolean | null | |
created_at | string | null | |
updated_at | string | null | |
landing_site | string | null | |
note | string | null | |
note_attributes | array | null | |
referring_site | string | null | |
shipping_lines | array | null | |
taxes_included | boolean | null | |
total_weight | integer | null | |
currency | string | null | |
completed_at | string | null | |
closed_at | string | null | |
user_id | integer | null | |
location_id | integer | null | |
source_identifier | string | null | |
source_url | string | null | |
device_id | integer | null | |
phone | string | null | |
customer_locale | string | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
name | string | null | |
source | string | null | |
abandoned_checkout_url | string | null | |
discount_codes | array | null | |
tax_lines | array | null | |
source_name | string | null | |
presentment_currency | string | null | |
buyer_accepts_sms_marketing | boolean | null | |
sms_marketing_phone | string | null | |
total_discounts | string | null | |
total_line_items_price | string | null | |
total_price | string | null | |
total_tax | string | null | |
subtotal_price | string | null | |
total_duties | string | null | |
billing_address | object | any | |
shipping_address | object | any | |
customer | object | any | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Abandoned Checkouts Context Store Search
Search and filter abandoned checkouts 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "abandoned_checkouts",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.abandoned_checkouts.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "abandoned_checkouts",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the abandoned checkout |
token | string | Unique token identifying the checkout |
email | string | Email address provided for the checkout |
phone | string | Phone number provided for the checkout |
name | string | Shopify-assigned display name for the checkout (e.g. #C12345) |
currency | string | ISO 4217 currency code for the checkout totals |
total_price | string | Total price of the checkout in the shop's currency |
created_at | string | ISO 8601 timestamp when the checkout was created |
updated_at | string | ISO 8601 timestamp when the checkout was last updated |
completed_at | string | ISO 8601 timestamp when the checkout was completed, if applicable |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the abandoned checkout |
data[].token | string | Unique token identifying the checkout |
data[].email | string | Email address provided for the checkout |
data[].phone | string | Phone number provided for the checkout |
data[].name | string | Shopify-assigned display name for the checkout (e.g. #C12345) |
data[].currency | string | ISO 4217 currency code for the checkout totals |
data[].total_price | string | Total price of the checkout in the shop's currency |
data[].created_at | string | ISO 8601 timestamp when the checkout was created |
data[].updated_at | string | ISO 8601 timestamp when the checkout was last updated |
data[].completed_at | string | ISO 8601 timestamp when the checkout was completed, if applicable |
Abandoned Checkouts Context Store SQL Query
Run a SQL query against abandoned checkouts records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "abandoned_checkouts",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.abandoned_checkouts.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "abandoned_checkouts",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Locations
Locations List
Returns a list of locations for the store
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "locations",
"action": "list"
}'
Python SDK
await shopify.locations.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": "locations",
"action": "list"
}'
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
name | string | null | |
address1 | string | null | |
address2 | string | null | |
city | string | null | |
zip | string | null | |
province | string | null | |
country | string | null | |
phone | string | null | |
created_at | string | null | |
updated_at | string | null | |
country_code | string | null | |
country_name | string | null | |
province_code | string | null | |
legacy | boolean | null | |
active | boolean | null | |
admin_graphql_api_id | string | null | |
localized_country_name | string | null | |
localized_province_name | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Locations Get
Retrieves a single location by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "locations",
"action": "get",
"params": {
"location_id": 0
}
}'
Python SDK
await shopify.locations.get(
location_id=0
)
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": "locations",
"action": "get",
"params": {
"location_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
location_id | integer | Yes | The location ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
name | string | null | |
address1 | string | null | |
address2 | string | null | |
city | string | null | |
zip | string | null | |
province | string | null | |
country | string | null | |
phone | string | null | |
created_at | string | null | |
updated_at | string | null | |
country_code | string | null | |
country_name | string | null | |
province_code | string | null | |
legacy | boolean | null | |
active | boolean | null | |
admin_graphql_api_id | string | null | |
localized_country_name | string | null | |
localized_province_name | string | null | |
Locations Context Store Search
Search and filter locations 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "locations",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.locations.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "locations",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the location |
name | string | Display name of the location |
address1 | string | Primary street address of the location |
city | string | City of the location |
province | string | Province, state, or region of the location |
country | string | Country name of the location |
country_code | string | ISO 3166-1 alpha-2 country code of the location |
phone | string | Phone number for the location |
active | boolean | Whether the location is currently active |
created_at | string | ISO 8601 timestamp when the location was created |
updated_at | string | ISO 8601 timestamp when the location was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the location |
data[].name | string | Display name of the location |
data[].address1 | string | Primary street address of the location |
data[].city | string | City of the location |
data[].province | string | Province, state, or region of the location |
data[].country | string | Country name of the location |
data[].country_code | string | ISO 3166-1 alpha-2 country code of the location |
data[].phone | string | Phone number for the location |
data[].active | boolean | Whether the location is currently active |
data[].created_at | string | ISO 8601 timestamp when the location was created |
data[].updated_at | string | ISO 8601 timestamp when the location was last updated |
Locations Context Store SQL Query
Run a SQL query against locations records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "locations",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.locations.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "locations",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Inventory Levels
Inventory Levels List
Returns a list of inventory levels for a specific location
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_levels",
"action": "list",
"params": {
"location_id": 0
}
}'
Python SDK
await shopify.inventory_levels.list(
location_id=0
)
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": "inventory_levels",
"action": "list",
"params": {
"location_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
location_id | integer | Yes | The location ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
inventory_item_id | integer | |
location_id | integer | null | |
available | integer | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Inventory Levels Context Store Search
Search and filter inventory levels 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_levels",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"inventory_item_id": 0
}
}
}
}
}'
Python SDK
await shopify.inventory_levels.context_store_search(
query={"filter": {"eq": {"inventory_item_id": 0}}}
)
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": "inventory_levels",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"inventory_item_id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
inventory_item_id | integer | Identifier of the inventory item |
location_id | integer | Identifier of the location holding the inventory |
available | integer | Number of units available at the location |
updated_at | string | ISO 8601 timestamp when the inventory level was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].inventory_item_id | integer | Identifier of the inventory item |
data[].location_id | integer | Identifier of the location holding the inventory |
data[].available | integer | Number of units available at the location |
data[].updated_at | string | ISO 8601 timestamp when the inventory level was last updated |
Inventory Levels Context Store SQL Query
Run a SQL query against inventory levels records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_levels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.inventory_levels.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "inventory_levels",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Inventory Items
Inventory Items List
Returns a list of inventory items
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_items",
"action": "list",
"params": {
"ids": "<str>"
}
}'
Python SDK
await shopify.inventory_items.list(
ids="<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": "inventory_items",
"action": "list",
"params": {
"ids": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
ids | string | Yes | Comma-separated list of inventory item IDs |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
sku | string | null | |
created_at | string | null | |
updated_at | string | null | |
requires_shipping | boolean | null | |
cost | string | null | |
country_code_of_origin | string | null | |
province_code_of_origin | string | null | |
harmonized_system_code | string | null | |
tracked | boolean | null | |
country_harmonized_system_codes | array | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Inventory Items Get
Retrieves a single inventory item by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_items",
"action": "get",
"params": {
"inventory_item_id": 0
}
}'
Python SDK
await shopify.inventory_items.get(
inventory_item_id=0
)
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": "inventory_items",
"action": "get",
"params": {
"inventory_item_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
inventory_item_id | integer | Yes | The inventory item ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
sku | string | null | |
created_at | string | null | |
updated_at | string | null | |
requires_shipping | boolean | null | |
cost | string | null | |
country_code_of_origin | string | null | |
province_code_of_origin | string | null | |
harmonized_system_code | string | null | |
tracked | boolean | null | |
country_harmonized_system_codes | array | null | |
admin_graphql_api_id | string | null | |
Inventory Items Context Store Search
Search and filter inventory items 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_items",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.inventory_items.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "inventory_items",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the inventory item |
sku | string | Stock keeping unit associated with the inventory item |
tracked | boolean | Whether Shopify is tracking inventory for this item |
requires_shipping | boolean | Whether the item requires shipping |
country_code_of_origin | string | ISO country code of the item's country of origin |
created_at | string | ISO 8601 timestamp when the inventory item was created |
updated_at | string | ISO 8601 timestamp when the inventory item was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the inventory item |
data[].sku | string | Stock keeping unit associated with the inventory item |
data[].tracked | boolean | Whether Shopify is tracking inventory for this item |
data[].requires_shipping | boolean | Whether the item requires shipping |
data[].country_code_of_origin | string | ISO country code of the item's country of origin |
data[].created_at | string | ISO 8601 timestamp when the inventory item was created |
data[].updated_at | string | ISO 8601 timestamp when the inventory item was last updated |
Inventory Items Context Store SQL Query
Run a SQL query against inventory items records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_items",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.inventory_items.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "inventory_items",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Shop
Shop Get
Retrieves the shop's configuration
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "shop",
"action": "get"
}'
Python SDK
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": "shop",
"action": "get"
}'
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
name | string | null | |
email | string | null | |
domain | string | null | |
province | string | null | |
country | string | null | |
address1 | string | null | |
zip | string | null | |
city | string | null | |
source | string | null | |
phone | string | null | |
latitude | number | null | |
longitude | number | null | |
primary_locale | string | null | |
address2 | string | null | |
created_at | string | null | |
updated_at | string | null | |
country_code | string | null | |
country_name | string | null | |
currency | string | null | |
customer_email | string | null | |
timezone | string | null | |
iana_timezone | string | null | |
shop_owner | string | null | |
money_format | string | null | |
money_with_currency_format | string | null | |
weight_unit | string | null | |
province_code | string | null | |
taxes_included | boolean | null | |
auto_configure_tax_inclusivity | boolean | null | |
tax_shipping | boolean | null | |
county_taxes | boolean | null | |
plan_display_name | string | null | |
plan_name | string | null | |
has_discounts | boolean | null | |
has_gift_cards | boolean | null | |
myshopify_domain | string | null | |
google_apps_domain | string | null | |
google_apps_login_enabled | boolean | null | |
money_in_emails_format | string | null | |
money_with_currency_in_emails_format | string | null | |
eligible_for_payments | boolean | null | |
requires_extra_payments_agreement | boolean | null | |
password_enabled | boolean | null | |
has_storefront | boolean | null | |
finances | boolean | null | |
primary_location_id | integer | null | |
checkout_api_supported | boolean | null | |
multi_location_enabled | boolean | null | |
setup_required | boolean | null | |
pre_launch_enabled | boolean | null | |
enabled_presentment_currencies | array | null | |
transactional_sms_disabled | boolean | null | |
marketing_sms_consent_enabled_at_checkout | boolean | null | |
Shop Context Store Search
Search and filter shop 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "shop",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.shop.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "shop",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the shop |
name | string | Display name of the shop |
email | string | Primary contact email for the shop |
domain | string | Custom domain configured for the shop, if any |
myshopify_domain | string | Canonical *.myshopify.com domain for the shop |
country_code | string | ISO 3166-1 alpha-2 country code of the shop |
currency | string | ISO 4217 currency code used by the shop |
timezone | string | Timezone configured for the shop (e.g. (GMT-05:00) Eastern Time) |
plan_name | string | Shopify plan identifier (e.g. shopify_plus, basic) |
created_at | string | ISO 8601 timestamp when the shop was created |
updated_at | string | ISO 8601 timestamp when the shop was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the shop |
data[].name | string | Display name of the shop |
data[].email | string | Primary contact email for the shop |
data[].domain | string | Custom domain configured for the shop, if any |
data[].myshopify_domain | string | Canonical *.myshopify.com domain for the shop |
data[].country_code | string | ISO 3166-1 alpha-2 country code of the shop |
data[].currency | string | ISO 4217 currency code used by the shop |
data[].timezone | string | Timezone configured for the shop (e.g. (GMT-05:00) Eastern Time) |
data[].plan_name | string | Shopify plan identifier (e.g. shopify_plus, basic) |
data[].created_at | string | ISO 8601 timestamp when the shop was created |
data[].updated_at | string | ISO 8601 timestamp when the shop was last updated |
Shop Context Store SQL Query
Run a SQL query against shop records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "shop",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.shop.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "shop",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Price Rules
Price Rules List
Returns a list of price rules
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "price_rules",
"action": "list"
}'
Python SDK
await shopify.price_rules.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": "price_rules",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show price rules created after date (ISO 8601 format) |
created_at_max | string | No | Show price rules created before date (ISO 8601 format) |
updated_at_min | string | No | Show price rules last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show price rules last updated before date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
value_type | string | null | |
value | string | null | |
customer_selection | string | null | |
target_type | string | null | |
target_selection | string | null | |
allocation_method | string | null | |
allocation_limit | integer | null | |
once_per_customer | boolean | null | |
usage_limit | integer | null | |
starts_at | string | null | |
ends_at | string | null | |
created_at | string | null | |
updated_at | string | null | |
entitled_product_ids | array | null | |
entitled_variant_ids | array | null | |
entitled_collection_ids | array | null | |
entitled_country_ids | array | null | |
prerequisite_product_ids | array | null | |
prerequisite_variant_ids | array | null | |
prerequisite_collection_ids | array | null | |
customer_segment_prerequisite_ids | array | null | |
prerequisite_customer_ids | array | null | |
prerequisite_subtotal_range | object | null | |
prerequisite_quantity_range | object | null | |
prerequisite_shipping_price_range | object | null | |
prerequisite_to_entitlement_quantity_ratio | object | null | |
prerequisite_to_entitlement_purchase | object | null | |
title | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Price Rules Get
Retrieves a single price rule by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "price_rules",
"action": "get",
"params": {
"price_rule_id": 0
}
}'
Python SDK
await shopify.price_rules.get(
price_rule_id=0
)
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": "price_rules",
"action": "get",
"params": {
"price_rule_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
price_rule_id | integer | Yes | The price rule ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
value_type | string | null | |
value | string | null | |
customer_selection | string | null | |
target_type | string | null | |
target_selection | string | null | |
allocation_method | string | null | |
allocation_limit | integer | null | |
once_per_customer | boolean | null | |
usage_limit | integer | null | |
starts_at | string | null | |
ends_at | string | null | |
created_at | string | null | |
updated_at | string | null | |
entitled_product_ids | array | null | |
entitled_variant_ids | array | null | |
entitled_collection_ids | array | null | |
entitled_country_ids | array | null | |
prerequisite_product_ids | array | null | |
prerequisite_variant_ids | array | null | |
prerequisite_collection_ids | array | null | |
customer_segment_prerequisite_ids | array | null | |
prerequisite_customer_ids | array | null | |
prerequisite_subtotal_range | object | null | |
prerequisite_quantity_range | object | null | |
prerequisite_shipping_price_range | object | null | |
prerequisite_to_entitlement_quantity_ratio | object | null | |
prerequisite_to_entitlement_purchase | object | null | |
title | string | null | |
admin_graphql_api_id | string | null | |
Price Rules Context Store Search
Search and filter price rules 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "price_rules",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.price_rules.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "price_rules",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the price rule |
title | string | Administrative title of the price rule |
value_type | string | How the discount value is interpreted (fixed_amount or percentage) |
value | string | Discount value applied by the rule |
target_type | string | Type of target the rule applies to (line_item or shipping_line) |
target_selection | string | Which target items the rule applies to (all or entitled) |
allocation_method | string | How the discount is allocated (each or across) |
starts_at | string | ISO 8601 timestamp when the rule starts being active |
ends_at | string | ISO 8601 timestamp when the rule stops being active, if applicable |
created_at | string | ISO 8601 timestamp when the rule was created |
updated_at | string | ISO 8601 timestamp when the rule was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the price rule |
data[].title | string | Administrative title of the price rule |
data[].value_type | string | How the discount value is interpreted (fixed_amount or percentage) |
data[].value | string | Discount value applied by the rule |
data[].target_type | string | Type of target the rule applies to (line_item or shipping_line) |
data[].target_selection | string | Which target items the rule applies to (all or entitled) |
data[].allocation_method | string | How the discount is allocated (each or across) |
data[].starts_at | string | ISO 8601 timestamp when the rule starts being active |
data[].ends_at | string | ISO 8601 timestamp when the rule stops being active, if applicable |
data[].created_at | string | ISO 8601 timestamp when the rule was created |
data[].updated_at | string | ISO 8601 timestamp when the rule was last updated |
Price Rules Context Store SQL Query
Run a SQL query against price rules records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "price_rules",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.price_rules.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "price_rules",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Discount Codes
Discount Codes List
Returns a list of discount codes for a price rule
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "list",
"params": {
"price_rule_id": 0
}
}'
Python SDK
await shopify.discount_codes.list(
price_rule_id=0
)
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": "discount_codes",
"action": "list",
"params": {
"price_rule_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
price_rule_id | integer | Yes | The price rule ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
price_rule_id | integer | null | |
code | string | null | |
usage_count | integer | null | |
created_at | string | null | |
updated_at | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Discount Codes Get
Retrieves a single discount code by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "get",
"params": {
"price_rule_id": 0,
"discount_code_id": 0
}
}'
Python SDK
await shopify.discount_codes.get(
price_rule_id=0,
discount_code_id=0
)
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": "discount_codes",
"action": "get",
"params": {
"price_rule_id": 0,
"discount_code_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
price_rule_id | integer | Yes | The price rule ID |
discount_code_id | integer | Yes | The discount code ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
price_rule_id | integer | null | |
code | string | null | |
usage_count | integer | null | |
created_at | string | null | |
updated_at | string | null | |
Discount Codes Create
Creates a basic discount code via GraphQL mutation.
Supports percentage, fixed amount, or free shipping discounts.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "create",
"params": {
"basicCodeDiscount": {
"title": "<str>",
"code": "<str>",
"startsAt": "2025-01-01T00:00:00Z",
"customerGets": {},
"customerSelection": {}
}
}
}'
Python SDK
await shopify.discount_codes.create(
basic_code_discount={
"title": "<str>",
"code": "<str>",
"startsAt": "2025-01-01T00:00:00Z",
"customerGets": {},
"customerSelection": {}
}
)
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": "discount_codes",
"action": "create",
"params": {
"basicCodeDiscount": {
"title": "<str>",
"code": "<str>",
"startsAt": "2025-01-01T00:00:00Z",
"customerGets": {},
"customerSelection": {}
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
basicCodeDiscount | object | Yes | |
basicCodeDiscount.title | string | Yes | Discount title |
basicCodeDiscount.code | string | Yes | Discount code that customers enter at checkout |
basicCodeDiscount.startsAt | string | Yes | When the discount starts (ISO 8601) |
basicCodeDiscount.endsAt | string | No | When the discount ends (ISO 8601, optional) |
basicCodeDiscount.usageLimit | integer | No | Maximum number of times the discount can be used |
basicCodeDiscount.customerSelection | object | Yes | Which customers can use this discount |
basicCodeDiscount.customerSelection.all | boolean | No | Set to true for all customers |
basicCodeDiscount.customerGets | object | Yes | What the customer gets from this discount |
basicCodeDiscount.customerGets.value | object | No | The discount value |
basicCodeDiscount.customerGets.value.percentage | number | No | Percentage discount (e.g. 0.1 for 10%) |
basicCodeDiscount.customerGets.value.discountAmount | object | No | |
basicCodeDiscount.customerGets.value.discountAmount.amount | string | No | |
basicCodeDiscount.customerGets.value.discountAmount.appliesOnEachItem | boolean | No | |
basicCodeDiscount.customerGets.items | object | No | Which items the discount applies to |
basicCodeDiscount.customerGets.items.all | boolean | No | Set to true for all items |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
codeDiscountNode | object | null | |
Discount Codes Update
Updates an existing basic discount code via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "update",
"params": {
"id": "<str>",
"basicCodeDiscount": {}
}
}'
Python SDK
await shopify.discount_codes.update(
id="<str>",
basic_code_discount={}
)
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": "discount_codes",
"action": "update",
"params": {
"id": "<str>",
"basicCodeDiscount": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the discount code node to update |
basicCodeDiscount | object | Yes | |
basicCodeDiscount.title | string | No | |
basicCodeDiscount.code | string | No | |
basicCodeDiscount.startsAt | string | No | |
basicCodeDiscount.endsAt | string | No | |
basicCodeDiscount.usageLimit | integer | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
codeDiscountNode | object | null | |
Discount Codes Delete
Deletes a discount code via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Python SDK
await shopify.discount_codes.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": "discount_codes",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the discount code node to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedCodeDiscountId | string | null | |
Discount Codes Context Store Search
Search and filter discount codes 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.discount_codes.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "discount_codes",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the discount code |
price_rule_id | integer | Identifier of the parent price rule |
code | string | Discount code string shoppers enter at checkout |
usage_count | integer | Number of times the code has been redeemed |
created_at | string | ISO 8601 timestamp when the code was created |
updated_at | string | ISO 8601 timestamp when the code was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the discount code |
data[].price_rule_id | integer | Identifier of the parent price rule |
data[].code | string | Discount code string shoppers enter at checkout |
data[].usage_count | integer | Number of times the code has been redeemed |
data[].created_at | string | ISO 8601 timestamp when the code was created |
data[].updated_at | string | ISO 8601 timestamp when the code was last updated |
Discount Codes Context Store SQL Query
Run a SQL query against discount codes records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "discount_codes",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.discount_codes.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "discount_codes",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Custom Collections
Custom Collections List
Returns a list of custom collections
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "list"
}'
Python SDK
await shopify.custom_collections.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": "custom_collections",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
title | string | No | Filter by collection title |
product_id | integer | No | Filter by product ID |
updated_at_min | string | No | Show collections last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show collections last updated before date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
handle | string | null | |
title | string | null | |
updated_at | string | null | |
body_html | string | null | |
published_at | string | null | |
sort_order | string | null | |
template_suffix | string | null | |
published_scope | string | null | |
admin_graphql_api_id | string | null | |
image | object | null | |
products_count | integer | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Custom Collections Get
Retrieves a single custom collection by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "get",
"params": {
"collection_id": 0
}
}'
Python SDK
await shopify.custom_collections.get(
collection_id=0
)
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_collections",
"action": "get",
"params": {
"collection_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
collection_id | integer | Yes | The collection ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
handle | string | null | |
title | string | null | |
updated_at | string | null | |
body_html | string | null | |
published_at | string | null | |
sort_order | string | null | |
template_suffix | string | null | |
published_scope | string | null | |
admin_graphql_api_id | string | null | |
image | object | null | |
products_count | integer | null | |
Custom Collections Create
Creates a new collection (custom or smart) via GraphQL mutation.
For smart collections, provide ruleSet with rules.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "create",
"params": {
"input": {
"title": "<str>"
}
}
}'
Python SDK
await shopify.custom_collections.create(
input={
"title": "<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_collections",
"action": "create",
"params": {
"input": {
"title": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.title | string | Yes | Collection title |
input.descriptionHtml | string | No | Collection description in HTML |
input.handle | string | No | URL handle for the collection |
input.sortOrder | "ALPHA_ASC" | "ALPHA_DESC" | "BEST_SELLING" | "CREATED" | "CREATED_DESC" | "MANUAL" | "PRICE_ASC" | "PRICE_DESC" | No | Sort order for products |
input.templateSuffix | string | No | Liquid template suffix |
input.ruleSet | object | No | Rule set for smart collections |
input.ruleSet.appliedDisjunctively | boolean | No | Whether rules are OR (true) or AND (false) |
input.ruleSet.rules | array<object> | No | |
input.ruleSet.rules.column | string | No | Rule column (e.g. TAG, TITLE, VENDOR) |
input.ruleSet.rules.relation | string | No | Rule relation (e.g. EQUALS, CONTAINS) |
input.ruleSet.rules.condition | string | No | Rule condition value |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
collection | object | |
Custom Collections Update
Updates an existing collection via GraphQL mutation.
Rule-based membership recompute is async for smart collections.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "update",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.custom_collections.update(
input={
"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_collections",
"action": "update",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.id | string | Yes | The GraphQL GID of the collection |
input.title | string | No | |
input.descriptionHtml | string | No | |
input.handle | string | No | |
input.sortOrder | "ALPHA_ASC" | "ALPHA_DESC" | "BEST_SELLING" | "CREATED" | "CREATED_DESC" | "MANUAL" | "PRICE_ASC" | "PRICE_DESC" | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
collection | object | |
Custom Collections Delete
Deletes a collection via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.custom_collections.delete(
input={
"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_collections",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.id | string | Yes | The GraphQL GID of the collection to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedCollectionId | string | null | |
Custom Collections Context Store Search
Search and filter custom collections 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.custom_collections.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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_collections",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the custom collection |
handle | string | URL-friendly handle for the custom collection |
title | string | Display title of the custom collection |
sort_order | string | How products are sorted within the collection (e.g. best-selling) |
published_scope | string | Publishing scope (web or global) |
published_at | string | ISO 8601 timestamp when the collection was published |
updated_at | string | ISO 8601 timestamp when the collection was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the custom collection |
data[].handle | string | URL-friendly handle for the custom collection |
data[].title | string | Display title of the custom collection |
data[].sort_order | string | How products are sorted within the collection (e.g. best-selling) |
data[].published_scope | string | Publishing scope (web or global) |
data[].published_at | string | ISO 8601 timestamp when the collection was published |
data[].updated_at | string | ISO 8601 timestamp when the collection was last updated |
Custom Collections Context Store SQL Query
Run a SQL query against custom collections records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "custom_collections",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.custom_collections.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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_collections",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Smart Collections
Smart Collections List
Returns a list of smart collections
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "smart_collections",
"action": "list"
}'
Python SDK
await shopify.smart_collections.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": "smart_collections",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
title | string | No | Filter by collection title |
product_id | integer | No | Filter by product ID |
updated_at_min | string | No | Show collections last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show collections last updated before date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
handle | string | null | |
title | string | null | |
updated_at | string | null | |
body_html | string | null | |
published_at | string | null | |
sort_order | string | null | |
template_suffix | string | null | |
disjunctive | boolean | null | |
rules | array | null | |
published_scope | string | null | |
admin_graphql_api_id | string | null | |
image | object | null | |
products_count | integer | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Smart Collections Get
Retrieves a single smart collection by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "smart_collections",
"action": "get",
"params": {
"collection_id": 0
}
}'
Python SDK
await shopify.smart_collections.get(
collection_id=0
)
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": "smart_collections",
"action": "get",
"params": {
"collection_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
collection_id | integer | Yes | The collection ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
handle | string | null | |
title | string | null | |
updated_at | string | null | |
body_html | string | null | |
published_at | string | null | |
sort_order | string | null | |
template_suffix | string | null | |
disjunctive | boolean | null | |
rules | array | null | |
published_scope | string | null | |
admin_graphql_api_id | string | null | |
image | object | null | |
products_count | integer | null | |
Smart Collections Context Store Search
Search and filter smart collections 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "smart_collections",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.smart_collections.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "smart_collections",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the smart collection |
handle | string | URL-friendly handle for the smart collection |
title | string | Display title of the smart collection |
sort_order | string | How products are sorted within the collection |
published_scope | string | Publishing scope (web or global) |
published_at | string | ISO 8601 timestamp when the collection was published |
updated_at | string | ISO 8601 timestamp when the collection was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the smart collection |
data[].handle | string | URL-friendly handle for the smart collection |
data[].title | string | Display title of the smart collection |
data[].sort_order | string | How products are sorted within the collection |
data[].published_scope | string | Publishing scope (web or global) |
data[].published_at | string | ISO 8601 timestamp when the collection was published |
data[].updated_at | string | ISO 8601 timestamp when the collection was last updated |
Smart Collections Context Store SQL Query
Run a SQL query against smart collections records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "smart_collections",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.smart_collections.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "smart_collections",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Collects
Collects List
Returns a list of collects (links between products and collections)
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "collects",
"action": "list"
}'
Python SDK
await shopify.collects.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": "collects",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
collection_id | integer | No | Filter by collection ID |
product_id | integer | No | Filter by product ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
collection_id | integer | null | |
product_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
position | integer | null | |
sort_value | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Collects Get
Retrieves a single collect by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "collects",
"action": "get",
"params": {
"collect_id": 0
}
}'
Python SDK
await shopify.collects.get(
collect_id=0
)
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": "collects",
"action": "get",
"params": {
"collect_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
collect_id | integer | Yes | The collect ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
collection_id | integer | null | |
product_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
position | integer | null | |
sort_value | string | null | |
Collects Context Store Search
Search and filter collects 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "collects",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.collects.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "collects",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the collect |
collection_id | integer | Identifier of the collection the product belongs to |
product_id | integer | Identifier of the product in the collection |
position | integer | Position of the product within the collection |
created_at | string | ISO 8601 timestamp when the collect was created |
updated_at | string | ISO 8601 timestamp when the collect was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the collect |
data[].collection_id | integer | Identifier of the collection the product belongs to |
data[].product_id | integer | Identifier of the product in the collection |
data[].position | integer | Position of the product within the collection |
data[].created_at | string | ISO 8601 timestamp when the collect was created |
data[].updated_at | string | ISO 8601 timestamp when the collect was last updated |
Collects Context Store SQL Query
Run a SQL query against collects records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "collects",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.collects.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "collects",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Draft Orders
Draft Orders List
Returns a list of draft orders
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "list"
}'
Python SDK
await shopify.draft_orders.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": "draft_orders",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
status | "open" | "invoice_sent" | "completed" | No | Filter draft orders by status |
updated_at_min | string | No | Show draft orders last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show draft orders last updated before date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
note | string | null | |
email | string | null | |
taxes_included | boolean | null | |
currency | string | null | |
invoice_sent_at | string | null | |
created_at | string | null | |
updated_at | string | null | |
tax_exempt | boolean | null | |
completed_at | string | null | |
name | string | null | |
status | string | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
shipping_address | object | any | |
billing_address | object | any | |
invoice_url | string | null | |
applied_discount | object | null | |
order_id | integer | null | |
shipping_line | object | null | |
tax_lines | array | null | |
tags | string | null | |
note_attributes | array | null | |
total_price | string | null | |
subtotal_price | string | null | |
total_tax | string | null | |
payment_terms | object | null | |
admin_graphql_api_id | string | null | |
customer | object | any | |
allow_discount_codes_in_checkout? | boolean | null | |
b2b? | boolean | null | |
api_client_id | integer | null | |
created_on_api_version_handle | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Draft Orders Get
Retrieves a single draft order by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "get",
"params": {
"draft_order_id": 0
}
}'
Python SDK
await shopify.draft_orders.get(
draft_order_id=0
)
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": "draft_orders",
"action": "get",
"params": {
"draft_order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
draft_order_id | integer | Yes | The draft order ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
note | string | null | |
email | string | null | |
taxes_included | boolean | null | |
currency | string | null | |
invoice_sent_at | string | null | |
created_at | string | null | |
updated_at | string | null | |
tax_exempt | boolean | null | |
completed_at | string | null | |
name | string | null | |
status | string | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
shipping_address | object | any | |
billing_address | object | any | |
invoice_url | string | null | |
applied_discount | object | null | |
order_id | integer | null | |
shipping_line | object | null | |
tax_lines | array | null | |
tags | string | null | |
note_attributes | array | null | |
total_price | string | null | |
subtotal_price | string | null | |
total_tax | string | null | |
payment_terms | object | null | |
admin_graphql_api_id | string | null | |
customer | object | any | |
allow_discount_codes_in_checkout? | boolean | null | |
b2b? | boolean | null | |
api_client_id | integer | null | |
created_on_api_version_handle | string | null | |
Draft Orders Create
Creates a new draft order via GraphQL mutation.
Draft orders can be completed to become regular orders.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "create",
"params": {
"input": {}
}
}'
Python SDK
await shopify.draft_orders.create(
input={}
)
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": "draft_orders",
"action": "create",
"params": {
"input": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | DraftOrderInput object |
input.lineItems | array<object> | No | Line items for the draft order |
input.lineItems.variantId | string | No | GraphQL GID of the product variant |
input.lineItems.quantity | integer | No | Quantity |
input.lineItems.title | string | No | Custom title |
input.lineItems.originalUnitPrice | string | No | Unit price |
input.customerId | string | No | GraphQL GID of the customer |
input.email | string | No | Customer email |
input.note | string | No | Draft order note |
input.tags | array<string> | No | |
input.shippingAddress | object | No | |
input.shippingAddress.address1 | string | No | |
input.shippingAddress.city | string | No | |
input.shippingAddress.provinceCode | string | No | |
input.shippingAddress.zip | string | No | |
input.shippingAddress.countryCode | string | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
draftOrder | object | |
draftOrder.id | string | |
draftOrder.name | string | null | |
draftOrder.email | string | null | |
draftOrder.status | string | null | |
draftOrder.createdAt | string | null | |
draftOrder.updatedAt | string | null | |
draftOrder.totalPrice | string | null | |
draftOrder.currencyCode | string | null | |
Draft Orders Update
Updates an existing draft order via GraphQL mutation.
Only open draft orders can be updated.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "update",
"params": {
"id": "<str>",
"input": {}
}
}'
Python SDK
await shopify.draft_orders.update(
id="<str>",
input={}
)
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": "draft_orders",
"action": "update",
"params": {
"id": "<str>",
"input": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the draft order to update |
input | object | Yes | DraftOrderInput object with updated fields |
input.lineItems | array<object> | No | |
input.lineItems.variantId | string | No | |
input.lineItems.quantity | integer | No | |
input.lineItems.title | string | No | |
input.lineItems.originalUnitPrice | string | No | |
input.email | string | No | |
input.note | string | No | |
input.tags | array<string> | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
draftOrder | object | |
draftOrder.id | string | |
draftOrder.name | string | null | |
draftOrder.email | string | null | |
draftOrder.status | string | null | |
draftOrder.createdAt | string | null | |
draftOrder.updatedAt | string | null | |
draftOrder.totalPrice | string | null | |
draftOrder.currencyCode | string | null | |
Draft Orders Delete
Deletes a draft order via GraphQL mutation.
Only open draft orders can be deleted.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Python SDK
await shopify.draft_orders.delete(
input={
"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": "draft_orders",
"action": "delete",
"params": {
"input": {
"id": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.id | string | Yes | The GraphQL GID of the draft order to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedId | string | null | |
Draft Orders Context Store Search
Search and filter draft orders 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.draft_orders.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "draft_orders",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the draft order |
name | string | Shopify-assigned display name for the draft order (e.g. #D12345) |
email | string | Email address associated with the draft order |
status | string | Status of the draft order (open, invoice_sent, completed) |
currency | string | ISO 4217 currency code for the draft order totals |
total_price | string | Total price of the draft order |
order_id | integer | Identifier of the completed order, if the draft has been completed |
created_at | string | ISO 8601 timestamp when the draft order was created |
updated_at | string | ISO 8601 timestamp when the draft order was last updated |
completed_at | string | ISO 8601 timestamp when the draft order was completed, if applicable |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the draft order |
data[].name | string | Shopify-assigned display name for the draft order (e.g. #D12345) |
data[].email | string | Email address associated with the draft order |
data[].status | string | Status of the draft order (open, invoice_sent, completed) |
data[].currency | string | ISO 4217 currency code for the draft order totals |
data[].total_price | string | Total price of the draft order |
data[].order_id | integer | Identifier of the completed order, if the draft has been completed |
data[].created_at | string | ISO 8601 timestamp when the draft order was created |
data[].updated_at | string | ISO 8601 timestamp when the draft order was last updated |
data[].completed_at | string | ISO 8601 timestamp when the draft order was completed, if applicable |
Draft Orders Context Store SQL Query
Run a SQL query against draft orders records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.draft_orders.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "draft_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Fulfillments
Fulfillments List
Returns a list of fulfillments for an order
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillments",
"action": "list",
"params": {
"order_id": 0
}
}'
Python SDK
await shopify.fulfillments.list(
order_id=0
)
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": "fulfillments",
"action": "list",
"params": {
"order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show fulfillments created after date (ISO 8601 format) |
created_at_max | string | No | Show fulfillments created before date (ISO 8601 format) |
updated_at_min | string | No | Show fulfillments last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show fulfillments last updated before date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
status | string | null | |
created_at | string | null | |
service | string | null | |
updated_at | string | null | |
tracking_company | string | null | |
shipment_status | string | null | |
location_id | integer | null | |
origin_address | object | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
tracking_number | string | null | |
tracking_numbers | array | null | |
tracking_url | string | null | |
tracking_urls | array | null | |
receipt | object | null | |
name | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Fulfillments Get
Retrieves a single fulfillment by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillments",
"action": "get",
"params": {
"order_id": 0,
"fulfillment_id": 0
}
}'
Python SDK
await shopify.fulfillments.get(
order_id=0,
fulfillment_id=0
)
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": "fulfillments",
"action": "get",
"params": {
"order_id": 0,
"fulfillment_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
fulfillment_id | integer | Yes | The fulfillment ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
status | string | null | |
created_at | string | null | |
service | string | null | |
updated_at | string | null | |
tracking_company | string | null | |
shipment_status | string | null | |
location_id | integer | null | |
origin_address | object | null | |
line_items | array | null | |
line_items[].id | integer | |
line_items[].admin_graphql_api_id | string | null | |
line_items[].attributed_staffs | array | null | |
line_items[].current_quantity | integer | null | |
line_items[].fulfillable_quantity | integer | null | |
line_items[].fulfillment_service | string | null | |
line_items[].fulfillment_status | string | null | |
line_items[].gift_card | boolean | null | |
line_items[].grams | integer | null | |
line_items[].name | string | null | |
line_items[].price | string | null | |
line_items[].price_set | object | null | |
line_items[].product_exists | boolean | null | |
line_items[].product_id | integer | null | |
line_items[].properties | array | null | |
line_items[].quantity | integer | null | |
line_items[].requires_shipping | boolean | null | |
line_items[].sku | string | null | |
line_items[].taxable | boolean | null | |
line_items[].title | string | null | |
line_items[].total_discount | string | null | |
line_items[].total_discount_set | object | null | |
line_items[].variant_id | integer | null | |
line_items[].variant_inventory_management | string | null | |
line_items[].variant_title | string | null | |
line_items[].vendor | string | null | |
line_items[].tax_lines | array | null | |
line_items[].duties | array | null | |
line_items[].discount_allocations | array | null | |
tracking_number | string | null | |
tracking_numbers | array | null | |
tracking_url | string | null | |
tracking_urls | array | null | |
receipt | object | null | |
name | string | null | |
admin_graphql_api_id | string | null | |
Fulfillments Context Store Search
Search and filter fulfillments 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillments",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.fulfillments.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "fulfillments",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the fulfillment |
order_id | integer | Identifier of the parent order |
status | string | Fulfillment status (e.g. pending, open, success, cancelled) |
shipment_status | string | Carrier shipment status (e.g. delivered, in_transit) |
tracking_company | string | Name of the shipping carrier |
tracking_number | string | Primary tracking number for the shipment |
location_id | integer | Identifier of the fulfilling location |
created_at | string | ISO 8601 timestamp when the fulfillment was created |
updated_at | string | ISO 8601 timestamp when the fulfillment was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the fulfillment |
data[].order_id | integer | Identifier of the parent order |
data[].status | string | Fulfillment status (e.g. pending, open, success, cancelled) |
data[].shipment_status | string | Carrier shipment status (e.g. delivered, in_transit) |
data[].tracking_company | string | Name of the shipping carrier |
data[].tracking_number | string | Primary tracking number for the shipment |
data[].location_id | integer | Identifier of the fulfilling location |
data[].created_at | string | ISO 8601 timestamp when the fulfillment was created |
data[].updated_at | string | ISO 8601 timestamp when the fulfillment was last updated |
Fulfillments Context Store SQL Query
Run a SQL query against fulfillments records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillments",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.fulfillments.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "fulfillments",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Order Refunds
Order Refunds List
Returns a list of refunds for an order
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "order_refunds",
"action": "list",
"params": {
"order_id": 0
}
}'
Python SDK
await shopify.order_refunds.list(
order_id=0
)
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": "order_refunds",
"action": "list",
"params": {
"order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
created_at | string | null | |
note | string | null | |
user_id | integer | null | |
processed_at | string | null | |
restock | boolean | null | |
duties | array | null | |
total_duties_set | object | null | |
return | object | null | |
refund_line_items | array | null | |
transactions | array | null | |
transactions[].id | integer | |
transactions[].order_id | integer | null | |
transactions[].kind | string | null | |
transactions[].gateway | string | null | |
transactions[].status | string | null | |
transactions[].message | string | null | |
transactions[].created_at | string | null | |
transactions[].test | boolean | null | |
transactions[].authorization | string | null | |
transactions[].location_id | integer | null | |
transactions[].user_id | integer | null | |
transactions[].parent_id | integer | null | |
transactions[].processed_at | string | null | |
transactions[].device_id | integer | null | |
transactions[].error_code | string | null | |
transactions[].source_name | string | null | |
transactions[].receipt | object | null | |
transactions[].currency_exchange_adjustment | object | null | |
transactions[].amount | string | null | |
transactions[].currency | string | null | |
transactions[].payment_id | string | null | |
transactions[].total_unsettled_set | object | null | |
transactions[].manual_payment_gateway | boolean | null | |
transactions[].admin_graphql_api_id | string | null | |
order_adjustments | array | null | |
admin_graphql_api_id | string | null | |
refund_shipping_lines | array | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Order Refunds Get
Retrieves a single refund by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "order_refunds",
"action": "get",
"params": {
"order_id": 0,
"refund_id": 0
}
}'
Python SDK
await shopify.order_refunds.get(
order_id=0,
refund_id=0
)
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": "order_refunds",
"action": "get",
"params": {
"order_id": 0,
"refund_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
refund_id | integer | Yes | The refund ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
created_at | string | null | |
note | string | null | |
user_id | integer | null | |
processed_at | string | null | |
restock | boolean | null | |
duties | array | null | |
total_duties_set | object | null | |
return | object | null | |
refund_line_items | array | null | |
transactions | array | null | |
transactions[].id | integer | |
transactions[].order_id | integer | null | |
transactions[].kind | string | null | |
transactions[].gateway | string | null | |
transactions[].status | string | null | |
transactions[].message | string | null | |
transactions[].created_at | string | null | |
transactions[].test | boolean | null | |
transactions[].authorization | string | null | |
transactions[].location_id | integer | null | |
transactions[].user_id | integer | null | |
transactions[].parent_id | integer | null | |
transactions[].processed_at | string | null | |
transactions[].device_id | integer | null | |
transactions[].error_code | string | null | |
transactions[].source_name | string | null | |
transactions[].receipt | object | null | |
transactions[].currency_exchange_adjustment | object | null | |
transactions[].amount | string | null | |
transactions[].currency | string | null | |
transactions[].payment_id | string | null | |
transactions[].total_unsettled_set | object | null | |
transactions[].manual_payment_gateway | boolean | null | |
transactions[].admin_graphql_api_id | string | null | |
order_adjustments | array | null | |
admin_graphql_api_id | string | null | |
refund_shipping_lines | array | null | |
Order Refunds Context Store Search
Search and filter order refunds 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "order_refunds",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.order_refunds.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "order_refunds",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the refund |
order_id | integer | Identifier of the refunded order |
user_id | integer | Identifier of the staff user who processed the refund |
note | string | Merchant-provided note explaining the refund |
created_at | string | ISO 8601 timestamp when the refund was created |
processed_at | string | ISO 8601 timestamp when the refund was processed |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the refund |
data[].order_id | integer | Identifier of the refunded order |
data[].user_id | integer | Identifier of the staff user who processed the refund |
data[].note | string | Merchant-provided note explaining the refund |
data[].created_at | string | ISO 8601 timestamp when the refund was created |
data[].processed_at | string | ISO 8601 timestamp when the refund was processed |
Order Refunds Context Store SQL Query
Run a SQL query against order refunds records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "order_refunds",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.order_refunds.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "order_refunds",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Transactions
Transactions List
Returns a list of transactions for an order
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "transactions",
"action": "list",
"params": {
"order_id": 0
}
}'
Python SDK
await shopify.transactions.list(
order_id=0
)
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": "transactions",
"action": "list",
"params": {
"order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
since_id | integer | No | Restrict results to after the specified ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
kind | string | null | |
gateway | string | null | |
status | string | null | |
message | string | null | |
created_at | string | null | |
test | boolean | null | |
authorization | string | null | |
location_id | integer | null | |
user_id | integer | null | |
parent_id | integer | null | |
processed_at | string | null | |
device_id | integer | null | |
error_code | string | null | |
source_name | string | null | |
receipt | object | null | |
currency_exchange_adjustment | object | null | |
amount | string | null | |
currency | string | null | |
payment_id | string | null | |
total_unsettled_set | object | null | |
manual_payment_gateway | boolean | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Transactions Get
Retrieves a single transaction by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "transactions",
"action": "get",
"params": {
"order_id": 0,
"transaction_id": 0
}
}'
Python SDK
await shopify.transactions.get(
order_id=0,
transaction_id=0
)
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": "transactions",
"action": "get",
"params": {
"order_id": 0,
"transaction_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
transaction_id | integer | Yes | The transaction ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
kind | string | null | |
gateway | string | null | |
status | string | null | |
message | string | null | |
created_at | string | null | |
test | boolean | null | |
authorization | string | null | |
location_id | integer | null | |
user_id | integer | null | |
parent_id | integer | null | |
processed_at | string | null | |
device_id | integer | null | |
error_code | string | null | |
source_name | string | null | |
receipt | object | null | |
currency_exchange_adjustment | object | null | |
amount | string | null | |
currency | string | null | |
payment_id | string | null | |
total_unsettled_set | object | null | |
manual_payment_gateway | boolean | null | |
admin_graphql_api_id | string | null | |
Tender Transactions
Tender Transactions List
Returns a list of tender transactions
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "tender_transactions",
"action": "list"
}'
Python SDK
await shopify.tender_transactions.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": "tender_transactions",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
processed_at_min | string | No | Show tender transactions processed after date (ISO 8601 format) |
processed_at_max | string | No | Show tender transactions processed before date (ISO 8601 format) |
order | "processed_at ASC" | "processed_at DESC" | No | Order of results |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
amount | string | null | |
currency | string | null | |
user_id | integer | null | |
test | boolean | null | |
processed_at | string | null | |
remote_reference | string | null | |
payment_details | object | null | |
payment_method | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Tender Transactions Context Store Search
Search and filter tender transactions 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "tender_transactions",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.tender_transactions.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "tender_transactions",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the tender transaction |
order_id | integer | Identifier of the order the transaction belongs to |
user_id | integer | Identifier of the staff user who processed the transaction |
amount | string | Amount of the transaction in the shop's currency |
currency | string | ISO 4217 currency code for the transaction amount |
payment_method | string | Payment method used (e.g. credit_card, paypal) |
test | boolean | Whether the transaction was a test transaction |
processed_at | string | ISO 8601 timestamp when the transaction was processed |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the tender transaction |
data[].order_id | integer | Identifier of the order the transaction belongs to |
data[].user_id | integer | Identifier of the staff user who processed the transaction |
data[].amount | string | Amount of the transaction in the shop's currency |
data[].currency | string | ISO 4217 currency code for the transaction amount |
data[].payment_method | string | Payment method used (e.g. credit_card, paypal) |
data[].test | boolean | Whether the transaction was a test transaction |
data[].processed_at | string | ISO 8601 timestamp when the transaction was processed |
Tender Transactions Context Store SQL Query
Run a SQL query against tender transactions records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "tender_transactions",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.tender_transactions.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "tender_transactions",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Countries
Countries List
Returns a list of countries
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "countries",
"action": "list"
}'
Python SDK
await shopify.countries.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": "countries",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
since_id | integer | No | Restrict results to after the specified ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
name | string | null | |
code | string | null | |
tax_name | string | null | |
tax | number | null | |
provinces | array | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Countries Get
Retrieves a single country by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "countries",
"action": "get",
"params": {
"country_id": 0
}
}'
Python SDK
await shopify.countries.get(
country_id=0
)
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": "countries",
"action": "get",
"params": {
"country_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
country_id | integer | Yes | The country ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
name | string | null | |
code | string | null | |
tax_name | string | null | |
tax | number | null | |
provinces | array | null | |
Countries Context Store Search
Search and filter countries 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "countries",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.countries.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "countries",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the country tax row |
name | string | Human-readable country name |
code | string | ISO 3166-1 alpha-2 country code |
tax_name | string | Localized name of the tax applied in this country |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the country tax row |
data[].name | string | Human-readable country name |
data[].code | string | ISO 3166-1 alpha-2 country code |
data[].tax_name | string | Localized name of the tax applied in this country |
Countries Context Store SQL Query
Run a SQL query against countries records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "countries",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.countries.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "countries",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for the shop
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_shops",
"action": "list"
}'
Python SDK
await shopify.metafield_shops.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": "metafield_shops",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
type | string | No | Filter by type |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Retrieves a single metafield by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_shops",
"action": "get",
"params": {
"metafield_id": 0
}
}'
Python SDK
await shopify.metafield_shops.get(
metafield_id=0
)
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": "metafield_shops",
"action": "get",
"params": {
"metafield_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
metafield_id | integer | Yes | The metafield ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
Metafield Shops Context Store Search
Search and filter metafield shops 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_shops",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_shops.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_shops",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Shops Context Store SQL Query
Run a SQL query against metafield shops records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_shops",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_shops.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_shops",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a customer
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_customers",
"action": "list",
"params": {
"customer_id": 0
}
}'
Python SDK
await shopify.metafield_customers.list(
customer_id=0
)
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": "metafield_customers",
"action": "list",
"params": {
"customer_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
customer_id | integer | Yes | The customer ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Customers Context Store Search
Search and filter metafield customers 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_customers",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_customers.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_customers",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Customers Context Store SQL Query
Run a SQL query against metafield customers records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_customers",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_customers.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_customers",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a product
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_products",
"action": "list",
"params": {
"product_id": 0
}
}'
Python SDK
await shopify.metafield_products.list(
product_id=0
)
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": "metafield_products",
"action": "list",
"params": {
"product_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
product_id | integer | Yes | The product ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Products Context Store Search
Search and filter metafield products 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_products",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_products.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_products",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Products Context Store SQL Query
Run a SQL query against metafield products records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_products",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_products.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_products",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for an order
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_orders",
"action": "list",
"params": {
"order_id": 0
}
}'
Python SDK
await shopify.metafield_orders.list(
order_id=0
)
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": "metafield_orders",
"action": "list",
"params": {
"order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Orders Context Store Search
Search and filter metafield orders 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_orders",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_orders.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_orders",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Orders Context Store SQL Query
Run a SQL query against metafield orders records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_orders.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a draft order
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_draft_orders",
"action": "list",
"params": {
"draft_order_id": 0
}
}'
Python SDK
await shopify.metafield_draft_orders.list(
draft_order_id=0
)
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": "metafield_draft_orders",
"action": "list",
"params": {
"draft_order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
draft_order_id | integer | Yes | The draft order ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Draft Orders Context Store Search
Search and filter metafield draft orders 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_draft_orders",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_draft_orders.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_draft_orders",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Draft Orders Context Store SQL Query
Run a SQL query against metafield draft orders records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_draft_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_draft_orders.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_draft_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a location
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_locations",
"action": "list",
"params": {
"location_id": 0
}
}'
Python SDK
await shopify.metafield_locations.list(
location_id=0
)
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": "metafield_locations",
"action": "list",
"params": {
"location_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
location_id | integer | Yes | The location ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Locations Context Store Search
Search and filter metafield locations 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_locations",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_locations.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_locations",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Locations Context Store SQL Query
Run a SQL query against metafield locations records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_locations",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_locations.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_locations",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a product variant
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_product_variants",
"action": "list",
"params": {
"variant_id": 0
}
}'
Python SDK
await shopify.metafield_product_variants.list(
variant_id=0
)
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": "metafield_product_variants",
"action": "list",
"params": {
"variant_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
variant_id | integer | Yes | The variant ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Product Variants Context Store Search
Search and filter metafield product variants 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_product_variants",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_product_variants.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_product_variants",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Product Variants Context Store SQL Query
Run a SQL query against metafield product variants records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_product_variants",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_product_variants.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_product_variants",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a smart collection
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_smart_collections",
"action": "list",
"params": {
"collection_id": 0
}
}'
Python SDK
await shopify.metafield_smart_collections.list(
collection_id=0
)
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": "metafield_smart_collections",
"action": "list",
"params": {
"collection_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
collection_id | integer | Yes | The collection ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Smart Collections Context Store Search
Search and filter metafield smart collections 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_smart_collections",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_smart_collections.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_smart_collections",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Smart Collections Context Store SQL Query
Run a SQL query against metafield smart collections records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_smart_collections",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_smart_collections.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_smart_collections",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Returns a list of metafields for a product image
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_product_images",
"action": "list",
"params": {
"metafield[owner_id]": 0,
"metafield[owner_resource]": "<str>"
}
}'
Python SDK
await shopify.metafield_product_images.list(
metafield_owner_id=0,
metafield_owner_resource="<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": "metafield_product_images",
"action": "list",
"params": {
"metafield[owner_id]": 0,
"metafield[owner_resource]": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
metafield[owner_id] | integer | Yes | The product image ID whose metafields to list |
metafield[owner_resource] | "product_image" | Yes | Owner resource type; always product_image |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
namespace | string | No | Filter by namespace |
key | string | No | Filter by key |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Product Images Context Store Search
Search and filter metafield product images 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_product_images",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_product_images.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_product_images",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Namespace group for the metafield |
key | string | Key of the metafield within its namespace |
value | string | Serialized value stored in the metafield |
type | string | Shopify metafield type (e.g. single_line_text_field, json) |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the resource that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Namespace group for the metafield |
data[].key | string | Key of the metafield within its namespace |
data[].value | string | Serialized value stored in the metafield |
data[].type | string | Shopify metafield type (e.g. single_line_text_field, json) |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the resource that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. product, customer) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Product Images Context Store SQL Query
Run a SQL query against metafield product images records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_product_images",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_product_images.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_product_images",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Customer Address
Customer Address List
Returns a list of addresses for a customer
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customer_address",
"action": "list",
"params": {
"customer_id": 0
}
}'
Python SDK
await shopify.customer_address.list(
customer_id=0
)
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": "customer_address",
"action": "list",
"params": {
"customer_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
customer_id | integer | Yes | The customer ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
customer_id | integer | null | |
first_name | string | null | |
last_name | string | null | |
company | string | null | |
address1 | string | null | |
address2 | string | null | |
city | string | null | |
province | string | null | |
country | string | null | |
zip | string | null | |
phone | string | null | |
name | string | null | |
province_code | string | null | |
country_code | string | null | |
country_name | string | null | |
default | boolean | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Customer Address Get
Retrieves a single customer address by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "customer_address",
"action": "get",
"params": {
"customer_id": 0,
"address_id": 0
}
}'
Python SDK
await shopify.customer_address.get(
customer_id=0,
address_id=0
)
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": "customer_address",
"action": "get",
"params": {
"customer_id": 0,
"address_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
customer_id | integer | Yes | The customer ID |
address_id | integer | Yes | The address ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
customer_id | integer | null | |
first_name | string | null | |
last_name | string | null | |
company | string | null | |
address1 | string | null | |
address2 | string | null | |
city | string | null | |
province | string | null | |
country | string | null | |
zip | string | null | |
phone | string | null | |
name | string | null | |
province_code | string | null | |
country_code | string | null | |
country_name | string | null | |
default | boolean | null | |
Fulfillment Orders
Fulfillment Orders List
Returns a list of fulfillment orders for a specific order
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillment_orders",
"action": "list",
"params": {
"order_id": 0
}
}'
Python SDK
await shopify.fulfillment_orders.list(
order_id=0
)
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": "fulfillment_orders",
"action": "list",
"params": {
"order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
order_id | integer | Yes | The order ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
shop_id | integer | null | |
order_id | integer | null | |
assigned_location_id | integer | null | |
request_status | string | null | |
status | string | null | |
supported_actions | array | null | |
destination | object | null | |
line_items | array | null | |
fulfill_at | string | null | |
fulfill_by | string | null | |
international_duties | object | null | |
fulfillment_holds | array | null | |
delivery_method | object | null | |
assigned_location | object | null | |
merchant_requests | array | null | |
created_at | string | null | |
updated_at | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Fulfillment Orders Get
Retrieves a single fulfillment order by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillment_orders",
"action": "get",
"params": {
"fulfillment_order_id": 0
}
}'
Python SDK
await shopify.fulfillment_orders.get(
fulfillment_order_id=0
)
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": "fulfillment_orders",
"action": "get",
"params": {
"fulfillment_order_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
fulfillment_order_id | integer | Yes | The fulfillment order ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
shop_id | integer | null | |
order_id | integer | null | |
assigned_location_id | integer | null | |
request_status | string | null | |
status | string | null | |
supported_actions | array | null | |
destination | object | null | |
line_items | array | null | |
fulfill_at | string | null | |
fulfill_by | string | null | |
international_duties | object | null | |
fulfillment_holds | array | null | |
delivery_method | object | null | |
assigned_location | object | null | |
merchant_requests | array | null | |
created_at | string | null | |
updated_at | string | null | |
Fulfillment Orders Context Store Search
Search and filter fulfillment orders 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillment_orders",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.fulfillment_orders.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "fulfillment_orders",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the fulfillment order |
order_id | integer | Identifier of the parent order |
shop_id | integer | Identifier of the shop that owns the fulfillment order |
assigned_location_id | integer | Identifier of the location assigned to fulfill the order |
status | string | Fulfillment order status (e.g. open, in_progress, closed) |
request_status | string | Status of the fulfillment request (e.g. unsubmitted, submitted) |
created_at | string | ISO 8601 timestamp when the fulfillment order was created |
updated_at | string | ISO 8601 timestamp when the fulfillment order was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the fulfillment order |
data[].order_id | integer | Identifier of the parent order |
data[].shop_id | integer | Identifier of the shop that owns the fulfillment order |
data[].assigned_location_id | integer | Identifier of the location assigned to fulfill the order |
data[].status | string | Fulfillment order status (e.g. open, in_progress, closed) |
data[].request_status | string | Status of the fulfillment request (e.g. unsubmitted, submitted) |
data[].created_at | string | ISO 8601 timestamp when the fulfillment order was created |
data[].updated_at | string | ISO 8601 timestamp when the fulfillment order was last updated |
Fulfillment Orders Context Store SQL Query
Run a SQL query against fulfillment orders records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "fulfillment_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.fulfillment_orders.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "fulfillment_orders",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Pages
Pages List
Returns a list of static pages for the store
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "list"
}'
Python SDK
await shopify.pages.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": "pages",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show pages created after date (ISO 8601 format) |
created_at_max | string | No | Show pages created before date (ISO 8601 format) |
updated_at_min | string | No | Show pages last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show pages last updated before date (ISO 8601 format) |
published_status | "published" | "unpublished" | "any" | No | Filter by published status (published, unpublished, any) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
handle | string | null | |
body_html | string | null | |
author | string | null | |
template_suffix | string | null | |
published_at | string | null | |
created_at | string | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Pages Get
Retrieves a single page by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "get",
"params": {
"page_id": 0
}
}'
Python SDK
await shopify.pages.get(
page_id=0
)
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": "pages",
"action": "get",
"params": {
"page_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
page_id | integer | Yes | The page ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
handle | string | null | |
body_html | string | null | |
author | string | null | |
template_suffix | string | null | |
published_at | string | null | |
created_at | string | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
Pages Create
Creates a new page on the online store via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "create",
"params": {
"page": {
"title": "<str>"
}
}
}'
Python SDK
await shopify.pages.create(
page={
"title": "<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": "pages",
"action": "create",
"params": {
"page": {
"title": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
page | object | Yes | |
page.title | string | Yes | Page title |
page.body | string | No | Page body content (HTML) |
page.handle | string | No | URL handle for the page |
page.isPublished | boolean | No | Whether the page is published |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
page | object | |
page.id | string | |
page.title | string | null | |
page.handle | string | null | |
page.body | string | null | |
page.createdAt | string | null | |
page.updatedAt | string | null | |
Pages Update
Updates an existing page on the online store via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "update",
"params": {
"id": "<str>",
"page": {}
}
}'
Python SDK
await shopify.pages.update(
id="<str>",
page={}
)
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": "pages",
"action": "update",
"params": {
"id": "<str>",
"page": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the page to update |
page | object | Yes | |
page.title | string | No | |
page.body | string | No | |
page.handle | string | No | |
page.isPublished | boolean | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
page | object | |
page.id | string | |
page.title | string | null | |
page.handle | string | null | |
page.body | string | null | |
page.createdAt | string | null | |
page.updatedAt | string | null | |
Pages Delete
Deletes a page from the online store via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Python SDK
await shopify.pages.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": "pages",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the page to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedPageId | string | null | |
Pages Context Store Search
Search and filter pages 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.pages.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "pages",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the page |
title | string | Title of the page |
handle | string | URL-friendly handle for the page |
author | string | Name of the page author |
body_html | string | HTML content of the page |
published_at | string | ISO 8601 timestamp when the page was published |
created_at | string | ISO 8601 timestamp when the page was created |
updated_at | string | ISO 8601 timestamp when the page was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the page |
data[].title | string | Title of the page |
data[].handle | string | URL-friendly handle for the page |
data[].author | string | Name of the page author |
data[].body_html | string | HTML content of the page |
data[].published_at | string | ISO 8601 timestamp when the page was published |
data[].created_at | string | ISO 8601 timestamp when the page was created |
data[].updated_at | string | ISO 8601 timestamp when the page was last updated |
Pages Context Store SQL Query
Run a SQL query against pages records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "pages",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.pages.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "pages",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Blogs
Blogs List
Returns a list of blogs for the store
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "list"
}'
Python SDK
await shopify.blogs.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": "blogs",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
handle | string | null | |
commentable | string | null | |
feedburner | string | null | |
feedburner_location | string | null | |
tags | string | null | |
template_suffix | string | null | |
created_at | string | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Blogs Get
Retrieves a single blog by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "get",
"params": {
"blog_id": 0
}
}'
Python SDK
await shopify.blogs.get(
blog_id=0
)
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": "blogs",
"action": "get",
"params": {
"blog_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
blog_id | integer | Yes | The blog ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
handle | string | null | |
commentable | string | null | |
feedburner | string | null | |
feedburner_location | string | null | |
tags | string | null | |
template_suffix | string | null | |
created_at | string | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
Blogs Create
Creates a new blog on the online store via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "create",
"params": {
"blog": {
"title": "<str>"
}
}
}'
Python SDK
await shopify.blogs.create(
blog={
"title": "<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": "blogs",
"action": "create",
"params": {
"blog": {
"title": "<str>"
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
blog | object | Yes | |
blog.title | string | Yes | Blog title |
blog.handle | string | No | URL handle for the blog |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
blog | object | |
blog.id | string | |
blog.title | string | null | |
blog.handle | string | null | |
blog.createdAt | string | null | |
Blogs Update
Updates an existing blog via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "update",
"params": {
"id": "<str>",
"blog": {}
}
}'
Python SDK
await shopify.blogs.update(
id="<str>",
blog={}
)
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": "blogs",
"action": "update",
"params": {
"id": "<str>",
"blog": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the blog to update |
blog | object | Yes | |
blog.title | string | No | |
blog.handle | string | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
blog | object | |
blog.id | string | |
blog.title | string | null | |
blog.handle | string | null | |
blog.createdAt | string | null | |
Blogs Delete
Deletes a blog from the online store via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Python SDK
await shopify.blogs.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": "blogs",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the blog to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedBlogId | string | null | |
Blogs Context Store Search
Search and filter blogs 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.blogs.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "blogs",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the blog |
title | string | Title of the blog |
handle | string | URL-friendly handle for the blog |
commentable | string | Whether readers can post comments (no, moderate, yes) |
tags | string | Comma-separated tags from the blog's articles |
created_at | string | ISO 8601 timestamp when the blog was created |
updated_at | string | ISO 8601 timestamp when the blog was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the blog |
data[].title | string | Title of the blog |
data[].handle | string | URL-friendly handle for the blog |
data[].commentable | string | Whether readers can post comments (no, moderate, yes) |
data[].tags | string | Comma-separated tags from the blog's articles |
data[].created_at | string | ISO 8601 timestamp when the blog was created |
data[].updated_at | string | ISO 8601 timestamp when the blog was last updated |
Blogs Context Store SQL Query
Run a SQL query against blogs records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "blogs",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.blogs.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "blogs",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Articles
Articles List
Returns a list of articles from a specific blog
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "list",
"params": {
"blog_id": 0
}
}'
Python SDK
await shopify.articles.list(
blog_id=0
)
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": "list",
"params": {
"blog_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
blog_id | integer | Yes | The blog ID |
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
created_at_min | string | No | Show articles created after date (ISO 8601 format) |
created_at_max | string | No | Show articles created before date (ISO 8601 format) |
updated_at_min | string | No | Show articles last updated after date (ISO 8601 format) |
updated_at_max | string | No | Show articles last updated before date (ISO 8601 format) |
published_status | "published" | "unpublished" | "any" | No | Filter by published status (published, unpublished, any) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
handle | string | null | |
author | string | null | |
blog_id | integer | null | |
body_html | string | null | |
summary_html | string | null | |
tags | string | null | |
template_suffix | string | null | |
published_at | string | null | |
user_id | integer | null | |
image | object | any | |
created_at | string | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Articles Get
Retrieves a single article by ID from a blog
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "get",
"params": {
"blog_id": 0,
"article_id": 0
}
}'
Python SDK
await shopify.articles.get(
blog_id=0,
article_id=0
)
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": "get",
"params": {
"blog_id": 0,
"article_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
blog_id | integer | Yes | The blog ID |
article_id | integer | Yes | The article ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
title | string | null | |
handle | string | null | |
author | string | null | |
blog_id | integer | null | |
body_html | string | null | |
summary_html | string | null | |
tags | string | null | |
template_suffix | string | null | |
published_at | string | null | |
user_id | integer | null | |
image | object | any | |
created_at | string | null | |
updated_at | string | null | |
admin_graphql_api_id | string | null | |
Articles Create
Creates a new blog article via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "create",
"params": {
"article": {
"title": "<str>",
"blogId": "<str>",
"author": {
"name": "<str>"
}
}
}
}'
Python SDK
await shopify.articles.create(
article={
"title": "<str>",
"blogId": "<str>",
"author": {
"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": "articles",
"action": "create",
"params": {
"article": {
"title": "<str>",
"blogId": "<str>",
"author": {
"name": "<str>"
}
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
article | object | Yes | |
article.title | string | Yes | Article title |
article.blogId | string | Yes | GraphQL GID of the blog this article belongs to |
article.body | string | No | Article body content (HTML) |
article.handle | string | No | URL handle for the article |
article.isPublished | boolean | No | Whether the article is published |
article.tags | array<string> | No | |
article.author | object | Yes | Author of the article. Required by Shopify's articleCreate mutation (ArticleCreateInput.author is non-null). |
article.author.name | string | Yes | Author display name. Required (provide the author's name). |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
article | object | |
article.id | string | |
article.title | string | null | |
article.handle | string | null | |
article.body | string | null | |
article.blog | object | null | |
article.createdAt | string | null | |
article.updatedAt | string | null | |
Articles Update
Updates an existing blog article via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "update",
"params": {
"id": "<str>",
"article": {}
}
}'
Python SDK
await shopify.articles.update(
id="<str>",
article={}
)
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": {
"id": "<str>",
"article": {}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the article to update |
article | object | Yes | |
article.title | string | No | |
article.body | string | No | |
article.handle | string | No | |
article.isPublished | boolean | No | |
article.tags | array<string> | No | |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
article | object | |
article.id | string | |
article.title | string | null | |
article.handle | string | null | |
article.body | string | null | |
article.blog | object | null | |
article.createdAt | string | null | |
article.updatedAt | string | null | |
Articles Delete
Deletes a blog article via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Python SDK
await shopify.articles.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": "articles",
"action": "delete",
"params": {
"id": "<str>"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the article to delete |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
deletedArticleId | string | null | |
Articles Context Store Search
Search and filter articles 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.articles.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the article |
title | string | Title of the article |
handle | string | URL-friendly handle for the article |
author | string | Name of the author of the article |
blog_id | integer | Identifier of the blog the article belongs to |
body_html | string | HTML content of the article body |
summary_html | string | Summary of the article in HTML |
tags | string | Comma-separated list of tags for the article |
published_at | string | ISO 8601 timestamp when the article was published |
created_at | string | ISO 8601 timestamp when the article was created |
updated_at | string | ISO 8601 timestamp when the article was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the article |
data[].title | string | Title of the article |
data[].handle | string | URL-friendly handle for the article |
data[].author | string | Name of the author of the article |
data[].blog_id | integer | Identifier of the blog the article belongs to |
data[].body_html | string | HTML content of the article body |
data[].summary_html | string | Summary of the article in HTML |
data[].tags | string | Comma-separated list of tags for the article |
data[].published_at | string | ISO 8601 timestamp when the article was published |
data[].created_at | string | ISO 8601 timestamp when the article was created |
data[].updated_at | string | ISO 8601 timestamp when the article was last updated |
Articles Context Store SQL Query
Run a SQL query against articles records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "articles",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.articles.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Balance Transactions
Balance Transactions List
Returns a list of Shopify Payments balance transactions
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "balance_transactions",
"action": "list"
}'
Python SDK
await shopify.balance_transactions.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": "balance_transactions",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
payout_id | integer | No | Filter to transactions in a specific payout |
payout_status | "scheduled" | "in_transit" | "paid" | "failed" | "canceled" | No | Filter by payout status |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
type | string | null | |
test | boolean | null | |
payout_id | integer | null | |
payout_status | string | null | |
currency | string | null | |
amount | string | null | |
fee | string | null | |
net | string | null | |
source_id | integer | null | |
source_type | string | null | |
source_order_id | integer | null | |
source_order_transaction_id | integer | null | |
processed_at | string | null | |
adjustment_order_transactions | array | null | |
adjustment_reason | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Balance Transactions Context Store Search
Search and filter balance transactions 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "balance_transactions",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.balance_transactions.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "balance_transactions",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier of the balance transaction |
type | string | Type of the transaction (charge, refund, dispute, reserve, adjustment, credit, debit, payout, etc.) |
amount | string | Gross amount of the transaction |
fee | string | Total fees deducted from the transaction |
net | string | Net amount of the transaction |
currency | string | ISO 4217 currency code of the transaction |
payout_id | integer | Identifier of the payout the transaction was paid out in |
payout_status | string | Status of the associated payout |
source_type | string | Type of the resource that led to this transaction |
source_order_id | integer | Identifier of the source order, if applicable |
processed_at | string | ISO 8601 timestamp when the transaction was processed |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier of the balance transaction |
data[].type | string | Type of the transaction (charge, refund, dispute, reserve, adjustment, credit, debit, payout, etc.) |
data[].amount | string | Gross amount of the transaction |
data[].fee | string | Total fees deducted from the transaction |
data[].net | string | Net amount of the transaction |
data[].currency | string | ISO 4217 currency code of the transaction |
data[].payout_id | integer | Identifier of the payout the transaction was paid out in |
data[].payout_status | string | Status of the associated payout |
data[].source_type | string | Type of the resource that led to this transaction |
data[].source_order_id | integer | Identifier of the source order, if applicable |
data[].processed_at | string | ISO 8601 timestamp when the transaction was processed |
Balance Transactions Context Store SQL Query
Run a SQL query against balance transactions records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "balance_transactions",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.balance_transactions.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "balance_transactions",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Disputes
Disputes List
Returns a list of Shopify Payments disputes (chargebacks and inquiries)
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "disputes",
"action": "list"
}'
Python SDK
await shopify.disputes.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": "disputes",
"action": "list"
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
limit | integer | No | Maximum number of results to return (max 250) |
since_id | integer | No | Restrict results to after the specified ID |
status | "needs_response" | "under_review" | "charge_refunded" | "accepted" | "won" | "lost" | No | Filter by dispute status |
initiated_at | string | No | Filter by initiated date (ISO 8601 format) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
type | string | null | |
amount | string | null | |
currency | string | null | |
reason | string | null | |
network_reason_code | string | null | |
status | string | null | |
evidence_due_by | string | null | |
evidence_sent_on | string | null | |
finalized_on | string | null | |
initiated_at | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Disputes Get
Retrieves a single Shopify Payments dispute by ID
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "disputes",
"action": "get",
"params": {
"dispute_id": 0
}
}'
Python SDK
await shopify.disputes.get(
dispute_id=0
)
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": "disputes",
"action": "get",
"params": {
"dispute_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
dispute_id | integer | Yes | The dispute ID |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
order_id | integer | null | |
type | string | null | |
amount | string | null | |
currency | string | null | |
reason | string | null | |
network_reason_code | string | null | |
status | string | null | |
evidence_due_by | string | null | |
evidence_sent_on | string | null | |
finalized_on | string | null | |
initiated_at | string | null | |
Disputes Context Store Search
Search and filter disputes 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "disputes",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.disputes.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "disputes",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the dispute |
order_id | integer | Identifier of the order the dispute belongs to |
type | string | Whether the dispute is an inquiry or chargeback |
amount | string | Disputed amount |
currency | string | ISO 4217 currency code of the dispute amount |
reason | string | Reason for the dispute provided by the cardholder's bank |
network_reason_code | string | Network reason code from the cardholder's bank |
status | string | Current state of the dispute (needs_response, under_review, charge_refunded, accepted, won, lost) |
evidence_due_by | string | ISO 8601 deadline for evidence submission |
initiated_at | string | ISO 8601 timestamp when the dispute was initiated |
finalized_on | string | ISO 8601 timestamp when the dispute was resolved |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the dispute |
data[].order_id | integer | Identifier of the order the dispute belongs to |
data[].type | string | Whether the dispute is an inquiry or chargeback |
data[].amount | string | Disputed amount |
data[].currency | string | ISO 4217 currency code of the dispute amount |
data[].reason | string | Reason for the dispute provided by the cardholder's bank |
data[].network_reason_code | string | Network reason code from the cardholder's bank |
data[].status | string | Current state of the dispute (needs_response, under_review, charge_refunded, accepted, won, lost) |
data[].evidence_due_by | string | ISO 8601 deadline for evidence submission |
data[].initiated_at | string | ISO 8601 timestamp when the dispute was initiated |
data[].finalized_on | string | ISO 8601 timestamp when the dispute was resolved |
Disputes Context Store SQL Query
Run a SQL query against disputes records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "disputes",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.disputes.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "disputes",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Metafield Pages
Metafield Pages List
Returns a list of metafields for a specific page
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_pages",
"action": "list",
"params": {
"page_id": 0
}
}'
Python SDK
await shopify.metafield_pages.list(
page_id=0
)
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": "metafield_pages",
"action": "list",
"params": {
"page_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
page_id | integer | Yes | The page ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Pages Context Store Search
Search and filter metafield pages 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_pages",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_pages.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_pages",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Container namespace for the metafield |
key | string | Identifier key for the metafield |
value | string | The metafield value |
type | string | The metafield's information type |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the page that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. page) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Container namespace for the metafield |
data[].key | string | Identifier key for the metafield |
data[].value | string | The metafield value |
data[].type | string | The metafield's information type |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the page that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. page) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Pages Context Store SQL Query
Run a SQL query against metafield pages records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_pages",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_pages.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_pages",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Metafield Blogs
Metafield Blogs List
Returns a list of metafields for a specific blog
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_blogs",
"action": "list",
"params": {
"blog_id": 0
}
}'
Python SDK
await shopify.metafield_blogs.list(
blog_id=0
)
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": "metafield_blogs",
"action": "list",
"params": {
"blog_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
blog_id | integer | Yes | The blog ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Blogs Context Store Search
Search and filter metafield blogs 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_blogs",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_blogs.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_blogs",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Container namespace for the metafield |
key | string | Identifier key for the metafield |
value | string | The metafield value |
type | string | The metafield's information type |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the blog that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. blog) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Container namespace for the metafield |
data[].key | string | Identifier key for the metafield |
data[].value | string | The metafield value |
data[].type | string | The metafield's information type |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the blog that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. blog) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Blogs Context Store SQL Query
Run a SQL query against metafield blogs records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_blogs",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_blogs.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_blogs",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Metafield Articles
Metafield Articles List
Returns a list of metafields for a specific article
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_articles",
"action": "list",
"params": {
"blog_id": 0,
"article_id": 0
}
}'
Python SDK
await shopify.metafield_articles.list(
blog_id=0,
article_id=0
)
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": "metafield_articles",
"action": "list",
"params": {
"blog_id": 0,
"article_id": 0
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
blog_id | integer | Yes | The blog ID |
article_id | integer | Yes | The article ID |
limit | integer | No | Maximum number of results to return (max 250) |
Response Schema
Records
| Field Name | Type | Description |
|---|
id | integer | |
namespace | string | null | |
key | string | null | |
value | string | integer | boolean | null | |
type | string | null | |
description | string | null | |
owner_id | integer | null | |
created_at | string | null | |
updated_at | string | null | |
owner_resource | string | null | |
admin_graphql_api_id | string | null | |
| Field Name | Type | Description |
|---|
next_page_url | string | |
Metafield Articles Context Store Search
Search and filter metafield articles 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.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_articles",
"action": "context_store_search",
"params": {
"query": {
"filter": {
"eq": {
"id": 0
}
}
}
}
}'
Python SDK
await shopify.metafield_articles.context_store_search(
query={"filter": {"eq": {"id": 0}}}
)
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": "metafield_articles",
"action": "context_store_search",
"params": {
"query": {"filter": {"eq": {"id": 0}}}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
query | object | Yes | Filter and sort conditions. Supports operators: eq, neq, gt, gte, lt, lte, in, startswith, endswith, contains, array_contains, fuzzy, keyword, not, and, or |
query.filter | object | No | Filter conditions |
query.sort | array | No | Sort conditions |
limit | integer | No | Maximum results to return (default 1000) |
cursor | string | No | Pagination cursor from previous response's meta.cursor |
fields | array | No | Field paths to include in results |
Searchable Fields
| Field Name | Type | Description |
|---|
id | integer | Unique identifier for the metafield |
namespace | string | Container namespace for the metafield |
key | string | Identifier key for the metafield |
value | string | The metafield value |
type | string | The metafield's information type |
description | string | Human-readable description of the metafield |
owner_id | integer | Identifier of the article that owns this metafield |
owner_resource | string | Resource type that owns this metafield (e.g. article) |
created_at | string | ISO 8601 timestamp when the metafield was created |
updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Response Schema
| Field Name | Type | Description |
|---|
data | array | List of matching records |
meta | object | Pagination metadata |
meta.has_more | boolean | Whether additional pages are available |
meta.cursor | string | null | Cursor for next page of results |
meta.took_ms | number | null | Query execution time in milliseconds |
data[].id | integer | Unique identifier for the metafield |
data[].namespace | string | Container namespace for the metafield |
data[].key | string | Identifier key for the metafield |
data[].value | string | The metafield value |
data[].type | string | The metafield's information type |
data[].description | string | Human-readable description of the metafield |
data[].owner_id | integer | Identifier of the article that owns this metafield |
data[].owner_resource | string | Resource type that owns this metafield (e.g. article) |
data[].created_at | string | ISO 8601 timestamp when the metafield was created |
data[].updated_at | string | ISO 8601 timestamp when the metafield was last updated |
Metafield Articles Context Store SQL Query
Run a SQL query against metafield articles records in the Airbyte Context Store. SQL projections may return any set of columns, so each result row is a dictionary matching the query's selected fields. Only available in hosted mode.
Use the hosted server documentation to find the qualified Context Store table name and SQL guidance.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafield_articles",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Python SDK
await shopify.metafield_articles.context_store_sql_query(
sql="SELECT * FROM <qualified_context_store_table> LIMIT 100"
)
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": "metafield_articles",
"action": "context_store_sql_query",
"params": {
"sql": "SELECT * FROM <qualified_context_store_table> LIMIT 100"
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
sql | string | Yes | SQL query to execute against this entity's Context Store data |
limit | integer | No | Maximum results to return |
Response Schema
| Field Name | Type | Description |
|---|
data | array | Projected rows, with dictionary keys matching the selected columns |
meta | object | Query metadata |
meta.has_more | boolean | Whether the result was limited and more rows are available |
meta.cursor | null | SQL query results do not use cursor pagination |
meta.took_ms | number | null | Query execution time in milliseconds |
Draft Order Complete
Draft Order Complete Update
Completes a draft order, converting it to a regular order via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "draft_order_complete",
"action": "update",
"params": {
"id": "<str>",
"paymentPending": true
}
}'
Python SDK
await shopify.draft_order_complete.update(
id="<str>",
payment_pending=True
)
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": "draft_order_complete",
"action": "update",
"params": {
"id": "<str>",
"paymentPending": True
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
id | string | Yes | The GraphQL GID of the draft order to complete |
paymentPending | boolean | No | Whether payment is pending (true) or mark as paid (false/omit) |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
draftOrder | object | null | |
Inventory Set
Inventory Set Create
Sets absolute inventory quantities for items at locations via GraphQL mutation.
Uses the inventorySetQuantities mutation with a required reason and reference document.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_set",
"action": "create",
"params": {
"input": {
"name": "<str>",
"reason": "<str>",
"quantities": []
}
}
}'
Python SDK
await shopify.inventory_set.create(
input={
"name": "<str>",
"reason": "<str>",
"quantities": []
}
)
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": "inventory_set",
"action": "create",
"params": {
"input": {
"name": "<str>",
"reason": "<str>",
"quantities": []
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.name | string | Yes | Quantity name (e.g. 'available', 'on_hand') |
input.reason | string | Yes | Reason for the adjustment (e.g. 'correction', 'other') |
input.referenceDocumentUri | string | No | URI for the reference document |
input.quantities | array<object> | Yes | Quantities to set |
input.quantities.inventoryItemId | string | Yes | GraphQL GID of the inventory item |
input.quantities.locationId | string | Yes | GraphQL GID of the location |
input.quantities.quantity | integer | Yes | Absolute quantity to set |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
inventoryAdjustmentGroup | object | |
inventoryAdjustmentGroup.reason | string | null | |
inventoryAdjustmentGroup.referenceDocumentUri | string | null | |
inventoryAdjustmentGroup.changes | array<object> | |
Inventory Adjust
Inventory Adjust Create
Adjusts inventory quantities relatively (add/subtract) for items at locations via GraphQL mutation.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "inventory_adjust",
"action": "create",
"params": {
"input": {
"name": "<str>",
"reason": "<str>",
"changes": []
}
}
}'
Python SDK
await shopify.inventory_adjust.create(
input={
"name": "<str>",
"reason": "<str>",
"changes": []
}
)
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": "inventory_adjust",
"action": "create",
"params": {
"input": {
"name": "<str>",
"reason": "<str>",
"changes": []
}
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
input | object | Yes | |
input.name | string | Yes | Quantity name (e.g. 'available') |
input.reason | string | Yes | Reason for the adjustment |
input.referenceDocumentUri | string | No | URI for the reference document |
input.changes | array<object> | Yes | Inventory changes to apply |
input.changes.inventoryItemId | string | Yes | GraphQL GID of the inventory item |
input.changes.locationId | string | Yes | GraphQL GID of the location |
input.changes.delta | integer | Yes | Amount to adjust (positive to add, negative to subtract) |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
inventoryAdjustmentGroup | object | |
inventoryAdjustmentGroup.reason | string | null | |
inventoryAdjustmentGroup.referenceDocumentUri | string | null | |
inventoryAdjustmentGroup.changes | array<object> | |
Sets (creates or updates) up to 25 metafields atomically via GraphQL mutation.
Works across all resource types (products, customers, orders, etc.).
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafields",
"action": "create",
"params": {
"metafields": []
}
}'
Python SDK
await shopify.metafields.create(
metafields=[]
)
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": "metafields",
"action": "create",
"params": {
"metafields": []
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
metafields | array<object> | Yes | List of metafields to set |
metafields.namespace | string | Yes | Metafield namespace (e.g. 'custom') |
metafields.key | string | Yes | Metafield key (e.g. 'color') |
metafields.type | string | Yes | Metafield type (e.g. 'single_line_text_field', 'number_integer', 'boolean') |
metafields.value | string | Yes | Metafield value |
metafields.ownerId | string | Yes | GraphQL GID of the owner resource (e.g. gid://shopify/Product/123) |
Response Schema
Records
| Field Name | Type | Description |
|---|
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |
metafields | array<object> | |
Deletes one or more metafields via GraphQL mutation.
Identifies metafields by ownerId + namespace + key.
CLI
airbyte-agent connectors execute --json '{
"workspace": "<your_workspace_name>",
"name": "shopify",
"entity": "metafields",
"action": "delete",
"params": {
"metafields": []
}
}'
Python SDK
await shopify.metafields.delete(
metafields=[]
)
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": "metafields",
"action": "delete",
"params": {
"metafields": []
}
}'
Parameters
| Parameter Name | Type | Required | Description |
|---|
metafields | array<object> | Yes | List of metafield identifiers to delete |
metafields.ownerId | string | Yes | GraphQL GID of the owner resource (e.g. gid://shopify/Product/123) |
metafields.namespace | string | Yes | Metafield namespace (e.g. 'custom') |
metafields.key | string | Yes | Metafield key (e.g. 'color') |
Response Schema
Records
| Field Name | Type | Description |
|---|
deletedMetafields | array | null | |
userErrors | array<object> | |
userErrors[].field | string | null | array | |
userErrors[].message | string | |
userErrors[].code | string | null | |