/** * This file was auto-generated by openapi-typescript and ts-morph. * Do not make direct changes to the file. */ export interface paths { readonly "/customers": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get All Customers * @description Returns a list of Customers. Optional filter parameters can be passed in. * * **Notes** * * Attribute names are not available on the customer object. */ readonly get: operations["getCustomers"]; /** * Update Customers * @description Updates Customers. Subresource updates are not supported. * * **Required Fields** * * id -- ID of the *Customer* This must be included in the request body * * **Read Only Fields** * * id * * registration_ip_address * * date_created * * date_modified * * origin_channel_id * * **Limits** * * Limit of 10 customers per call. * * Limit of 3 concurrent requests * * **Notes** * * * Attributes Values can not be updated using Update a Customer. Use the [Update customer attribute values](/docs/rest-management/customers/customer-attribute-values#upsert-customer-attribute-values) endpoint. * * channel_ids -- Updating the list of channels a customer can access may create some side effects in a multi-storefront situation. This list determines which customer account we will use to authenticate a shopper given a channel. * * origin_channel_id -- This is an immutable value set as a reference to the channel of origin when a customer is created. */ readonly put: operations["updateCustomers"]; /** * Create Customers * @description Creates Customers. Create up to 10 customers in one call. * * **Required Fields** * * last_name * * first_name * * email * * **Required Fields Customer Address** * * first_name * * city * * country_code * * last_name * * address1 * * **Required Fields Attributes** * * Attributes must be [created](/docs/rest-management/customers/customer-attributes#create-a-customer-attribute) **BEFORE** creating a customer. * * attribute_id * * attribute_value -- This is input as a string, regardless of the [Type](/docs/rest-management/customers/customer-attributes#create-a-customer-attribute). * * **Notes** * * A customer can be created with global access or channel-specific access. * * **Global access:** * * Make sure the channel has `allow_global_logins` enabled. This is on by default only for the default storefront. Find more info at [Customer Settings > Channel](/docs/rest-management/customers/customer-settings-channel). * * Omit `channel_ids` field, or provide `channel_ids: null`. * * **Channel-specific access:** * * Provide a `channel_ids` array containing the channels accessible by the customer. This array cannot be empty. */ readonly post: operations["createCustomers"]; /** * Delete Customers * @description Deletes Customers. * * **Required Query** * * id:in -- ID of the customer * * **Notes** * * A query is required to delete customers. If not provided, a 204 is returned, with no changes to the data. */ readonly delete: operations["deleteCustomers"]; }; readonly "/customers/addresses": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get All Customer Addresses * @description Returns a list of Customer Addresses. Optional filter parameters can be passed in. */ readonly get: operations["getCustomersAddresses"]; /** * Update a Customer Address * @description Updates a Customer Address. Multiple customer addresses can be updated in one call. * * **Required Fields** * * **id** -- ID of the *Customer Address* * * **Limits** * * Limit of **3** concurrent requests. * * **Notes** * * A unique customer address is a combination of the following core address fields: * * **first_name** * * **last_name** * * **company** * * **phone** * * **address_type** * * **address1** * * **address2** * * **city** * * **country_code** * * **state_or_province** * * **postal_code** * * An attempt to update an address such that it becomes identical to another address that already exists will result in no change to the target address or custom form field values. The response will have an HTTP 200 return code, and the address will be absent from the response body. */ readonly put: operations["updateCustomersAddresses"]; /** * Create a Customer Address * @description Creates a Customer Address. Multiple customer addresses can be created in one call. * * **Required Fields** * * **customer_id** * * **first_name** * * **last_name** * * **city** * * **country_code** * * **address1** * * **state_or_province** * * **postal_code** * * **Notes** * * A unique customer address is a combination of the following core address fields: * * **customer_id** * * **first_name** * * **last_name** * * **company** * * **phone** * * **address_type** * * **address1** * * **address2** * * **city** * * **country_code** * * **state_or_province** * * **postal_code** * * An attempt to create an address that already exists will result in no change to the address or custom form field values, an HTTP 200 return code, and the address will be absent from the response body. * * The default rate limit for this endpoint is 10 concurrent requests. */ readonly post: operations["createCustomersAddresses"]; /** * Delete a Customer Address * @description Deletes a Customer Address. * * **Required Query** * * id:in -- ID of the *Customer Address* */ readonly delete: operations["deleteCustomersAddresses"]; }; readonly "/customers/validate-credentials": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Validate a customer credentials * @description Validate a customer credentials - This endpoint has special rate limiting protections to protect against abuse. */ readonly post: operations["validateCustomerCredentials"]; }; readonly "/customers/settings": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get Customer Settings * @description Returns the global-level customer settings. * * **Notes:** * * Global customer settings don't apply on a channel when there are channel specific settings configured through [Channel Settings](/docs/rest-management/customers/channel-settings). * */ readonly get: operations["getCustomersSettings"]; /** * Update Customer Settings * @description Updates the customer settings on the global level. */ readonly put: operations["updateCustomersSettings"]; }; readonly "/customers/settings/channels/{channel_id}": { readonly parameters: { readonly query?: never; readonly path: { readonly channel_id: string; }; readonly cookie?: never; }; /** * Get Customer Settings per Channel * @description Returns the customer settings per channel. * * **Notes:** * * * `null` value configuration indicates that there is no override provided for a given channel; thus, values are inherited from [Global Settings](/docs/rest-management/customers/global-settings). * */ readonly get: operations["getCustomersSettingsChannel"]; /** * Update Customer Settings per Channel * @description Update the customer settings per channel * * **Required Fields** * * * `channel_id`: Provide a `channel_id` array containing one or more channel IDs. Customers will have access to these channels and no others. This array cannot be empty. * * **Notes** * * * Setting `null` will delete override per given channel, and values will be inherited from the global level. Make sure the channel has `allow_global_logins` enabled. */ readonly put: operations["updateCustomersSettingsChannel"]; }; readonly "/customers/attributes": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get All Customer Attributes * @description Returns a list of Customer Attributes. You can pass in optional filter parameters. */ readonly get: operations["getCustomersAttributes"]; /** * Update a Customer Attribute * @description Updates a Customer Attribute. Multiple customer attributes can be updated in one call. * * **Required Fields** * * id -- ID of the *Customer Attribute* * * Once the data type is set, it can not be changed. The attribute will need to be deleted then created again with the new data type. This will also delete it from the customer. * * **Limits** * * Limit of 3 concurrent requests. */ readonly put: operations["updateCustomersAttributes"]; /** * Create a Customer Attribute * @description Creates a Customer Attribute. Multiple customer attributes can be created in one call. * * **Required Fields** * * name * * type * * **Limits** * * Limit of 3 concurrent requests. * * **Notes** * * Once the data type is set, it cannot be changed. The attribute will need to be deleted then created again with the new data type. This will also delete it from the customer. * * Customer attributes are created separately from the customer. After the name and type are created, then the attributes can be added to the customer. * * A store cannot have more than 50 customer attributes. */ readonly post: operations["createCustomersAttributes"]; /** * Delete Customer Attributes * @description Deletes Customer Attributes from the store. * * **Required Query** * * id:in -- ID of the *Customer Attribute* */ readonly delete: operations["deleteCustomersAttributes"]; }; readonly "/customers/attribute-values": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get All Customer Attribute Values * @description Returns a list of Customer Attribute Values. Optional filter parameters can be passed in. */ readonly get: operations["getCustomersAttributeValues"]; /** * Upsert Customer Attribute Values * @description Upserts Customer Attribute Values. Updates the attribute values on the Customer. Multiple customer attribute values can be updated in one call. * * Upsert checks for an existing record. If there is none, it creates the record, if there is a matching record, it updates that record. * * **Limits** * * Limit of 10 customers per call. * * Limit of 3 concurrent requests. */ readonly put: operations["upsertCustomersAttributeValues"]; /** * Delete Customer Attribute Values * @description Deletes Customer Attribute Values. Deletes the attribute value from the customer. * * **Required Query** * * id:in - ID of the *Customer Attribute Value* */ readonly delete: operations["deleteCustomersAttributeValues"]; }; readonly "/customers/form-field-values": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get Customer Form Field Values * @description Returns a list of form field values for the Customer or Customer Address object. * * To learn about adding and managing form fields, see [Adding and Editing Fields in the Account Signup Form](https://support.bigcommerce.com/s/article/Editing-Form-Fields). */ readonly get: operations["getCustomersFormFieldValues"]; /** * Upsert Customer Form Field Values (Deprecated) * @description This endpoint is deprecated. Use [Update a Customer Address](/docs/rest-management/customers/addresses#update-a-customer-address) and [Update Customers](/docs/rest-management/customers#update-customers) endpoints instead. * * To learn more about editing form fields, see [Adding and Editing Fields in the Account Signup Form](https://support.bigcommerce.com/s/article/Editing-Form-Fields). * * **Limits** * * Limit of 10 concurrent requests. */ readonly put: operations["updateCustomerFormFieldValues"]; }; readonly "/customers/{customerId}/consent": { readonly parameters: { readonly query?: never; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; /** * Get Customer Consent * @description Gets the status of a customerʼs consent to allow data collection by cookies and scripts while shopping on a storefront. */ readonly get: operations["getCustomerConsent"]; /** * Update Customer Consent * @description Updates the status of a customerʼs consent to allow data collection by cookies and scripts while shopping on a storefront. */ readonly put: operations["updateCustomerConsent"]; }; readonly "/customers/{customerId}/stored-instruments": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get Stored Instruments * @description Lists all available stored instruments for a customer. This list will include all types of stored instruments namely card, account and bank_account instruments */ readonly get: operations["getCustomerStoredInstruments"]; }; readonly "/customers/{customerId}/metafields": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get Customer Metafields * @description Gets customer metafields by passing the `customerId` in the query parameters. */ readonly get: operations["getCustomersMetafields"]; /** * Create Customer Metafields * @description Creates Customer metafields by passing the `customerId` in the query parameters. */ readonly post: operations["createCustomerMetafields"]; }; readonly "/customers/{customerId}/metafields/{metafieldId}": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get a Customer Metafield * @description Returns a single *Customer Metafield*. * */ readonly get: operations["getMetafieldsCustomerId"]; /** * Update a Metafield * @description Updates customer metafields. To update the customer metafields, use 'customerId' and 'metafield' in the query parameters. */ readonly put: operations["updateCustomerMetafield"]; /** * Delete a Customer Metafield * @description Deletes a customer metafield. To delete a customer metafield, use 'customerId' and 'metafieldId' in the query parameters. * */ readonly delete: operations["deleteCustomerMetafieldsId"]; }; readonly "/customers/metafields": { readonly parameters: { readonly query?: never; readonly path?: never; readonly cookie?: never; }; /** * Get All Customer Metafields * @description Get all customer metafields. */ readonly get: operations["getAllCustomersMetafields"]; /** * Update Multiple Metafields * @description Create multiple metafields. */ readonly put: operations["updateCustomersMetafields"]; /** * Create Multiple Metafields * @description Create multiple metafields. */ readonly post: operations["createCustomersMetafields"]; /** * Delete Multiple Metafields * @description Delete all customer metafields. */ readonly delete: operations["deleteCustomersMetafields"]; }; } export type webhooks = Record; export interface components { schemas: { /** * Pagination * @description Data about the response, including pagination and collection totals. */ readonly Pagination: { /** * Format: int32 * @description Total number of items in the result set. */ readonly total?: number; /** * Format: int32 * @description Total number of items in the collection response. */ readonly count?: number; /** * Format: int32 * @description The amount of items returned in the collection per page, controlled by the limit parameter. */ readonly per_page?: number; /** * Format: int32 * @description The page you are currently on within the collection. */ readonly current_page?: number; /** * Format: int32 * @description The total number of pages in the collection. */ readonly total_pages?: number; readonly links?: components["schemas"]["Links"]; }; /** * Cursor Pagination * @description Data about cursor pagination. */ readonly CursorPagination: { /** * Format: int32 * @description Total number of items in the collection response. */ readonly count?: number; /** * Format: int32 * @description The amount of items returned in the collection per page, controlled by the limit parameter. */ readonly per_page?: number; /** @description A string representing the starting point of the current page in the collection */ readonly start_cursor?: string; /** @description A string representing the ending point of the current page in the collection. */ readonly end_cursor?: string; readonly links?: components["schemas"]["Links"]; }; /** * _metaCollection * @description Data about the response, including pagination and collection totals. */ readonly _metaCollection: { readonly pagination?: components["schemas"]["Pagination"]; }; /** * _metaCollection * @description Data about the response, including pagination and collection totals. Both `pagination` and `cursor_pagination` would be returned in the first page. Only `pagination` would be returned when page is greater than 1. Only `cursor_pagination` would be returned when `before` or `after` is provided in the request. */ readonly _metaCollectionWithCursorPagination: { readonly pagination?: components["schemas"]["Pagination"]; readonly cursor_pagination?: components["schemas"]["CursorPagination"]; }; /** * Response meta * @description Response metadata. */ readonly MetaOpen: { readonly [key: string]: unknown; }; /** Error Response */ readonly ErrorResponse: { /** * Format: int32 * @description The HTTP status code. */ readonly status?: number; /** @description The error title describing the particular error. */ readonly title?: string; /** @description A link to a list of BigCommerce API status codes. */ readonly type?: string; readonly instance?: string; readonly errors?: { readonly [key: string]: string; }; }; /** customer_Full */ readonly customer_Full: { /** @description The email of the customer. Must be unique. */ readonly email?: string; /** @description The first name of the customer. */ readonly first_name?: string; /** @description The last name of the customer. */ readonly last_name?: string; /** @description The company of the customer. */ readonly company?: string; /** @description The phone number of the customer. */ readonly phone?: string; /** @description The IP address from which this customer was registered. */ readonly registration_ip_address?: string; /** @description The customer notes. */ readonly notes?: string; /** @description The tax exempt category code for the customer. */ readonly tax_exempt_category?: string; /** * Format: int32 * @description ID of the group which this customer belongs to. */ readonly customer_group_id?: number; /** * Format: int32 * @description The unique numeric ID of the customer. */ readonly id?: number; /** * Format: date-time * @description The date on which the customer was modified. */ readonly date_modified?: string; /** * Format: date-time * @description The date of which the customer was created. */ readonly date_created?: string; /** * Format: int32 * @description Total number of customer addresses. */ readonly address_count?: number; /** * Format: int32 * @description Total number of customer attributes. */ readonly attribute_count?: number; /** * Customer Authentication Base * @example { * "force_password_reset": true * } */ readonly authentication?: { /** @description If `true`, this customer will be forced to change password on next login. */ readonly force_password_reset?: boolean; }; /** @description Array of customer addresses. Limited to 10. */ readonly addresses?: readonly components["schemas"]["address_Full"][]; /** @description Array of customer attributes. Limited to 10. */ readonly attributes?: readonly components["schemas"]["attribute_Full"][]; /** @description Array of form fields. Controlled by `formfields` parameter. */ readonly form_fields?: readonly components["schemas"]["formFieldValue_Customer"][]; readonly store_credit_amounts?: components["schemas"]["CustomerStoredCreditAmounts"]; /** @description Determines if the customer is signed up to receive either product review or abandoned cart emails or receive both emails. */ readonly accepts_product_review_abandoned_cart_emails?: boolean; /** @description Channel ID of the customer that has created the form. */ readonly origin_channel_id?: number; readonly channel_ids?: components["schemas"]["customerChannelIds"]; }; /** customer_Post */ readonly customer_Post: { /** @description The email of the customer. Must be unique. */ readonly email: string; /** @description The first name of the customer. */ readonly first_name: string; /** @description The last name of the customer. */ readonly last_name: string; /** @description The company of the customer. */ readonly company?: string; /** @description The phone number of the customer. */ readonly phone?: string; /** @description The customer notes. */ readonly notes?: string; /** @description The tax exempt category code for the customer. */ readonly tax_exempt_category?: string; /** * Format: int32 * @description ID of the group which this customer belongs to. */ readonly customer_group_id?: number; /** @description Array of customer addresses. Limited to 10. */ readonly addresses?: readonly components["schemas"]["customerAddresses_CustomerPost"][]; /** @description Array of customer attributes. Limited to 10. */ readonly attributes?: readonly components["schemas"]["customerAttributes_Base"][]; readonly authentication?: components["schemas"]["customerAuthentication_PostPut"]; /** @description It determines if the customer is signed up to receive either product review or abandoned cart emails or receive both emails. */ readonly accepts_product_review_abandoned_cart_emails?: boolean; readonly store_credit_amounts?: components["schemas"]["CustomerStoredCreditAmounts"]; /** @description Channel ID of the customer that has created the form. */ readonly origin_channel_id?: number; /** * @description Array of channels the customer can access. * @example [ * 1, * 2 * ] */ readonly channel_ids?: readonly number[]; /** @description Array of form fields. Controlled by formfields parameter. * */ readonly form_fields?: readonly components["schemas"]["formFieldValue"][]; /** @description Indicates whether to send a customer registered welcome email. */ readonly trigger_account_created_notification?: boolean; }; /** customer_Put */ readonly customer_Put: { /** @description The email of the customer. Must be unique. */ readonly email?: string; /** @description The first name of the customer. */ readonly first_name?: string; /** @description The last name of the customer. */ readonly last_name?: string; /** @description The company of the customer. */ readonly company?: string; /** @description The phone number of the customer. */ readonly phone?: string; /** @description The IP address from which this customer was registered. */ readonly registration_ip_address?: string; /** @description The customer notes. */ readonly notes?: string; /** @description The tax exempt category code for the customer. */ readonly tax_exempt_category?: string; /** * Format: int32 * @description ID of the group which this customer belongs to. */ readonly customer_group_id?: number; /** * Format: int32 * @description The unique numeric ID of the customer. */ readonly id: number; readonly authentication?: components["schemas"]["customerAuthentication_PostPut"]; /** @description It determines if the customer is signed up to receive either product review or abandoned cart emails or receive both emails. */ readonly accepts_product_review_abandoned_cart_emails?: boolean; readonly store_credit_amounts?: components["schemas"]["CustomerStoredCreditAmounts"]; /** @description Channel ID of the customer that has created the form. */ readonly origin_channel_id?: number; /** @description Arrays of channels the customer can access. */ readonly channel_ids?: readonly number[]; /** @description Array of form fields. Controlled by formfields parameter. * */ readonly form_fields?: readonly components["schemas"]["formFieldValue"][]; }; /** attributeValue_Base */ readonly attributeValue_Base: { /** * Format: int32 * @description Attribute value ID. */ readonly id?: number; /** * Format: int32 * @description Attribute ID. */ readonly attribute_id: number; /** * @description Attribute value. This will always be a string, regardless of the attributeʼs type. * * Corresponds to `attribute_value` used in customer attribute values `GET` requests. * @example string */ readonly value: string; /** * Format: int32 * @description Customer ID. * @example 8504 */ readonly customer_id: number; }; readonly attribute_Full: { /** * Format: int32 * @description Attribute ID. * @example 2 */ readonly attribute_id?: number; /** * @description Attribute value. * @example Yes */ readonly attribute_value?: string; /** * Format: int32 * @description Customer ID. * @example 1 */ readonly customer_id?: number; /** * Format: date-time * @description The date the customer attribute was created. */ readonly date_created?: string; /** * Format: date-time * @description The date the customer attribute was modified. */ readonly date_modified?: string; /** * Format: int32 * @description Attribute value ID. * @example 2 */ readonly id?: number; }; /** * attribute_Put * @description Once the data type is set, it can not be changed. The attribute will need to be deleted then created again with the new data type. This will also delete it from the customer. */ readonly attribute_Put: { /** @description Attribute name. */ readonly name: string; /** * Format: int32 * @description Attribute ID. */ readonly id: number; }; /** * attribute_Post * @example { * "name": "attribute_string 01", * "type": "string" * } */ readonly attribute_Post: { /** @description Attribute name. */ readonly name: string; /** * Type * @description Attribute type should match one of: string, number, date. * @example string * @enum {string} */ readonly type: "string" | "number" | "date"; }; /** address_Full */ readonly address_Full: { /** @description The first name of the customer address. */ readonly first_name: string; /** @description The last name of the customer address. */ readonly last_name: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The address 1 line. */ readonly address1: string; /** @description The address 2 line. */ readonly address2?: string; /** @description The city of the customer address. */ readonly city: string; /** @description The state or province name. */ readonly state_or_province: string; /** @description The postal code of the customer address. */ readonly postal_code: string; /** @description The country code of the customer address. */ readonly country_code: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** * Format: int32 * @description The customer ID. */ readonly customer_id: number; /** * Format: int32 * @description The unique numeric ID of the address. */ readonly id: number; /** @description The country name of the customer address. */ readonly country?: string; /** @description Array of form fields. Controlled by `formfields` parameter. */ readonly form_fields?: readonly components["schemas"]["formFieldValue"][]; }; /** address_Put */ readonly address_Put: { /** @description The first name of the customer address. */ readonly first_name?: string; /** @description The last name of the customer address. */ readonly last_name?: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The address 1 line. */ readonly address1?: string; /** @description The address 2 line. */ readonly address2?: string; /** @description The city of the customer address. */ readonly city?: string; /** * @description The state or province name. * @example California */ readonly state_or_province?: string; /** @description The postal code of the customer address. */ readonly postal_code?: string; /** * @description The country code of the customer address. * @example US */ readonly country_code?: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** * Format: int32 * @description The unique numeric ID of the address. * @example 1 */ readonly id: number; /** @description Array of form fields. Controlled by formfields parameter. * */ readonly form_fields?: readonly components["schemas"]["formFieldValue"][]; }; /** address_Post */ readonly address_Post: { /** * @description The first name of the customer address. * @example John */ readonly first_name: string; /** * @description The last name of the customer address. * @example Doe */ readonly last_name: string; /** * @description The company of the customer address. * @example BigCommerce */ readonly company?: string; /** * @description The address 1 line. * @example 123 Example Street */ readonly address1: string; /** * @description The address 2 line. * @example Building 4 */ readonly address2?: string; /** * @description The city of the customer address. * @example Austin */ readonly city: string; /** * @description The state or province name spelled out in full. It is required for countries that need a state/province to complete an address. State or province codes not accepted. * @example Texas */ readonly state_or_province: string; /** * @description The postal code of the customer address. It is required for countries that need postal codes to complete an address. * @example 78759 */ readonly postal_code: string; /** * @description The country code of the customer address. * @example US */ readonly country_code: string; /** * @description The phone number of the customer address. * @example 15551234567 */ readonly phone?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** * Format: int32 * @description The customer ID. * @example 1 */ readonly customer_id: number; /** @description The address custom form field values * */ readonly form_fields?: readonly components["schemas"]["formFieldValue"][]; }; /** * customerAddresses_Base * @description The `address` object for the `customer` objectʼs `addresses` array. * @example { * "address1": "Addr 1", * "address2": "", * "address_type": "residential", * "city": "San Francisco", * "company": "History", * "country_code": "US", * "first_name": "Ronald", * "last_name": "Swimmer", * "phone": "707070707", * "postal_code": "33333", * "state_or_province": "California" * } */ readonly customerAddresses_Base: { /** @description The first name of the customer address. */ readonly first_name: string; /** @description The last name of the customer address. */ readonly last_name: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The address 1 line. */ readonly address1: string; /** @description The address 2 line. */ readonly address2?: string; /** @description The city of the customer address. */ readonly city: string; /** @description The state or province name. It is required for countries that need a state/province to complete an address. */ readonly state_or_province?: string; /** @description The postal code of the customer address. It is required for countries that need postal codes to complete an address. */ readonly postal_code?: string; /** @description The country code of the customer address. */ readonly country_code: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; }; /** * customerAddresses_CustomerPost * @description The `address` object for the `customer` objectʼs `addresses` array. * @example { * "address1": "Addr 1", * "address2": "", * "address_type": "residential", * "city": "San Francisco", * "company": "History", * "country_code": "US", * "first_name": "Ronald", * "last_name": "Swimmer", * "phone": "707070707", * "postal_code": "33333", * "state_or_province": "California", * "form_fields": [ * { * "name": "test", * "value": "test" * } * ] * } */ readonly customerAddresses_CustomerPost: { /** @description The first name associated with the customer address. */ readonly first_name: string; /** @description The last name of the customer address. */ readonly last_name: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The address 1 line. */ readonly address1: string; /** @description The address 2 line. */ readonly address2?: string; /** @description The city of the customer address. */ readonly city: string; /** @description The state or province name. Required for countries in which valid addresses must contain a state/province. */ readonly state_or_province?: string; /** @description The postal code of the customer address. Required for countries in which valid addresses must have postal codes. */ readonly postal_code?: string; /** @description The country code of the customer address. */ readonly country_code: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** @description Array of form fields. Controlled by `formfields` parameter. */ readonly form_fields?: readonly components["schemas"]["formFieldValue"][]; }; /** customerAuthentication_PostPut */ readonly customerAuthentication_PostPut: { /** @description If `true`, this customer will be forced to change password on next login. */ readonly force_password_reset?: boolean; /** @description New password for customer. Write only field. */ readonly new_password?: string; }; /** * Links * @description Pagination links for the previous and next parts of the whole collection. */ readonly Links: { /** @description Link to the previous page returned in the response. */ readonly previous?: string; /** @description Link to the current page returned in the response. */ readonly current?: string; /** @description Link to the next page returned in the response. */ readonly next?: string; }; /** Generic Form Field Value */ readonly formFieldValue: { /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; }; /** Customer Form Field Value */ readonly formFieldValue_Customer: { /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; readonly customer_id: number; }; /** Customer Address Form Field Value */ readonly formFieldValue_Address: { /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; /** * @description The Customer Address ID. * @example 1 */ readonly address_id: number; }; /** formFieldValue_Full */ readonly formFieldValue_Full: components["schemas"]["formFieldValue_Customer"] | components["schemas"]["formFieldValue_Address"]; /** * consent_Full * @description Response payload for the BigCommerce API. */ readonly consent_Full: { readonly allow?: components["schemas"]["consentAllow"]; readonly deny?: components["schemas"]["Deny"]; /** * Format: date-time * @description The date of which the customer consent was last updated. */ readonly updated_at?: string; }; /** * consentAllow * @example [ * "essential", * "targeting", * "functional" * ] */ readonly consentAllow: readonly ("essential" | "functional" | "analytics" | "targeting")[]; /** * Deny * @example [ * "analytics" * ] */ readonly Deny: readonly ("essential" | "functional" | "analytics" | "targeting")[]; /** * DeclareCustomerConsentRequest * @description Request payload for the BigCommerce API. */ readonly DeclareCustomerConsentRequest: { readonly allow?: components["schemas"]["consentAllow"]; readonly deny?: components["schemas"]["Deny"]; }; /** customerAttributes_Base */ readonly customerAttributes_Base: { /** * Format: int32 * @description Attribute ID. * @example 55 */ readonly attribute_id?: number; /** * @description Attribute value. This will always be a string, regardless of the attribute’s type. * @example string */ readonly attribute_value?: string; }; /** * customerChannelIds * @description Array of channel ids the Customer has access to. */ readonly customerChannelIds: readonly unknown[]; /** * Card Instrument * @description Details about a stored card instrument which includes details around billing, last 4 digits, issuer, etc. */ readonly CardInstrument: { /** * @description Type of instrument. (enum property replaced by openapi-typescript) * @enum {string} */ readonly type: "stored_card"; /** * @description An identifier representing this stored instrument. * @example 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c */ readonly token?: string; /** @description Identifies whether this stored instrument is default for the customer. */ readonly is_default?: boolean; /** * @description Card brand. * @example VISA */ readonly brand?: string; /** @description Expiry month for this card. */ readonly expiry_month?: number; /** @description Expiry year for this card. */ readonly expiry_year?: number; /** * @description Issuer identification number for this card. * @example 411111 */ readonly issuer_identification_number?: string; /** * @description Last four digits of this card. * @example 1111 */ readonly last_4?: string; readonly billing_address?: components["schemas"]["BillingAddress"]; }; /** * PayPal Account Instrument * @description A PayPal account stored instrument. */ readonly PayPalAccountInstrument: { /** * @description Instrument type. (enum property replaced by openapi-typescript) * @enum {string} */ readonly type: "stored_paypal_account"; /** * @description An identifier representing this stored instrument. * @example 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c */ readonly token?: string; /** @description Identifies whether this stored instrument is default for the customer. */ readonly is_default?: boolean; /** * @description PayPal email address. * @example bc-buyer-paypal-express@example.com */ readonly email?: string; }; /** * Bank Account Instrument * @description A stored bank account instrument. */ readonly BankAccountInstrument: { /** * @description Instrument type. (enum property replaced by openapi-typescript) * @enum {string} */ readonly type: "stored_bank_account"; /** * @description An identifier representing this stored instrument. * @example 84596bea275fa254da820056bdc3e495bdf01fd11c51b0336347d447ee16200c */ readonly token?: string; /** @description Identifies whether this stored instrument is default for the customer. */ readonly is_default?: boolean; /** * @description A masked bank account number. * @example 12XXX56 */ readonly masked_account_number?: string; /** * @description Issuer identifier for the account. * @example DE001 */ readonly issuer?: string; }; readonly BillingAddress: { /** * @description First name of the card holder. * @example Tester */ readonly first_name?: string; /** * @description Last name of the card holder. * @example Tester */ readonly last_name?: string; /** @example example@example.com */ readonly email?: string; /** * @description Company of the card holder. * @example Test Company */ readonly company?: string; /** @example 1 Sample Street */ readonly address1?: string; /** @example Apt 1 */ readonly address2?: string; /** @example Las Vegas */ readonly city?: string; /** @example 90854 */ readonly postal_code?: string; /** * @description Represents state or province. * @example Nevada */ readonly state_or_province?: string; /** @example NV */ readonly state_or_province_code?: string; /** * @description ISO-3166-1 2 letter country code. * @example US */ readonly country_code?: string; /** @example 101-192-0293 */ readonly phone?: string; }; /** * Format: double * @description Store credit. */ readonly CustomerStoredCreditAmounts: readonly { /** * Format: float * @example 43.15 */ readonly amount?: number; }[]; /** * CustomerSettingsObject * @description Customer Settings. */ readonly CustomerSettingsObject: { /** @description Controls the privacy settings. */ readonly privacy_settings?: { /** @description Determines if a customer requires consent for tracking privacy. */ readonly ask_shopper_for_tracking_consent?: boolean; /** * @description The URL for a websiteʼs privacy policy. * @example https://bigcommmerce.com/policy */ readonly policy_url?: string; }; /** @description The settings for a collection of customers. */ readonly customer_group_settings?: { /** * @description The ID for a guest customer group. * @example 0 */ readonly guest_customer_group_id?: number; /** * @description The ID for a default customer group. * @example 0 */ readonly default_customer_group_id?: number; }; }; /** CustomerChannelSettingsObject */ readonly CustomerChannelSettingsObject: { /** @description Controls the privacy settings. */ readonly privacy_settings?: { /** @description Determines if a customer requires consent for tracking privacy. */ readonly ask_shopper_for_tracking_consent?: boolean; /** * @description The URL for a websiteʼs privacy policy. * @example https://bigcommmerce.com/policy */ readonly policy_url?: string; }; /** @description The settings for a collection of customers. */ readonly customer_group_settings?: { /** * @description The ID for a guest customer group. * @example 0 */ readonly guest_customer_group_id?: number; /** * @description The ID for a default customer group. * @example 0 */ readonly default_customer_group_id?: number; }; /** @description * Determines if a channel allows global customer to login * * Determines if customers created on this channel will get global access/login */ readonly allow_global_logins?: boolean; }; /** ValidateCustomerCredentialsObject */ readonly ValidateCustomerCredentialsObject: { /** @description Customer email address. */ readonly email: string; /** @description Customer password. */ readonly password: string; /** @description ChannelId to check the customer credentials against - If this field is empty we will use channel 1. */ readonly channel_id?: number; }; /** ValidateCustomerCredentialsResponseObject */ readonly ValidateCustomerCredentialsResponseObject: { /** @description Returns the customer ID. */ readonly customer_id?: number | null; /** @description indicates if the provided credentials are valid. */ readonly is_valid?: boolean; }; /** @description Common metafield properties. * */ readonly Metafield: { /** * @description Determines the visibility and writeability of the field by other API consumers. * | Value | Description | * | :--- | :--- | * | `app_only` | Private to the app that owns the field. | * | `read` | Visible to other API consumers. | * | `write` | Open for reading and writing by other API consumers. | * | `read_and_sf_access` | Visible to other API consumers, including on storefront. | * | `write_and_sf_access` | Open for reading and writing by other API consumers, including on storefront. | * * @enum {string} */ readonly permission_set: "app_only" | "read" | "write" | "read_and_sf_access" | "write_and_sf_access"; /** * @description Namespace for the metafield, for organizational purposes. * * @example Sales Department */ readonly namespace: string; /** * @description The name of the field, for example: `location_id`, `color`. * * @example Staff Name */ readonly key: string; /** * @description The value of the field, for example: `1`, `blue`. * * @example Ronaldo */ readonly value: string; /** * @description Description for the metafields. * * @example order */ readonly description: string; /** * @description The type of resource with which the metafield is associated. * * @example cart * @enum {string} */ readonly resource_type: "brand" | "product" | "variant" | "category" | "cart" | "channel" | "location" | "order" | "customer"; /** * @description The unique identifier for the resource with which the metafield is associated. * * @example 424242 */ readonly resource_id: number; /** @description The unique identifier for the metafield. */ readonly id: number; /** * Format: date-time * @description Date and time of the metafieldʼs creation. * @example 2022-06-16T18:39:00+00:00 */ readonly date_created: string; /** * Format: date-time * @description Date and time when the metafield was last updated. * @example 2022-06-16T18:39:00+00:00 */ readonly date_modified: string; /** * @description Client ID for the metafieldʼs creator. * @example ramciw4fnoz87it3ynjfif2zrkil5p */ readonly owner_client_id?: string; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponse: { readonly data?: readonly components["schemas"]["Metafield"][]; readonly meta?: components["schemas"]["CollectionMeta"]; }; /** @description Response payload for the BigCommerce API. */ readonly MetaFieldCollectionPostPutResponses: { readonly data?: readonly components["schemas"]["Metafield"][]; /** * @description Empty for 200 responses. * @example [] */ readonly errors?: readonly unknown[]; readonly meta?: components["schemas"]["CollectionMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponsePartialSuccess_POST_PUT: { readonly data?: readonly components["schemas"]["Metafield"][]; readonly errors?: readonly components["schemas"]["Error"][]; readonly meta?: components["schemas"]["WriteCollectionPartialSuccessMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionResponsePartialSuccess_DELETE: { /** @example [ * 123 * ] */ readonly data?: readonly number[]; readonly errors?: readonly components["schemas"]["Error"][]; readonly meta?: components["schemas"]["WriteCollectionPartialSuccessMeta"]; }; /** @description Response payload for the BigCommerce API. * */ readonly MetaFieldCollectionDeleteResponseSuccess: { /** @example [ * 123, * 124, * 125 * ] */ readonly data?: readonly number[]; /** * @description Empty for 200 responses. * @example [] */ readonly errors?: readonly unknown[]; readonly meta?: components["schemas"]["WriteCollectionSuccessMeta"]; }; /** * Collection Meta * @description Additional data about the response. */ readonly WriteCollectionPartialSuccessMeta: { /** * @description Total number of items in the result set. * * @example 3 */ readonly total?: number; /** * @description Total number of items that were successfully deleted. * * @example 1 */ readonly success?: number; /** * @description Total number of items that failed to be deleted. * * @example 2 */ readonly failed?: number; }; /** * Collection Meta * @description Additional data about the response. */ readonly WriteCollectionSuccessMeta: { /** * @description Total number of items in the result set. * * @example 3 */ readonly total?: number; /** * @description Total number of items that were successfully deleted. * * @example 3 */ readonly success?: number; /** * @description Total number of items that failed to be deleted. * * @example 0 */ readonly failed?: number; }; /** * @description Total number of items in the result set. * * @example 3 */ readonly Total: number; /** * @description Total number of items that were successfully deleted. * * @example 1 */ readonly Success: number; /** * @description Total number of items that failed to be deleted. * * @example 2 */ readonly Failed: number; /** @description Error response payload for the BigCommerce API. * */ readonly Error: { /** * @description The HTTP status code for the error. * * @example 422 */ readonly status?: number; /** * @description The error title. * * @example Bulk operation has failed */ readonly title?: string; /** * @description The error type. * * @example https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes */ readonly type?: string; readonly errors?: components["schemas"]["ErrorDetail"]; }; /** * @description Error detail response payload for the BigCommerce API. * * @example { * "1": "Unauthorized to delete", * "2": "Metafield does not exist" * } */ readonly ErrorDetail: { readonly [key: string]: unknown; }; /** * Collection Meta * @description Data about the response, including pagination and collection totals. */ readonly CollectionMeta: { /** * Pagination * @description Data about the response, including pagination and collection totals. */ readonly pagination?: { /** * @description Total number of items in the result set. * * @example 36 */ readonly total?: number; /** * @description Total number of items in the collection response. * * @example 36 */ readonly count?: number; /** * @description The amount of items returned in the collection per page, controlled by the limit parameter. * * @example 50 */ readonly per_page?: number; /** * @description The page you are currently on within the collection. * * @example 1 */ readonly current_page?: number; /** * @description The total number of pages in the collection. * * @example 1 */ readonly total_pages?: number; /** @description Pagination links for the previous and next parts of the whole collection. * */ readonly links?: { /** @description Link to the previous page returned in the response. * */ readonly previous?: string; /** * @description Link to the current page returned in the response. * * @example ?page=1&limit=50 */ readonly current?: string; /** @description Link to the next page returned in the response. * */ readonly next?: string; }; }; } & { readonly [key: string]: unknown; }; /** @description Common Metafield properties. * */ readonly MetafieldBase_Post: { /** * @description Determines the visibility and writeability of the field by other API consumers. * * | Value | Description | * | :--- | :--- | * | `app_only` | Private to the app that owns the field. | * | `read` | Visible to other API consumers. | * | `write` | Open for reading and writing by other API consumers. | * | `read_and_sf_access` | Visible to other API consumers, including on the storefront. | * | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. | * @enum {string} */ readonly permission_set: "app_only" | "read" | "write" | "read_and_sf_access" | "write_and_sf_access"; /** * @description Namespace for the metafield, for organizational purposes. * * @example Sales Department */ readonly namespace: string; /** * @description The name of the field, for example: `location_id`, `color`. * * @example Staff Name */ readonly key: string; /** * @description The value of the field, for example: `1`, `blue`. * * @example Ronaldo */ readonly value: string; /** * @description Description for the metafields. * * @example Name of Staff Member */ readonly description?: string; }; /** @description Common Metafield properties. * */ readonly MetafieldBase_Put: { /** * @description Determines the visibility and writeability of the field by other API consumers. * * | Value | Description | * | :--- | :--- | * | `app_only` | Private to the app that owns the field. | * | `read` | Visible to other API consumers. | * | `write` | Open for reading and writing by other API consumers. | * | `read_and_sf_access` | Visible to other API consumers, including on the storefront. | * | `write_and_sf_access` | Open for reading and writing by other API consumers, including on the storefront. | * * @enum {string} */ readonly permission_set?: "app_only" | "read" | "write" | "read_and_sf_access" | "write_and_sf_access"; /** * @description Namespace for the metafield, for organizational purposes. * * @example Sales Department */ readonly namespace?: string; /** * @description The name of the field, for example: `location_id`, `color`. * * @example Staff Name */ readonly key?: string; /** * @description The value of the field, for example: `1`, `blue`. * * @example Ronaldo */ readonly value?: string; /** * @description Description for the metafields. * * @example Name of Staff Member */ readonly description?: string; }; /** metafield_Full */ readonly metafield_Full: { /** * @description Unique ID of the *Metafield*. Read-Only. * @example 6 */ readonly id?: number; } & components["schemas"]["metafield_Base"] & { /** * @description The type of resource with which the metafield is associated. * * @example customer * @enum {string} */ readonly resource_type?: "category" | "brand" | "product" | "variant" | "customer"; /** * @description The ID of the resource with which the metafield is associated. * * @example 111 */ readonly resource_id?: number; /** * Format: date-time * @description Date and time of the metafieldʼs creation. Read-Only. * * @example 2018-05-07T20:14:17+00:00 */ readonly date_created?: string; /** * Format: date-time * @description Date and time when the metafield was last updated. Read-Only. * * @example 2018-05-07T20:14:17+00:00 */ readonly date_modified?: string; }; /** * metafield_Base * @description Metafield for products, categories, variants, and brands; the max number of metafields allowed on each is 50. For more information, see [Platform Limits](https://support.bigcommerce.com/s/article/Platform-Limits) in the Help Center. */ readonly metafield_Base: { /** * @description The name of the field, for example: `location_id`, `color`. Required for POST. * * @example Location */ readonly key: string; /** * @description The value of the field, for example: `1`, `blue`. Required for POST. * * @example 4HG */ readonly value: string; /** * @description Namespace for the metafield, for organizational purposes. This is set by the developer. Required for POST. * * @example Warehouse Locations */ readonly namespace: string; /** * @description Determines the visibility and writeability of the field by other API consumers. * * |Value|Description * |-|-| * |`app_only`|Private to the app that owns the field| * |`read`|Visible to other API consumers| * |`write`|Open for reading and writing by other API consumers| * |`read_and_sf_access`|Visible to other API consumers, including on storefront| * |`write_and_sf_access`|Open for reading and writing by other API consumers, including on storefront| * @enum {string} */ readonly permission_set: "app_only" | "read" | "write" | "read_and_sf_access" | "write_and_sf_access"; /** * @description Description for the metafields. * * @example Location in the warehouse */ readonly description?: string; }; /** * Response meta * @description Response metadata. */ readonly metaEmpty_Full: { readonly [key: string]: unknown; }; /** * metaCollection_Full * @description Data about the response, including pagination and collection totals. */ readonly metaCollection_Full: { readonly pagination?: components["schemas"]["pagination_Full"]; }; /** * Not Found * @description Error payload for the BigCommerce API. */ readonly NotFound: { /** @description 404 HTTP status code. * */ readonly status?: number; /** @description The error title describing the particular error. */ readonly title?: string; readonly type?: string; readonly instance?: string; }; /** * pagination_Full * @description Data about the response, including pagination and collection totals. */ readonly pagination_Full: { /** * @description Total number of items in the result set. * * @example 36 */ readonly total?: number; /** * @description Total number of items in the collection response. * * @example 36 */ readonly count?: number; /** * @description The amount of items returned in the collection per page, controlled by the limit parameter. * * @example 50 */ readonly per_page?: number; /** * @description The page you are currently on within the collection. * * @example 1 */ readonly current_page?: number; /** * @description The total number of pages in the collection. * * @example 1 */ readonly total_pages?: number; /** @description Pagination links for the previous and next parts of the whole collection. * */ readonly links?: { /** @description Link to the previous page returned in the response. * */ readonly previous?: string; /** * @description Link to the current page returned in the response. * * @example ?page=1&limit=50 */ readonly current?: string; /** @description Link to the next page returned in the response. * */ readonly next?: string; }; }; }; responses: { /** @description Customer Collection Response */ readonly CustomerCollectionResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly components["schemas"]["customer_Full"][]; readonly meta?: components["schemas"]["MetaOpen"]; }; }; }; /** @description Get Customer Collection Response */ readonly GetCustomerCollectionResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly components["schemas"]["customer_Full"][]; readonly meta?: components["schemas"]["_metaCollectionWithCursorPagination"]; }; }; }; readonly AddressCollectionResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly { /** @description The address 1 line. */ readonly address1: string; /** @description The address 2 line. */ readonly address2?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** @description The city of the customer address. */ readonly city: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The country name of the customer address. */ readonly country?: string; /** @description The country code of the customer address. */ readonly country_code: string; /** * Format: int32 * @description The customer ID. */ readonly customer_id: number; /** @description The first name of the customer address. */ readonly first_name: string; /** * Format: int32 * @description The unique numeric ID of the address. */ readonly id: number; /** @description The last name of the customer address. */ readonly last_name: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** @description The postal code of the customer address. */ readonly postal_code: string; /** @description The state or province name */ readonly state_or_province: string; /** @description Array of form fields. Controlled by `formfields` parameter. */ readonly form_fields?: readonly components["schemas"]["formFieldValue_Address"][]; }[]; readonly meta?: components["schemas"]["_metaCollection"]; }; }; }; readonly AddressCollectionResponsePostPut: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly { /** @description The address 1 line. */ readonly address1?: string; /** @description The address 2 line. */ readonly address2?: string; /** * Address Type * @description The address type. Residential or Commercial * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** @description The city of the customer address. */ readonly city?: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The country name of the customer address. */ readonly country?: string; /** @description The country code of the customer address. */ readonly country_code?: string; /** * Format: int32 * @description The customer ID. */ readonly customer_id?: number; /** @description The first name of the customer address. */ readonly first_name?: string; /** * Format: int32 * @description The unique numeric ID of the address. */ readonly id?: number; /** @description The last name of the customer address. */ readonly last_name?: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** @description The postal code of the customer address. */ readonly postal_code?: string; /** @description The state or province name. */ readonly state_or_province?: string; /** @description Array of form fields. Controlled by `formfields` parameter. */ readonly form_fields?: readonly components["schemas"]["formFieldValue_Address"][]; }[]; readonly meta?: components["schemas"]["MetaOpen"]; } | { readonly data?: readonly { /** @description The address 1 line. */ readonly address1?: string; /** @description The address 2 line. */ readonly address2?: string; /** * Address Type * @description The address type. Residential or Commercial. * @example residential * @enum {string} */ readonly address_type?: "residential" | "commercial"; /** @description The city of the customer address. */ readonly city?: string; /** @description The company of the customer address. */ readonly company?: string; /** @description The country name of the customer address. */ readonly country?: string; /** @description The country code of the customer address. */ readonly country_code?: string; /** * Format: int32 * @description The customer ID. */ readonly customer_id?: number; /** @description The first name of the customer address. */ readonly first_name?: string; /** * Format: int32 * @description The unique numeric ID of the address. */ readonly id?: number; /** @description The last name of the customer address. */ readonly last_name?: string; /** @description The phone number of the customer address. */ readonly phone?: string; /** @description The postal code of the customer address. */ readonly postal_code?: string; /** @description The state or province name */ readonly state_or_province?: string; /** @description Array of form fields. Controlled by `formfields` parameter. */ readonly form_fields?: readonly components["schemas"]["formFieldValue_Full"][]; }[]; readonly meta?: components["schemas"]["MetaOpen"]; } | Record; }; }; readonly CustomerAttributeValueCollectionResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly { /** * Format: int32 * @description Attribute ID. */ readonly attribute_id: number; /** @description Attribute value. This will always be a string, regardless of the attributes type. * * Corresponds to `value` used in customer attribute values `PUT` requests. */ readonly attribute_value: string; /** * Format: int32 * @description Attribute value ID. */ readonly id?: number; /** * Format: int32 * @description Customer ID. */ readonly customer_id: number; /** * Format: date-time * @description The date on which the customer attribute value was modified. */ readonly date_modified?: string; /** * Format: date-time * @description The date of which the customer attribute value was created. */ readonly date_created?: string; }[]; /** * Collection Meta * @description Data about the response, including pagination and collection totals. */ readonly meta?: { /** * Pagination * @description Data about the response, including pagination and collection totals. */ readonly pagination?: { /** * Format: int32 * @description Total number of items in the result set. */ readonly total?: number; /** * Format: int32 * @description Total number of items in the collection response. */ readonly count?: number; /** * Format: int32 * @description The amount of items returned in the collection per page, controlled by the limit parameter. */ readonly per_page?: number; /** * Format: int32 * @description The page you are currently on within the collection. */ readonly current_page?: number; /** * Format: int32 * @description The total number of pages in the collection. */ readonly total_pages?: number; /** * Links * @description Pagination links for the previous and next parts of the whole collection. */ readonly links?: { /** @description Link to the previous page returned in the response. */ readonly previous?: string; /** @description Link to the current page returned in the response. */ readonly current?: string; /** @description Link to the next page returned in the response. */ readonly next?: string; }; }; }; }; }; }; readonly CustomerAttributesResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly { /** @description Attribute name. */ readonly name: string; /** * Type * @description Attribute type should match one of: string, number, date. * @example string * @enum {string} */ readonly type: "string" | "number" | "date"; /** * Format: int32 * @description Attribute ID. */ readonly id: number; /** * Format: date-time * @description The date on which the customer attribute was modified. */ readonly date_modified?: string; /** * Format: date-time * @description The date of which the customer attribute was created. */ readonly date_created?: string; }[]; readonly meta?: components["schemas"]["MetaOpen"]; }; }; }; readonly FormFieldValueCollectionResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly (({ /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; } & { readonly customer_id: number; }) | ({ /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; } & { /** @description The Customer Address ID. */ readonly address_id: number; }))[]; readonly meta?: components["schemas"]["_metaCollectionWithCursorPagination"]; }; }; }; readonly FormFieldValuesResponse: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly (({ /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; } & { readonly customer_id: number; }) | ({ /** * @description The form field name. * @example color */ readonly name: string; readonly value: string | number | readonly string[]; } & { /** @description The Customer Address ID. */ readonly address_id: number; }))[]; readonly meta?: components["schemas"]["MetaOpen"]; }; }; }; readonly consent_Resp: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["consent_Full"]; }; }; }; parameters: { /** @description The ID of the metafield belonging to the customer. The metafieldId is a generated response when sending a POST query to the Create a Customer Metafields endpoint. */ readonly metafieldId: number; /** @description The ID of the customer. */ readonly customerId: number; /** @description Specifies the page number in a limited (paginated) list of products. * */ readonly PageParam: number; /** @description Filter based on a metafieldʼs key. */ readonly MetafieldKeyParam: string; /** @description Filter based on comma-separated metafieldʼs keys. Could be used with vanilla 'key' query parameter. */ readonly MetafieldKeyInParam: readonly string[]; /** @description Filter based on a metafieldʼs namespaces. */ readonly MetafieldNamespaceParam: string; /** @description Filter based on comma-separated metafieldʼs namespaces. Could be used with vanilla `namespace` query parameter. */ readonly MetafieldNamespaceInParam: readonly string[]; /** @description Controls the number of items per page in a limited (paginated) list of products. * */ readonly LimitParam: number; /** @description Filter items by minimum date created. For example, `date_created:min=2019-09-04T00:00:00` or `date_created:min=2019-09-04`. Returns metafields created after this date. */ readonly date_created_min: string; /** @description Filter items by maximum date created. For example, `date_created:max=`2024-05-14T09:34:00` or `date_created:max=2019-09-04`. Returns metafields created before this date. */ readonly date_created_max: string; /** @description Filter items by minimum date modified. For example, `date_modified:min=`2024-05-14T09:34:00` or `date_modified:min=2019-09-04`. Returns metafields modified after this date. */ readonly date_modified_min: string; /** @description Filter items by maximum date modified. For example, `date_modified:max=2019-09-04T00:00:00` or `date_modified:max=2019-09-04`. Returns metafields modified before this date. */ readonly date_modified_max: string; /** @description Sort direction. Acceptable values are: `asc`, `desc`. * */ readonly DirectionParam: "asc" | "desc"; /** @description Fields to include, in a comma-separated list. The ID and the specified fields will be returned. */ readonly IncludeFieldsParamMetafields: readonly ("resource_id" | "key" | "value" | "namespace" | "permission_set" | "resource_type" | "description" | "owner_client_id" | "date_created" | "date_modified")[]; }; requestBodies: never; headers: never; pathItems: never; } export type $defs = Record; export interface operations { readonly getCustomers: { readonly parameters: { readonly query?: { /** @description Page number (`page` will be ignored if you provide `before` or `after` in the request). For example `page=1`. */ readonly page?: number; /** @description Items count per page. `limit=50` */ readonly limit?: number; /** @description Filter items by ID. * `id:in=4,5,6` */ readonly "id:in"?: readonly number[]; /** @description Filter items by company. `company:in=bigcommerce,commongood` */ readonly "company:in"?: readonly string[]; /** @description Filter items by customer_group_id. `customer_group_id:in=5,6` */ readonly "customer_group_id:in"?: readonly string[]; /** @description Filter items by date created, for example, `2024-05-14T09:34:00` or `2024-05-14`. */ readonly date_created?: string; /** @description Filter items by maximum date created, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns customers created before this date. */ readonly "date_created:max"?: string; /** @description Filter items by date created for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns customers created after this date. */ readonly "date_created:min"?: string; /** @description Filter items by date modified, for example, `2024-05-14T09:34:00` or `2024-05-14`. */ readonly date_modified?: string; /** @description Filter items by minimum date modified, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns customers modified after this date. */ readonly "date_modified:min"?: string; /** @description Filter items by maximum date modified, for example, `2024-05-14T09:34:00` or `2024-05-14`. Returns customers modified before this date. */ readonly "date_modified:max"?: string; /** @description Filter items by email. `email:in=janedoe@example.com` */ readonly "email:in"?: readonly string[]; /** @description Filter items by first_name and last_name. `name=james moriarty` */ readonly "name:in"?: readonly string[]; /** @description Filter items by substring in first_name and last_name. * `name:like=moriarty,sherlock` * Concatenates the first_name and last_name fields. */ readonly "name:like"?: readonly string[]; /** @description Filter items by phone number. `phone:in=555-55-5555` */ readonly "phone:in"?: string; /** @description Filter items by registration_ip_address. If the customer was created using the API, then registration address is blank. * `registration_ip_address:in=12.345.6.789` */ readonly "registration_ip_address:in"?: readonly number[]; /** @description Indicates whether to include customer sub-resources: * * `addresses` - customer addresses * * `storecredit` - store credit * * `attributes` - customer attributes and address attributes * * `formfields` - customer and address form fields * * `shopper_profile_id` - the ID of the shopper profile associated with the customer (Beta) * * `segment_ids`- segments the customer belongs to (Beta) * * `include=addresses,storecredit,attributes,formfields,shopper_profile_id,segment_ids` */ readonly include?: readonly ("addresses" | "storecredit" | "attributes" | "formfields" | "shopper_profile_id" | "segment_ids")[]; /** @description Sort items by date_created, date_modified, or last_name:* `date_created:asc` - date created, ascending* `date_created:desc` - date created, descending* `last_name:asc` - last name, ascending* `last_name:desc` - last name, descending * `date_modified:asc` - date modified, ascending* `date_modified:desc`- date modified, descending Example: `sort=last_name:asc` */ readonly sort?: "date_created:asc" | "date_created:desc" | "last_name:asc" | "last_name:desc" | "date_modified:asc" | "date_modified:desc"; /** @description The cursor reference of the last entry for the previous page. Use the `end_cursor` value from the last response to get the next page (`end_cursor` is only returned on the first page or when the request contains query parameter `before` or `after`). For example `after=eyJpZCI6MjA0fQ`. */ readonly after?: string; /** @description The cursor reference of the first entry for the next page. Use the `start_cursor` value from the last response to get the previous page (`start_cursor` is only returned on the first page or when the request contains query parameter `before` or `after`). For example `before=eyJpZCI6MjA1fQ`. */ readonly before?: string; }; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["GetCustomerCollectionResponse"]; /** @description The optional filter parameter was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["Error"]; }; }; }; }; readonly updateCustomers: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": readonly components["schemas"]["customer_Put"][]; }; }; readonly responses: { readonly 200: components["responses"]["CustomerCollectionResponse"]; /** @description The request payload is too large. The maximum number of items allowed in the array is 10. */ readonly 413: { headers: { readonly [name: string]: unknown; }; content?: never; }; /** @description The `Customer` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly createCustomers: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": readonly components["schemas"]["customer_Post"][]; }; }; readonly responses: { readonly 200: components["responses"]["CustomerCollectionResponse"]; /** @description The request payload is too large. The maximum number of items allowed in the array is 10. */ readonly 413: { headers: { readonly [name: string]: unknown; }; content?: never; }; /** @description The *Customer* was not valid. This is the result of missing required fields or trying to edit a read only field. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly deleteCustomers: { readonly parameters: { readonly query: { /** @description Filter items by ID. * `id:in=4,5,6` */ readonly "id:in": readonly number[]; }; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; /** @description The `id:in` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["Error"]; }; }; }; }; readonly getCustomersAddresses: { readonly parameters: { readonly query?: { /** @description Page number. `page=1` */ readonly page?: number; /** @description Items count per page. `limit=50` */ readonly limit?: number; /** @description Filter items by company. `company:in=bigcommerce,commongood` */ readonly "company:in"?: readonly string[]; /** @description Filter items by first_name and last_name. `name:in=James+Moriarty` */ readonly "name:in"?: readonly string[]; /** @description Filter by the ID of the customer. Also accepts comma-separated IDs to filter for multiple customers. `customer_id:in=23,24,55` */ readonly "customer_id:in"?: readonly number[]; /** @description Indicates whether to include customer address sub-resources: * * `formfields` - address form fields * `include=formfields` */ readonly include?: readonly "formfields"[]; /** @description Filter items by ID. * `id:in=4,5,6` */ readonly "id:in"?: readonly number[]; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["AddressCollectionResponse"]; }; }; readonly updateCustomersAddresses: { readonly parameters: { readonly query?: never; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": readonly components["schemas"]["address_Put"][]; }; }; readonly responses: { readonly 200: components["responses"]["AddressCollectionResponsePostPut"]; /** @description The `Address` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly createCustomersAddresses: { readonly parameters: { readonly query?: never; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": readonly components["schemas"]["address_Post"][]; }; }; readonly responses: { readonly 200: components["responses"]["AddressCollectionResponsePostPut"]; /** @description The `Address` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly deleteCustomersAddresses: { readonly parameters: { readonly query: { /** @description Filter items by ID. * `id:in=4,5,6` */ readonly "id:in": readonly number[]; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; }; }; readonly validateCustomerCredentials: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["ValidateCustomerCredentialsObject"]; }; }; readonly responses: { /** @description Returns if the customer credentials provided are valid or not. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ValidateCustomerCredentialsResponseObject"]; }; }; /** @description This is the result of missing required fields. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Allowed number of requests exceeded. * */ readonly 429: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getCustomersSettings: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description Returns customer settings values for global level. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: components["schemas"]["CustomerSettingsObject"]; readonly meta?: { readonly [key: string]: unknown; }; }; }; }; }; }; readonly updateCustomersSettings: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["CustomerSettingsObject"]; }; }; readonly responses: { /** @description Customer settings are returned on a global level. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: components["schemas"]["CustomerSettingsObject"]; readonly meta?: { readonly [key: string]: unknown; }; }; }; }; }; }; readonly getCustomersSettingsChannel: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { readonly channel_id: number; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description Customer settings for this channel are returned. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: components["schemas"]["CustomerChannelSettingsObject"]; readonly meta?: { readonly [key: string]: unknown; }; }; }; }; }; }; readonly updateCustomersSettingsChannel: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { readonly channel_id: number; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["CustomerChannelSettingsObject"]; }; }; readonly responses: { /** @description Customer settings are returned. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: components["schemas"]["CustomerSettingsObject"]; readonly meta?: { readonly [key: string]: unknown; }; }; }; }; }; }; readonly getCustomersAttributes: { readonly parameters: { readonly query?: { /** @description Page number. `page=1` */ readonly page?: number; /** @description Items count per page. `limit=50` */ readonly limit?: number; /** @description Filter items by customer attribute name. `name=Date+Joined` */ readonly name?: string; /** @description Filter items by substring in customer attribute name. `name:like=join` */ readonly "name:like"?: string; /** @description The type of the customer attribute. */ readonly type?: string; /** @description Filter items by `date_created`, for example, `2024-05-14T09:34:00`, `2024-05-14T09:34:00` or `2024-05-14`. */ readonly date_created?: string; /** @description Filter items by maximum `date_created`, for example, `2024-05-14T09:34:00`, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields created before this date. */ readonly "date_created:max"?: string; /** @description Filter items by minimum `date_created`, for example, `2024-05-14T09:34:00`, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields created after this date. */ readonly "date_created:min"?: string; /** @description Filter items by `date_modified`, for example, `2024-05-14T09:34:00` or `2024-05-14`. */ readonly date_modified?: string; /** @description Filter items by maximum `date_modified`, for example, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields modified before this date. */ readonly "date_modified:max"?: string; /** @description Filter items by minimum `date_modified`, for example, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields modified after this date. */ readonly "date_modified:min"?: string; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["CustomerAttributesResponse"]; }; }; readonly updateCustomersAttributes: { readonly parameters: { readonly query?: never; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": readonly components["schemas"]["attribute_Put"][]; }; }; readonly responses: { readonly 200: components["responses"]["CustomerAttributesResponse"]; /** @description The `Attribute` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly createCustomersAttributes: { readonly parameters: { readonly query?: never; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": readonly components["schemas"]["attribute_Post"][]; }; }; readonly responses: { readonly 200: components["responses"]["CustomerAttributesResponse"]; /** @description The `Attribute` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly deleteCustomersAttributes: { readonly parameters: { readonly query: { /** @description Filter items by ID. */ readonly "id:in": readonly number[]; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; }; }; readonly getCustomersAttributeValues: { readonly parameters: { readonly query?: { /** @description Page number. `page=1` */ readonly page?: number; /** @description Items count per page. `limit=50` */ readonly limit?: number; /** @description Filter items by the customer ID. `customer_id:in=23,24,55` */ readonly "customer_id:in"?: readonly number[]; /** @description Filter items by the attribute ID. `attribute_id:in=1,2` */ readonly "attribute_id:in"?: readonly number[]; /** @description Filter items by the attribute name. `name=age` */ readonly name?: string; /** @description Filter items by `date_created`, for example, `2024-05-14T09:34:00`, `2024-05-14T09:34:00` or `2024-05-14`. */ readonly date_created?: string; /** @description Filter items by maximum `date_created`, for example, `2024-05-14T09:34:00`, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields created before this date. */ readonly "date_created:max"?: string; /** @description Filter items by minimum `date_created`, for example, `2024-05-14T09:34:00`, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields created after this date */ readonly "date_created:min"?: string; /** @description Filter items by `date_modified`, for example, `2024-05-14T09:34:00` or `2024-05-14`. */ readonly date_modified?: string; /** @description Filter items by maximum `date_modified`, for example, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields modified before this date. */ readonly "date_modified:max"?: string; /** @description Filter items by minimum `date_modified`, for example, `2024-05-14T09:34:00` or `2024-05-14`. ISO 8601 full-date is required, ISO 8601 full-time is not required. UNIX timestamp also accepted. Returns metafields modified after this date. */ readonly "date_modified:min"?: string; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["CustomerAttributeValueCollectionResponse"]; }; }; readonly upsertCustomersAttributeValues: { readonly parameters: { readonly query?: never; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": readonly components["schemas"]["attributeValue_Base"][]; }; }; readonly responses: { readonly 200: components["responses"]["CustomerAttributeValueCollectionResponse"]; /** @description The `CustomerAttributeValue` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly deleteCustomersAttributeValues: { readonly parameters: { readonly query: { /** @description Filter items by ID. * `id:in=4,5,6` */ readonly "id:in": readonly number[]; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; }; }; readonly getCustomersFormFieldValues: { readonly parameters: { readonly query?: { /** @description Page number (`page` will be ignored if you provide `before` or `after` in the request). For example `page=1`. */ readonly page?: number; /** @description Items count per page. `limit=50` */ readonly limit?: number; /** @description Filter by the customer ID. */ readonly customer_id?: number; /** @description Filter by the ID of the customer address. */ readonly address_id?: number; /** @description Filter by the field name. */ readonly field_name?: string; /** @description Filter by the field type. * * `checkboxes` - checkboxes field * * `date` - date field * * `multiline` - multiline text field * * `numbers` - numbers only field * * `password` - password field * * `radiobuttons` - radio buttons field * * `text` - text field * * `picklist` - pick list field */ readonly field_type?: "checkboxes" | "date" | "multiline" | "numbers" | "password" | "radiobuttons" | "text" | "picklist"; /** @description The cursor reference of the last entry for the previous page. Use the `end_cursor` value from the last response to get the next page (`end_cursor` is only returned on the first page or when the request contains query parameter `before` or `after`). For example `after=eyJzZXNzaW9uSWQiOjM4LCJmaWVsZElkIjo0MH0`. */ readonly after?: string; /** @description The cursor reference of the first entry for the next page. Use the `start_cursor` value from the last response to get the previous page (`start_cursor` is only returned on the first page or when the request contains query parameter `before` or `after`). For example `before=eyJzZXNzaW9uSWQiOjgsImZpZWxkSWQiOjMxfQ`. */ readonly before?: string; }; readonly header?: { readonly Accept?: string; readonly "Content-Type"?: string; }; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["FormFieldValueCollectionResponse"]; /** @description The form field value was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly updateCustomerFormFieldValues: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": readonly components["schemas"]["formFieldValue_Full"][]; }; }; readonly responses: { readonly 200: components["responses"]["FormFieldValuesResponse"]; /** @description The form field value was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getCustomerConsent: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: components["responses"]["consent_Resp"]; /** @description Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store. */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Missing scope - the v3 Auth token is valid but does not have proper permissions to access this endpoint. */ readonly 403: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Invalid JSON request body - missing or invalid data. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly updateCustomerConsent: { readonly parameters: { readonly query?: never; readonly header?: { readonly "Content-Type"?: string; }; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["DeclareCustomerConsentRequest"]; }; }; readonly responses: { readonly 200: components["responses"]["consent_Resp"]; /** @description Unauthorized - the v3 Auth client ID or token in the request are not a valid combination for this store. */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Missing scope - the v3 Auth token is valid but does not have proper permissions to access this endpoint. */ readonly 403: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Invalid JSON request body - missing or invalid data. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getCustomerStoredInstruments: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description OK */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": readonly (components["schemas"]["CardInstrument"] | components["schemas"]["PayPalAccountInstrument"] | components["schemas"]["BankAccountInstrument"])[]; }; }; /** @description Unauthorized */ readonly 401: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "code": 401, * "message": "Unauthorized" * } */ readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description Missing scope - the v3 Auth token is valid but does not have proper permissions to access this endpoint. */ readonly 403: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "code": 403, * "message": "Missing scope" * } */ readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getCustomersMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description Response payload for the BigCommerce API. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: readonly components["schemas"]["metafield_Full"][]; readonly meta?: components["schemas"]["metaCollection_Full"]; }; }; }; }; }; readonly createCustomerMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; readonly requestBody: { readonly content: { readonly "application/json": components["schemas"]["MetafieldBase_Post"]; }; }; readonly responses: { /** @description Response payload for the BigCommerce API. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionPostPutResponses"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description The `Metafield` conflicts with another `Metafield`. This can result from duplicate unique key combinations of the appʼs client id, namespace, key, resource_type, and resource_id. * */ readonly 409: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; /** @description The `Metafield` was not valid. This is the result of missing required fields, or of invalid data. See the response for more details. */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["ErrorResponse"]; }; }; }; }; readonly getMetafieldsCustomerId: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { /** @description The ID that belongs to the customer. */ readonly customerId: number; /** @description The ID that is generated for a metafield when created. */ readonly metafieldId: number; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": { readonly data?: components["schemas"]["metafield_Full"]; readonly meta?: components["schemas"]["metaEmpty_Full"]; }; }; }; /** @description Not found (A metafield was not found with this query). * */ readonly 404: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["NotFound"]; }; }; }; }; readonly updateCustomerMetafield: { readonly parameters: { readonly query?: { /** @description The ID that is generated for a metafield when created. */ readonly metafieldId?: number; }; readonly header?: never; readonly path: { /** @description The ID of the metafield belonging to the customer. The metafieldId is a generated response when sending a POST query to the Create a Customer Metafields endpoint. */ readonly metafieldId: components["parameters"]["metafieldId"]; /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; }; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": components["schemas"]["MetafieldBase_Put"] & { /** * @description The ID of metafield to update. * * @example 42 */ readonly id: number; }; }; }; readonly responses: { /** @description Response payload for the BigCommerce API. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionPostPutResponses"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Not found (A metafield was not found with this query). * */ readonly 404: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["NotFound"]; }; }; }; }; readonly deleteCustomerMetafieldsId: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path: { /** @description The ID of the customer. */ readonly customerId: components["parameters"]["customerId"]; /** @description The ID of the metafield belonging to the customer. The metafieldId is a generated response when sending a POST query to the Create a Customer Metafields endpoint. */ readonly metafieldId: components["parameters"]["metafieldId"]; }; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description Response object for customer metafields deletion with success. * */ readonly 204: { headers: { readonly [name: string]: unknown; }; content?: never; }; /** @description Not found (A metafield was not found with this query). * */ readonly 404: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["NotFound"]; }; }; }; }; readonly getAllCustomersMetafields: { readonly parameters: { readonly query?: { /** @description Specifies the page number in a limited (paginated) list of products. * */ readonly page?: components["parameters"]["PageParam"]; /** @description Controls the number of items per page in a limited (paginated) list of products. * */ readonly limit?: components["parameters"]["LimitParam"]; /** @description Filter based on a metafieldʼs key. */ readonly key?: components["parameters"]["MetafieldKeyParam"]; /** @description Filter based on comma-separated metafieldʼs keys. Could be used with vanilla 'key' query parameter. */ readonly "key:in"?: components["parameters"]["MetafieldKeyInParam"]; /** @description Filter based on a metafieldʼs namespaces. */ readonly namespace?: components["parameters"]["MetafieldNamespaceParam"]; /** @description Filter based on comma-separated metafieldʼs namespaces. Could be used with vanilla `namespace` query parameter. */ readonly "namespace:in"?: components["parameters"]["MetafieldNamespaceInParam"]; /** @description Sort direction. Acceptable values are: `asc`, `desc`. * */ readonly direction?: components["parameters"]["DirectionParam"]; /** @description Fields to include, in a comma-separated list. The ID and the specified fields will be returned. */ readonly include_fields?: components["parameters"]["IncludeFieldsParamMetafields"]; /** @description Filter items by minimum date modified. For example, `date_modified:min=`2024-05-14T09:34:00` or `date_modified:min=2019-09-04`. Returns metafields modified after this date. */ readonly "date_modified:min"?: components["parameters"]["date_modified_min"]; /** @description Filter items by maximum date modified. For example, `date_modified:max=2019-09-04T00:00:00` or `date_modified:max=2019-09-04`. Returns metafields modified before this date. */ readonly "date_modified:max"?: components["parameters"]["date_modified_max"]; /** @description Filter items by minimum date created. For example, `date_created:min=2019-09-04T00:00:00` or `date_created:min=2019-09-04`. Returns metafields created after this date. */ readonly "date_created:min"?: components["parameters"]["date_created_min"]; /** @description Filter items by maximum date created. For example, `date_created:max=`2024-05-14T09:34:00` or `date_created:max=2019-09-04`. Returns metafields created before this date. */ readonly "date_created:max"?: components["parameters"]["date_created_max"]; }; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description List of `Metafield` objects. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponse"]; }; }; }; }; readonly updateCustomersMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": readonly (components["schemas"]["MetafieldBase_Put"] & { /** * @description The ID of metafield to update. * * @example 42 */ readonly id: number; })[]; }; }; readonly responses: { /** @description Response payload for the BigCommerce API. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionPostPutResponses"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields creation with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_POST_PUT"]; }; }; }; }; readonly createCustomersMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: { readonly content: { readonly "application/json": readonly (components["schemas"]["MetafieldBase_Post"] & { /** * @description The ID for the resource with which the metafield is associated. * * @example 42 */ readonly resource_id: number; })[]; }; }; readonly responses: { /** @description Response payload for the BigCommerce API. */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionPostPutResponses"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields creation with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_POST_PUT"]; }; }; }; }; readonly deleteCustomersMetafields: { readonly parameters: { readonly query?: never; readonly header?: never; readonly path?: never; readonly cookie?: never; }; readonly requestBody?: never; readonly responses: { /** @description Response object for metafields deletion with success. * */ readonly 200: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionDeleteResponseSuccess"]; }; }; /** @description Bad Request. Input is invalid. */ readonly 400: { headers: { readonly [name: string]: unknown; }; content: { /** @example { * "status": 400, * "title": "Input is invalid", * "type": "https://developer.bigcommerce.com/api-docs/getting-started/api-status-codes", * "detail": "Syntax error" * } */ readonly "application/json": { readonly status?: number; readonly title?: string; readonly type?: string; readonly detail?: string; }; }; }; /** @description Response object for metafields deletion with partial success. * */ readonly 422: { headers: { readonly [name: string]: unknown; }; content: { readonly "application/json": components["schemas"]["MetaFieldCollectionResponsePartialSuccess_DELETE"]; }; }; }; }; }