# Flxpoint API, complete reference
> Every operation in the Flxpoint REST API: 246 operations across
> 27 resources, version 1.0. Flxpoint is a retail
> operations platform for multi-channel ecommerce, dropship automation and order
> management across suppliers and sales channels.
- Base URL: https://api.flxpoint.com
- Authentication: an API token sent in the `X-API-TOKEN` header
- Human documentation: https://www.apihelpcenter.flxpoint.com
- OpenAPI 3 specification: https://www.apihelpcenter.flxpoint.com/api/openapi
- Generated from the specification, so it matches the reference pages exactly.
Nested request and response schemas are summarised to their top level here. Follow the
docs link on an operation, or read the OpenAPI specification, for the full shape.
---
## Account
7 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/account
### GET /account
Get Account
Only account API Tokens can use this endpoint
- Operation id: `getAccount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/getaccount
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `id` (integer, required)
- `productPriceWorkflowEventId` (integer)
- `defaultOrderRoutingGroupId` (integer)
- `orderRoutingWorkflowEventId` (integer)
- `subdomain` (string)
- `brandName` (string)
- `companyName` (string)
### GET /account/purchase-order-strategy
Get Account PO Strategy
Deprecated, please use `/account/po-strategy`
- Operation id: `getAccountPurchaseOrderStrategy`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/getaccountpurchaseorderstrategy
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `autoProcess` (boolean)
- `purchaseOrderNumberStrategyId` (integer)
- `passOrderCustomFieldsToPo` (boolean)
- `passOrderItemCustomFieldsToPo` (boolean)
- `packingSlipFormat` (string (basic | detailed)): Required when 'auto generate packing slip' source setting is enabled. Specifies the type of packing slip format being ap
- `packingSlipOptions` (string)
### GET /account/settings
Get Account Settings
This endpoint allows you to retrieve settings that are actively configured for a given account.
- Operation id: `getAccountSettings`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/getaccountsettings
Query parameters:
- `findByHandles` (query, string, optional): A setting handle, or a comma-separated list of setting handles to retrieve
- `findByCategoryHandle` (query, string, optional): A single category handle to retrieve settings for
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `settingId` (integer)
- `name` (string)
- `handle` (string (source.send_po_from_vendor_portal | source.cancel_unacknowledged_items | source.upload_inventory_from_vendor_portal | source.upload_shipment_from_vendor_portal | source.upload_invoice_from_vendor_portal | skip_getting_started_source_wizard | account.settings.rate_shopping | feature_flag.channel_wizard), required)
- `required` (boolean)
- `type` (string)
- `valueType` (string)
- `hidden` (boolean)
- `placeholder` (string)
- `id` (integer)
- `accountId` (integer)
- `value` (string)
- `defaultValue` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `description` (string)
- `options` (string)
- `parentSettingId` (integer)
- `settingCategory` (object)
### GET /account/custom-aggregate-fields
Get Custom Aggregate Fields
Get all setup custom aggregate fields
- Operation id: `getCustomAggregateFields`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/getcustomaggregatefields
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `aggregateFieldDataTypeId` (integer)
- `customAggregateFieldOptionId` (integer)
- `name` (string)
- `handle` (string)
- `ignoreOutOfStock` (boolean)
- `accountId` (integer)
### GET /settings
Get Settings
This endpoint allows you to retrieve the possible settings. Settings are categorized into separate domains. In order to retrieve settings for a specific domain, pass the appropriate `handle`. This endpoint does NOT retrieve the `values` that are configured for a specific Account, Source, Channel, Reseller, etc. The values are retrieved via separate endpoints (i.e. /sources/{sourceId}/settings) **You must either pass `findByCategory` or `findByHandle or `findById`**
- Operation id: `getSettings`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/getsettings
Query parameters:
- `findByCategory` (query, string, optional): A setting category handle will retrieve back all settings for a specific category. For more information on these categories, see the `handle` field description on `SettingCategory`
- `findByHandles` (query, string, optional): A setting handle, or a comma separate list of setting handles to retrieve.
- `findById` (query, integer, optional): A setting id, this will retrieve a setting associated with this setting id
Responses:
- `200`: OK
- `201`: Created
- `400`: Bad Request
Success response body, array of object:
- `id` (integer): the `Setting` ID
- `name` (string, required): A friendly name or title for the Setting
- `handle` (string, required): The `handle` represents a quick human-readable version of the `id` to understand what a setting relates to. Some example
- `type` (string (img | boolean | time_interval_threshold | email | string | text | select | number), required): The type of setting. This determines how you may present the selection or setting to a user. - `string` = a short text i
- `valueType` (string (integer | boolean | time_interval_threshold | string | select | email | decimal | number), required): The type of value the setting is expecting. - `integer` = a whole number value - `decimal` = a decimal number value - `s
- `placeholder` (string): An optional "placeholder" that will be used for text or numeric based inputs. Note : a placeholder is different than "de
- `defaultValue` (string): The `defaultValue` represents our recommended selection for a given Setting. For example, the "Protect Against Duplicate
- `description` (string): Description of the setting - this will appear below the setting name in the UI when a user is configuring it.
- `options` (string): A field expecting a `JSON Array` in the format : `[{ "[value]" : "[descriptor]"}]` where : - `[value]` = the value of th
- `parentSettingId` (integer): If the setting is associated to another setting, this field may be populated. For example, you may choose to `Override P
- `category` (object)
### GET /account/users
Get Users
Only account API Tokens can use this endpoint. Get users for an account.
- Operation id: `getUsers`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/getusers
Query parameters:
- `ids` (query, array of integer, optional): A list of ids to filter on
- `emails` (query, array of string, optional): A list of emails to filter on
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `firstName` (string, required)
- `lastName` (string, required)
- `email` (string, required)
- `isPrimary` (boolean)
- `insertedAt` (string)
- `updatedAt` (string)
- `lastLoginAt` (string)
- `notificationsLastCheckedAt` (string)
- `lastSessionAt` (string)
- `minutesOfActivity` (integer)
- `timeZone` (string): IANA time zone identifier, for example America/New_York. Null when the user has not chosen one.
- `role` (object)
### POST /account/settings
Update Account Settings
- Operation id: `postAccountSettings`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/account/postaccountsettings
Request body (application/json), array of object:
- `settingId` (integer)
- `name` (string)
- `handle` (string (source.send_po_from_vendor_portal | source.cancel_unacknowledged_items | source.upload_inventory_from_vendor_portal | source.upload_shipment_from_vendor_portal | source.upload_invoice_from_vendor_portal | skip_getting_started_source_wizard | account.settings.rate_shopping | feature_flag.channel_wizard), required)
- `required` (boolean)
- `type` (string)
- `valueType` (string)
- `hidden` (boolean)
- `placeholder` (string)
- `id` (integer)
- `accountId` (integer)
- `value` (string)
- `defaultValue` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `description` (string)
- `options` (string)
- `parentSettingId` (integer)
- `settingCategory` (object)
Responses:
- `200`: OK
- `401`: Unauthorized
---
## Channel
8 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/channel
### POST /channel/
Create Channel
Create a channel. Requires an account level token.
- Operation id: `postChannel`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/postchannel
Request body (application/json), object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
### GET /channel/{id}
Get Channel
Retrieves back a Channel by its ID. This endpoint requires an Account or Channel token for authentication.
- Operation id: `getChannelById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/getchannelbyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
Success response body, object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
### GET /channels/{channelId}/settings
Get Channel Settings
This endpoint allows you to retrieve the setting `values` that are configured for a Channel. You can filter down the list of settings returned by passing `handles`. Note: you must use a token with Account privileges.
- Operation id: `getChannelSettings`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/getchannelsettings
Query parameters:
- `findByHandles` (query, string, optional): A setting handle, or a comma-separated list of setting handles to retrieve.
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer, required): The `ChannelSetting` ID
- `setting` (object, required)
- `channelId` (integer): Id of channel this channel setting belong to.
- `value` (string, required): The setting value that is configured
- `insertedAt` (string)
- `updatedAt` (string)
### GET /channel/
Get Channels
Get all channels configured on the account. This endpoint requires an account level API token.
- Operation id: `getChannels`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/getchannels
Query parameters:
- `includeIntegrations` (query, boolean, optional): Set this to `true` to return back the `integrations` on the Channel
- `includeArchived` (query, boolean, optional): Set this to `true` to also return back channels that have been archived. By default these are excluded in the response.
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
### PUT /channel/{id}
Put Channel
Put an updated channel. Requires an account level token.
- Operation id: `putChannel`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/putchannel
Request body (application/json), object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
### PUT /channel/{id}/locations
Put Channel Locations
Replaces all configured locations on a MLI channel. Channel must be MLI otherwise a 400 Bad Request is returned.
- Operation id: `putChannelLocations`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/putchannellocations
Request body (application/json), object:
- `channelLocations` (array of object)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
Success response body, object:
- `channelLocations` (array of object)
### PATCH /channel/{id}
Update Channel
This endpoint allows you to update metadata associated to a Channel. To use this endpoint, simply specify the parameter you'd like to patch. Only the parameters the are passed will be patched.
- Operation id: `patch-channel-id`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/patch-channel-id
Query parameters:
- `name` (query, string, optional): Channel Name
- `description` (query, string, optional): Channel Description
- `pricingWorkflowEventId` (query, integer, optional): The ID of the Listing Price & Quantity Workflow for the Channel
- `autoGeneratePoOnImport` (query, boolean, optional): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel
- `listingStatusWorkflowEventId` (query, integer, optional): The ID of the Listing Status Workflow for the Channel
- `primary` (query, boolean, optional): Mark this channel as the primary channel. Will set any existing channels marked as primary to false.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
Success response body, object:
- `name` (string, required): Channel Name
- `description` (string): Channel Description
- `primary` (boolean)
- `listingStrategy` (string (single | best | mli), required): The strategy used to manage listing pricing and quantity on the channel. -`single` = Single Vendor -`best` = Best Vendor
- `pricingStrategy` (string (lowest | average | highest)): Only applicable when `listingStrategy = mli`. Determines how prices should be aggregated or set based on the connected s
- `pricingFactor` (string (total | item), required): Only applicable when `listingStrategy = best`. When comparing costs across sources/vendors should the dropship fee and s
- `pricingMarkup` (string (basic | advanced | none), required): Should basic, advanced, or no pricing controls be applied.
- `quantityAggregation` (boolean): Only applicable when using a pricing strategy of `best`. This denotes that quantity should be aggregated from all releva
- `channelInvoiceReceiptOptionId` (integer)
- `invoiceReceiptAccountCustomAlertId` (integer)
- `paymentCollection` (boolean)
- `channelInvoiceDefaultStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `channelInvoiceCc` (string)
- `pricingWorkflowEventId` (integer): The ID of the Listing Price & Quantity Workflow for the Channel.
- `autoGeneratePoOnImport` (boolean): A setting that enables auto-generation of PO/FRs upon Order Import from the Channel.
- `listingStatusWorkflowEventId` (integer): The ID of the Listing Status Workflow for the Channel.
- `allowBackorder` (boolean)
- `listingBuilderMappingTemplateId` (integer)
- `inStoreOrder` (boolean)
- `listPriceProtection` (boolean): Indicates whether price protection is applied to the listing. When true, the listing will not be eligible to sync to cha
### PUT /channels/{channelId}/settings
Update Channel Settings
This endpoint configures Channel Settings. You must specify either a `handle` or `settingId` to associate settings. If a passed setting has not been configured yet, this will associate a `value` (i.e. configure that setting). If a passed setting has already been configured, this will overwrite the previous `value`.
- Operation id: `putChannelSettings`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/channel/putchannelsettings
Request body (application/json), array of object:
- `value` (string, required): The `value` of a `Setting`
- `handle` (string): The handle of a `Setting`
- `settingId` (integer): The `Setting` ID
Responses:
- `200`: OK
- `401`: Unauthorized
---
## Connection
6 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/connection
### POST /connections
Create Connection
Endpoint to create a Connection. Requires Account-level privileges.
- Operation id: `postConnection`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/connection/postconnection
Request body (application/json), object:
- `connectionType` (string)
- `name` (string)
- `configs` (array of object)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `id` (integer)
- `connectionType` (string)
- `connectionTypeId` (integer)
- `connectionTypeName` (string)
- `requiresConnectionToTest` (boolean)
- `name` (string)
- `configs` (array of object)
### GET /connections/available-configs
Get Available Connection Configs
Endpoint to retrieve back a list of available connection configs based on the connection type. Requires Account-level privileges.
- Operation id: `getConnectionAvailableTypeConfigs`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/connection/getconnectionavailabletypeconfigs
Query parameters:
- `handle` (query, string, required): The connection type handle
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `handle` (string)
- `name` (string)
- `required` (boolean)
- `editable` (boolean)
- `dataType` (string)
- `defaultValue` (string)
- `options` (array of object)
- `advanced` (boolean)
- `value` (string)
- `hidden` (boolean)
- `description` (string)
- `sortOrder` (integer)
### GET /connections/{id}
Get Connection
Endpoint to retrieve back a Connection by ID. Requires Account-level privileges.
- Operation id: `getConnectionById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/connection/getconnectionbyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Connection Not Found
Success response body, object:
- `id` (integer)
- `connectionType` (string)
- `connectionTypeId` (integer)
- `connectionTypeName` (string)
- `requiresConnectionToTest` (boolean)
- `name` (string)
- `configs` (array of object)
### GET /connections/types
Get Connection Types
Endpoint to retrieve back a list of connection types. Requires Account-level privileges.
- Operation id: `getConnectionTypes`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/connection/getconnectiontypes
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `name` (string)
- `handle` (string)
### GET /connections
Get Connections
Endpoint to retrieve back a list of Connections. Requires Account-level privileges.
- Operation id: `getConnections`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/connection/getconnections
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `connectionType` (string)
- `connectionTypeId` (integer)
- `connectionTypeName` (string)
- `requiresConnectionToTest` (boolean)
- `name` (string)
- `configs` (array of object)
### PUT /connections/{id}
Update Connection
Endpoint to update an existing Connection. Requires Account-level privileges.
- Operation id: `putConnectionById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/connection/putconnectionbyid
Request body (application/json), object:
- `connectionType` (string)
- `name` (string)
- `configs` (array of object)
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Connection Not Found
Success response body, object:
- `id` (integer)
- `connectionType` (string)
- `connectionTypeId` (integer)
- `connectionTypeName` (string)
- `requiresConnectionToTest` (boolean)
- `name` (string)
- `configs` (array of object)
---
## Fulfillment Request
18 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request
### PATCH /fulfillment-requests/{fulfillmentRequestId}/acknowledge
Acknowledge Fulfillment Request
Acknowledge all Fulfillment Request Line item quantities which are not already acknowledged/canceled
- Operation id: `acknowledgeAllFulfillmentRequestItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/acknowledgeallfulfillmentrequestitems
Request body (application/json), object:
- `confirmationNumber` (string)
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### PATCH /fulfillment-requests/{fulfillmentRequestId}/committed-stock
Adjust Applicable Committed Stock
This endpoint will intelligently reconcile and adjust/release all applicable committed stock for the Fulfillment Request. The cases in which these occurr are as follows : - Shipments : Will automatically release any committed stock for associated shipments that have not yet had their shipped quantity released. - Canceled & Voided : Will automatically release all committed stock in the case that the Fulfillment Request is now canceled or voided. - Line Item Qty Change : If a Fulfillment Request prior to being processed has any quantities modified this endpoint will reconcile the difference between what is already committed and what was modified and will then either release or add the difference. This endpoint will not double/over release when interacted with multiple times (it's idempotent). This makes it safe to call even if you are unsure of whether or not all stock has been appropriately released.
- Operation id: `adjustApplicableCommittedStockForFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/adjustapplicablecommittedstockforfulfillmentrequest
Responses:
- `200`: OK
- `204`: No Content
- `401`: Unauthorized
- `404`: Not Found
### POST /fulfillment-requests/{fulfillmentRequestId}/adjust
Adjust Fulfillment Request
This endpoint allows for partial acknowledgements and/or cancellations by specifying items.
- Operation id: `adjustFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/adjustfulfillmentrequest
Request body (application/json), object:
- `items` (array of object)
- `killOrFillType` (string (fill | kill)): `killOrFillType` can be either `fill` Or `kill`. By default it will be `fill`. - `fill` : This will unallocate the quant
- `cancelUnacknowledgedItemQuantity` (boolean): Indicate whether or not remaining unacknowledged quantity should be canceled. Passing a `null` value here will use the e
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### PATCH /fulfillment-requests/{fulfillmentRequestId}/cancel
Cancel Fulfillment Request
Cancels all Fulfillment Request Line item quantities which are not already acknowledged/canceled
- Operation id: `cancelAllFRItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/cancelallfritems
Query parameters:
- `killOrFillType` (query, string, optional): `killOrFillType` can be either `fill` Or `kill`. By default it will be `fill`. `fill` : This will unallocate the quantities from the order item level so that another Fulfillment Request can be generated for alternative fulfillment. `kill` : This will cancel the quantities at the order item level indicating no further fulfillment should occur.
- `cancelReason` (query, string, optional): use this to state the reason for cancel
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### POST /fulfillment-requests/{fulfillmentRequestId}/committed-stock
Commit Stock For Fulfillment Request
Commit Stock for fulfillment request
- Operation id: `commitStockForFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/commitstockforfulfillmentrequest
Responses:
- `200`: OK
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
### POST /fulfillment-requests
Create Fulfillment Request
This endpoint creates a Fulfillment Request (FR)! Fulfillment Requests can be created by using an Account token. A `sourceId` is required to create a Purchase Order. Fulfillment Request Items are associated to `Order Items` by `orderItemId`. Fulfillment Request Items are associated to `Inventory` by `sku` or `inventoryVariantId`. For more information, see the `item` request details below. When an Fulfillment Request is created, it will : - Estimate Shipping Costs (via Workflow or Rate Shopping) - Estimate Dropship Fees (via Workflow) - Run `PO/FR Strategy` settings (Auto Processing, PO Workflow, PO # Utilities, etc.) For more information about Fulfillment Requests, see our docs : https://docs.flxpoint.com/flxpoint/purchase-orders-fulfillment-requests
- Operation id: `createFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/createfulfillmentrequest
Request body (application/json), object:
- `fulfillmentRequestNumber` (string): A unique identifier that will be passed to your source to identify the FR. If one is not provided the default account &
- `fulfillmentRequestType` (string (PO | FR | TO | SPO | FO)): The type of PO : - Purchase Order (PO) - Fulfillment Request (FR) [Deprecated - use Fulfillment Order instead] - Transfe
- `fulfillmentRequestStatus` (string (unprocessed | processing | processed | acknowledged | voided | canceled | po_number_exceeds_max_length | duplicate)): Leave `null` to let Flxpoint handle via Workflow rules (PO Strategy settings). A `non-null` status will by-pass any PO S
- `orderId` (integer, required): The flxpoint ID of the order this PO is for
- `sourceId` (integer, required): The flxpoint source ID the PO should be fulfilled to
- `shippingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `billingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `shippingText` (string): Deprecated
- `note` (string): A note that can optionally be passed through all the way to the source
- `totalCost` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `suppressTracking` (boolean): If set to true shipments for this PO will not be propagated to the originating channel order via sync order operations i
- `fflInfoRequired` (boolean): Set to true to indicate that the PO contains items that are firearms and will require valid FFL license information befo
- `holdUntil` (string): If passed the PO will not be processed via automated flxpoint operations until a time older than the value passed
- `rateShoppedId` (string): Used by internal flxpoint processes to track third party rate shopping responses
- `packageDimensionUnit` (string (inch | centimeter)): used to specify the unit of measurement being used by packageLength, packageHeight, packageWidth. Currently our system s
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (string (pound | ounce | gram | kilogram)): used to specify the unit of measurement being used by packageWeight. Currently our system supports 'pound', 'ounce', 'gr
- `packageWeight` (number)
- `crossDockPurchaseOrderId` (integer): Establish this PO as part of a cross docking request by providing the cross dock PO ID
- `fulfillmentRequestItems` (array of object, required)
- `fulfillmentRequestAttributes` (array of object): if there is a requirement to associate some extra information with the purchase order, it can be done by passing an arra
- `sourceShippingMethodId` (integer): The ID of the method you intend for the source to ship the PO via. You are required to configure these yourself on your
- `shippingDistance` (number): Leave `null` for Flxpoint to calculate shipping distance. If a `non-null` value is passed, Flxpoint will not calculate s
Responses:
- `201`: Created
- `400`: Bad Request
- `401`: Unauthorized
- `409`: PO Number is already in use.
Success response body, object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### PATCH /fulfillment-requests/{fulfillmentRequestId}/processing-failed
Fail Fulfillment Request
Update Fulfillment Request as failed during processing.
Only a fulfillment request in processing status `Processing` or `Processed` can be updated as `Failed`.
It will then transition into processing status `Processing Error`.
- Operation id: `failFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/failfulfillmentrequest
Query parameters:
- `error` (query, string, required): reason why processing failed
Responses:
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### PATCH /fulfillment-requests/{fulfillmentRequestId}/generate-packing-slip
Generate Packing Slip
- Operation id: `generatePackingSlip`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/generatepackingslip
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### GET /fulfillment-requests/{fulfillmentRequestId}/committed-stock
Get Committed Stock For Fulfillment Request
Get committed stock for a fulfillment request
- Operation id: `getCommittedStockForFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/getcommittedstockforfulfillmentrequest
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `inventoryVariantId` (integer)
- `sourceId` (integer)
- `purchaseOrderId` (integer)
- `purchaseOrderItemId` (integer)
- `quantity` (integer)
- `purchaseOrderItemQuantity` (integer): this is set equal to purchase order item quantity. This is used to compare with purchase order item quantity and figure
- `committedAt` (string)
- `updatedAt` (string)
### GET /fulfillment-requests/count
Get Count of Fulfillment Requests
This endpoint will get a count of Fulfillment Requests applicable to your filters
- Operation id: `getFulfillmentRequestsCount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/getfulfillmentrequestscount
Query parameters:
- `findOrderId` (query, integer, optional): Filter Fulfillment Requests by Order ID.
- `sinceId` (query, integer, optional): If passed, returns results with an ID greater than this.
- `fulfillmentRequestNumbers` (query, array of string, optional): Finds elements matching these Fulfillment Request Numbers. Max 50
- `filterSourceId` (query, integer, optional): Filter Fulfillment Requests by Source ID.
- `filterFulfilmentStatus` (query, string, optional): Filter Fulfillment Requests by Fulfillment Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterInvoiced` (query, boolean, optional): Filter Fulfillment Requests that have source invoice available.
- `filterStatus` (query, string, optional): Filter Fulfillment Requests by Fulfillment Request Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterIsAcknowledged` (query, boolean, optional): Filter Fulfillment Requests based on whether or they were acknowledged (true returns only acknowledged, false only those that are not acknowledged).
- `filterAcknowledgedAfter` (query, string, optional): Filter Fulfillment Requests that were acknowledged after this date-time.
- `filterIsSent` (query, boolean, optional): Filter Fulfillment Requests based on whether or they have been sent to the source (true returns only those that have been sent, false only those that have not yet been sent).
- `filterSentAfter` (query, string, optional): Filter Fulfillment Requests that were sent after this date-time.
- `filterGeneratedAfter` (query, string, optional): Filter Fulfillment Requests that were generated after this date-time.
- `filterIsCanceled` (query, boolean, optional): Filter Fulfillment Requests based on whether or they were canceled (true returns only canceled, false only those that are not canceled).
- `filterCanceledAfter` (query, string, optional): Filter Fulfillment Requests that were canceled after this date-time.
- `filterIsVoided` (query, boolean, optional): Filter Fulfillment Requests based on whether or they were voided (true returns only voided, false only those that are not voided).
- `filterVoidedAfter` (query, string, optional): Filter Fulfillment Requests that were voided after this date-time.
- `filterIsHeld` (query, boolean, optional): Filter Fulfillment Requests based on whether or they are being held (true returns only held, false only those that are not held).
- `filterHasError` (query, boolean, optional): Filter Fulfillment Requests based on whether or they have a processing error (true returns only those with errors, false only those without errors).
- `filterEligibleForProcessing` (query, boolean, optional): Filters Fulfillment Requests based on whether the order it related to is Open/Not Managed (true returns only if the order it is related to is Open/Not Managed, false does not filter PO based on order status).
- `filterPurchaseOrderTypeIds` (query, array of integer, optional): Filter Purchase Orders by type id, using ids from the PurchaseOrderType Enum.
- `isPurchaseOrderAccountingSynced` (query, boolean, optional): Filter to only include Purchase Orders that have been synced to an Accounting Integration.
- `isOrderAccountingSynced` (query, boolean, optional): Filter to only include those created for Orders that have been synced to an Accounting Integration. Does not relate to the whether or not the Purchase Order has been synced.
- `hasAccountingError` (query, boolean, optional): Filter to include Purchase Orders based on whether or not they have a previous error saved while sending to an Accounting Integration
- `filterOrderInvoiced` (query, boolean, optional): Filter to only include those created for Orders that have invoices. Does not relate to the whether or not the Purchase Order has been invoiced.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `count` (integer, required)
### GET /fulfillment-requests/{fulfillmentRequestId}
Get Fulfillment Request
- Operation id: `getFulfillmentRequestById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/getfulfillmentrequestbyid
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### GET /fulfillment-requests/processing
Get Fulfillment Request In Processing
This endpoint will retrieve a list of Fulfillment Requests AND `Update the Fulfillment Requests to Processed` NOTE : This means, if our API times out for you - those Fulfillment Requests may transition into a "Processed" state despite you not receiving them. It's not recommended to use this endpoint, and it may be deprecated in the near future. We'd recommend using `GET /fulfillment-requests` to retrieve and `PATCH /fulfillment-requests/{fulfillmentRequestId}/acknowledge` to respond
- Operation id: `getFulfillmentRequestsInProcessingAndTransitionThemToProcessed`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/getfulfillmentrequestsinprocessingandtransitionthemtoprocessed
Query parameters:
- `filterSourceId` (query, integer, optional): filter Fulfillment Request by Source ID
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### GET /fulfillment-requests
Get Fulfillment Requests
This endpoint will retrieve back Fulfillment Requests. Fulfillment Requests can be retrieved using an Account or Source token. If an Account Token is used, eligible Fulfillment Requests for the account will be fetched. With a source token, Fulfillment Requests for the source can only be retrieved. All filter parameters are optional. Passing a null or an empty value will ignore filtering for the specified conditions.
- Operation id: `getFulfillmentRequests`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/getfulfillmentrequests
Query parameters:
- `findOrderId` (query, integer, optional): Filter Fulfillment Requests by Order ID.
- `sinceId` (query, integer, optional): If passed, returns results with an ID greater than this.
- `poNumbers` (query, array of string, optional): deprecated use `frNumbers`. Finds elements matching these Fulfillment Request Numbers. Max 50
- `frNumbers` (query, array of string, optional): Finds elements matching these Fulfillment Request Numbers. Max 50
- `filterSourceId` (query, integer, optional): Filter Fulfillment Requests by Source ID.
- `filterFulfilmentStatus` (query, string (Awaiting Shipment | Shipped | Partially Shipped | Canceled), optional): Filter Fulfillment Requests by Fulfillment "Shipped" Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterInvoiced` (query, boolean, optional): Filter Fulfillment Requests that have source invoice available.
- `filterPageNumber` (query, integer, optional): Current Page
- `filterPageSize` (query, integer, optional): Number of entries per page
- `filterStatus` (query, string (Unprocessed | Processed | Acknowledged | Canceled | Failed | Voided | Processing | Additional Info Required), optional): Filter Fulfillment Requests by Fulfillment Requests Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterIsAcknowledged` (query, boolean, optional): Filters Fulfillment Requests based on whether or they were acknowledged (true returns only acknowledged, false only those that are not acknowledged).
- `filterAcknowledgedAfter` (query, string, optional): Filter Fulfillment Requests that were acknowledged after this date-time.
- `filterIsSent` (query, boolean, optional): Filters Fulfillment Requests based on whether or they have been sent to the source (true returns only those that have been sent, false only those that have not yet been sent).
- `filterSentAfter` (query, string, optional): Filter Fulfillment Requests that were sent from Flxpoint to the source after this date-time. FRs processed outside of Flxpoint will most likely not have a time set.
- `filterGeneratedAfter` (query, string, optional): Filter Fulfillment Requests that were generated after this date-time.
- `filterIsCanceled` (query, boolean, optional): Filters Fulfillment Requests based on whether or they were canceled (true returns only canceled, false only those that are not canceled).
- `filterCanceledAfter` (query, string, optional): Filters Fulfillment Requests that were canceled after this date-time.
- `filterIsVoided` (query, boolean, optional): Filters Fulfillment Requests based on whether or they were voided (true returns only voided, false only those that are not voided).
- `filterVoidedAfter` (query, string, optional): Filters Fulfillment Requests that were voided after this date-time.
- `filterIsHeld` (query, boolean, optional): Filters Fulfillment Requests based on whether or not they are held. When `true` is passed, it retrieves Fulfillment Requests that have hold until time set. When `false` is passed, it retrieves Fulfillment Requests that have no hold until time set or ones whose hold until time has elapsed (current time is after the `hold until` time)
- `filterHasError` (query, boolean, optional): Filters Fulfillment Requests based on whether or they have a processing error (true returns only those with errors, false only those without errors).
- `filterEligibleForProcessing` (query, boolean, optional): Use this to filter Fulfillment Requests that are eligible for processing. Passing true will return FRs only where the related order (if applicable) is in Open or Not Managed status and the FR is in Unprocessed status. Passing false will return FRs where the order (if applicable) is not in either of those statuses, or if so the FR has been transitioned out of Unprocessed status. Passing "null" or an empty value will not filter FRs based on order or FR status.
- `filterPurchaseOrderTypeIds` (query, array of integer, optional): deprecated use `filterFulfillmentRequestType` Filter Fulfillment Requests by type id, using ids from the PurchaseOrderType Enum.
- `filterFulfillmentRequestType` (query, array of string, optional): Filter Fulfillment Requests by Type, Accepts a comma-separated list to filter on multiple types at once.
- `isPurchaseOrderAccountingSynced` (query, boolean, optional): deprecated use `isFulfillmentRequestAccountingSynced`. Filter to only include or exclude Fulfillment Requests that have been synced to an Accounting Integration.
- `isFulfillmentRequestAccountingSynced` (query, boolean, optional): Filter to only include or exclude Fulfillment Requests that have been synced to an Accounting Integration
- `isOrderAccountingSynced` (query, boolean, optional): Filter to only include or exclude those created for Orders that have been synced to an Accounting Integration. Does not relate to the whether or not the Fulfillment Requests has been synced.
- `hasAccountingError` (query, boolean, optional): Filter to include or exclude Fulfillment Requests based on whether or not they have a previous error saved while sending to an Accounting Integration
- `filterOrderInvoiced` (query, boolean, optional): Filter to only include or exclude those created for Orders that have invoices. Does not relate to the whether or not the Fulfillment Requests has been invoiced.
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
- `hasTag` (query, string, optional): Only returns Fulfillment Requests that have the matching tag
- `filterStockCommitted` (query, boolean, optional): Filter Fulfillment Requests that have stock committed.
- `filterOrderStatus` (query, string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed), optional): Only returns Fulfillment Requests associated with orders that have the matching status.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
### PATCH /fulfillment-requests/{fulfillmentRequestId}/processed
Process Fulfillment Request
Update a Fulfillment Request as `Processed`.
Only Fulfillment Requests in `Processing` status can be transitioned to `Processed`. If the Fulfillment Request is already in `Processed` status, a 200 (OK) response will be returned.
- Operation id: `processFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/processfulfillmentrequest
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### DELETE /fulfillment-requests/{fulfillmentRequestId}/committed-stock
Release All Committed Stock For Fulfillment Request
Release committed stock for fulfillment request
- Operation id: `releaseAllCommittedStockForFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/releaseallcommittedstockforfulfillmentrequest
Request body (application/json), object:
- `onlyReleaseFulfillmentRequestItemIds` (array of integer): List of fulfillment request item IDs to release
- `onlyReleaseFulfillmentRequestItemSkus` (array of string): List of fulfillment request item SKUs to release
Responses:
- `200`: OK
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
### PATCH /fulfillment-requests/{fulfillmentRequestId}/processing
Start Processing Fulfillment Request
Transition a Fulfillment Request into `Processing` status. This is the API equivalent of the **Process** action in the Flxpoint UI.
Only Fulfillment Requests in `Unprocessed` status can be transitioned to `Processing`. Any other status is rejected with a 400 (Bad Request). If the Fulfillment Request is already in `Processing` status, a 200 (OK) response will be returned. Fulfillment Requests whose supplier is configured to send Fulfillment Requests from the Vendor Portal are rejected with a 400 (Bad Request), because those are transitioned directly to `Processed` when processed. Not to be confused with **Process Fulfillment Request** (`processFulfillmentRequest`), which transitions `Processing` to `Processed`.
- Operation id: `startProcessingFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/startprocessingfulfillmentrequest
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### PATCH /fulfillment-requests/{fulfillmentRequestId}/accounting-sync
Sync Accounting
Update Fulfillment Request as synced to external system
- Operation id: `syncFulfillmentRequestForAccounting`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/syncfulfillmentrequestforaccounting
Request body (application/json), object:
- `accountingSynced` (boolean): specify whether or not it was synced to the external system
- `externalAccountingId` (string): identfier in the external system that identifies this Fulfillment Request
- `accountingError` (string): any error encountered in syncing this `Fulfillment Request` to the external system
- `items` (array of object): list of `Fulfillment Request Items` synced in the external accounting system
Responses:
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### PUT /fulfillment-requests/{id}
Update Fulfillment Request
This endpoint updates a Fulfillment Request (FR).
- Operation id: `updateFulfillmentRequest`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/fulfillment-request/updatefulfillmentrequest
Request body (application/json), object:
- `fulfillmentRequestNumber` (string): A unique identifier that will be passed to your source to identify the FR. If one is not provided the default account &
- `sourceId` (integer, required): The flxpoint source ID the PO should be fulfilled to
- `shippingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `billingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `note` (string): A note that can optionally be passed through all the way to the source
- `totalCost` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `suppressTracking` (boolean): If set to true shipments for this PO will not be propagated to the originating channel order via sync order operations i
- `fflInfoRequired` (boolean): Set to true to indicate that the PO contains items that are firearms and will require valid FFL license information befo
- `holdUntil` (string): If passed the PO will not be processed via automated flxpoint operations until a time older than the value passed
- `packageDimensionUnit` (string (inch | centimeter)): used to specify the unit of measurement being used by packageLength, packageHeight, packageWidth. Currently our system s
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (string (pound | ounce | gram | kilogram)): used to specify the unit of measurement being used by packageWeight. Currently our system supports 'pound', 'ounce', 'gr
- `packageWeight` (number)
- `fulfillmentRequestItems` (array of object, required)
- `fulfillmentRequestAttributes` (array of object): Meta data in the form of key-value pairs.
- `sourceShippingMethodId` (integer): The ID of the method you intend for the source to ship the PO via. You are required to configure these yourself on your
- `shippingDistance` (number): Leave `null` for Flxpoint to calculate shipping distance. If a `non-null` value is passed, Flxpoint will not calculate s
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
Responses:
- `200`: Updated
- `400`: Bad Request
- `401`: Unauthorized
- `404`: FR does not exist
Success response body, object:
- `id` (integer): A unique identifier for the fulfillment request.
- `fulfillmentRequestNumber` (string)
- `orderId` (integer): The unique identifier for the order associated with the fulfillment request. This field is used to link the fulfillment
- `sentAt` (string): The date and time when it was sent to the supplier
- `sourceId` (integer): Unique identifier of the source which will fulfill this Fulfillment Request.
- `acknowledgedAt` (string): The acknowledgedAt field refers to the date and time when a vendor or supplier that is responsible for fulfilling the or
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string): The date and time when the fulfillment request was canceled.
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string): A unique identifier returned from the source for indicating receipt and identifying the Fulfillment Request once it has
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `fulfillmentRequestStatus` (object)
- `fulfillmentRequestFulfillmentStatus` (object)
- `generatedAt` (string): The date and time when this Fulfillment Request was generated.
- `voidedAt` (string): The date and time when this Fulfillment Request was voided.
- `accountId` (integer)
- `totalItems` (integer): Total Number of Fulfillment Request Items.
- `totalCost` (number): Total cost of the Fulfillment Request Items
- `totalQuantity` (integer): Total quantity of the Fulfillment Request Items.
- `shippedQuantity` (integer): Total quantity of the Fulfillment Request Items that has been shipped.
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean): Indicates whether or not tracking information should be suppressed for the associated fulfillment request. If this field
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 28 more fields, see the docs page
---
## Inbound Shipments
3 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/inbound-shipments
### PATCH /inbound-shipments/{id}/receive
Fully Receive Inbound Shipment
Fully receive all items
- Operation id: `fullyReceiveInboundShipment`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inbound-shipments/fullyreceiveinboundshipment
Query parameters:
- `updateInventoryOnceReceived` (query, boolean, optional): Update inventory after receiving shipment
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### GET /inbound-shipments
Get Inbound Shipments
This endpoint allows you to get a list of ”inbound”, shipments from Stocking Purchase Orders and Transfer Orders.
Use the source token or an account token along with the sourceId to see the inbound shipments going to that source.
- Operation id: `getInboundShipments`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inbound-shipments/getinboundshipments
Query parameters:
- `sourceId` (query, integer, optional): This field will automatically be populated if you are using a Source API Token. If you are using an Account API Token, this field is required.
- `receivedStatus` (query, string (awaiting_to_receive | partially_received | received | voided), optional): status string signifying how much restocking has been done
- `shippedStatus` (query, string (not_started | partially_completed | completed), optional): status string to filter inbound shipments on the basis of their shipped status
- `createdAfter` (query, string, optional): Filters down to Inbound Shipments that have been created after this timestamp. (Timestamp in UTC)
- `page` (query, integer, optional): if not specified, defaults to: 1
- `pageSize` (query, integer, optional): If not provided, this field will be defaulted to "20"
- `sourceName` (query, string, optional): filter inbound shipments on the basis of source name. If sourceId and sourceName, both are provided, preference will be give to sourceId
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sourceId` (integer)
- `generatedAt` (string)
- `sentAt` (string)
- `acknowledgedAt` (string)
- `voidedAt` (string)
- `canceledAt` (string)
- `lastModifiedAt` (string)
- `shippingAddress` (object)
- `shippingAddressId` (integer)
- `billingAddress` (object)
- `billingAddressId` (integer)
- `note` (string): A note that can optionally be passed through all the way to the source
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderReceivedStatus` (object)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `beingProcessed` (boolean)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- `packageWeight` (number)
- `voidedReason` (string)
- `processingErrorReason` (string): The reason this purchase order could not be processed
- `cancelReason` (string)
- `items` (array of object)
- `purchaseOrderAttributes` (array of object)
- `shipments` (array of object)
- `sourceName` (string)
### POST /inbound-shipments/{id}/receive
Partially Receive Inbound Shipment
Partially receive items
- Operation id: `partiallyReceiveInboundShipment`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inbound-shipments/partiallyreceiveinboundshipment
Query parameters:
- `updateInventoryOnceReceived` (query, boolean, optional): Update inventory after receiving shipment
Request body (application/json), object:
- `purchaseOrderId` (integer, required)
- `items` (array of object, required)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
---
## Inventory
14 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/inventory
### POST /inventory
[Deprecated] Create/Update Inventory
Create or update up to 20 parents with variants at a time. This endpoint performs a full update of all data passed. This means any null/missing values provided will also be updated. For updating just variants (that already exist) with new prices/quantities see the `PUT Inventory Variants` endpoint.
**Deprecated.**
- Operation id: `postInventory`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/postinventory
Request body (application/json), array of object:
- `sourceId` (integer): Only required to be passed if you are using an account token type
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `archived` (boolean)
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOne` (string)
- `categoryTwo` (string)
- `categoryThree` (string)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer): If the parent was created or updated this will be populated. If the parent did not exist and failed to be created this w
- `sku` (string)
- `success` (boolean): Whether or not the parent was successfully created/updated. If this is false the `errors` property will contain informat
- `errors` (array of object)
- `variants` (array of object)
### GET /inventory/variant/{variantId}/pair
[Deprecated] Get Inventory Pair
Deprecated - recommended to use `/inventory/variants` endpoints with `includeParent`
**Deprecated.**
- Operation id: `getInventoryVariantPairByVariantId`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/getinventoryvariantpairbyvariantid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `parent` (object, required)
- `variant` (object, required)
### GET /inventory/{parentId}/{variantId}
[Deprecated] Get Inventory Pair
Deprecated, use `/inventory/variant/{variantId}` with `includeParent`
**Deprecated.**
- Operation id: `getInventoryPair`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/getinventorypair
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `parent` (object, required)
- `variant` (object, required)
### GET /inventory/{sourceId}/parent
[Deprecated] Get Inventory Parent
**Deprecated.**
- Operation id: `getInventoryParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/getinventoryparent
Query parameters:
- `findBySku` (query, string, optional): Find a parent/variant by SKU
- `findById` (query, integer, optional): Find a variant/parent by ID
- `includeVariants` (query, boolean, optional): Include variants for the parent
Responses:
- `200`: OK
- `400`: If neither `findBySku` or `findById` is passed.
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `sourceId` (integer)
- `restricted` (boolean)
- `variantCount` (integer)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object)
- `categoryTwo` (object)
- `categoryThree` (object)
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `contentUpdatedAt` (string)
- `lastArchivedAt` (string)
- `lastUnarchivedAt` (string)
### GET /inventory/{sourceId}/variant
[Deprecated] Get Inventory Variant
Deprecated. Use `GET /inventory/variant/{variantId}` to find by ID or `GET /inventory/variants` with `findBySKUs`
**Deprecated.**
- Operation id: `getInventoryVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/getinventoryvariant
Query parameters:
- `findBySku` (query, string, optional): Find a parent/variant by SKU
- `findById` (query, integer, optional): Find a variant by ID
- `includeParent` (query, boolean, optional): If "true" is passed, the "parent" node will be populated with Inventory Parent information. NOTE : The "variants" will be empty in this node to prevent circular references.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "parent.customFields" node will be populated.
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates" node will not be populated.
Responses:
- `200`: OK
- `400`: If neither `findBySku` or `findById` is passed.
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `sourceId` (integer)
- `inventoryParentId` (integer)
- `supplierVariantId` (string)
- `shippingCost` (number)
- `dropshipFee` (number)
- `inventoryListPrice` (number)
- `referenceIdentifier` (string)
- `inventoryVariantId` (string)
- `committedQuantity` (integer)
- `incomingQuantity` (integer)
- `quantity` (integer)
- `totalQuantity` (integer)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `masterSku` (string): If available from your data source populate with your primary product master SKU to enable easily linking to your existi
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `totalQuantityLastChangedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `customAggregateFields` (array of object)
- `parent` (object)
- `linkedProductVariants` (array of object)
- ...and 9 more fields, see the docs page
### GET /inventory/search/variant
[Deprecated] Search Inventory Variants
Deprecated, please use GET /inventory/variants
**Deprecated.**
- Operation id: `listInventoryVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/listinventoryvariants
Query parameters:
- `filterSourceId` (query, integer, optional): ID of source whose inventory is required
- `filterUpdatedAfter` (query, string, optional): Retrieve inventory variants updated after this date
- `filterPageNumber` (query, integer, optional): Current Page
- `filterPageSize` (query, integer, optional): Number of entries per page
- `filterByInventoryVariantIds` (query, string, optional): Inventory variant IDs separated by a comma
- `filterBySkus` (query, array of string, optional): A list of Inventory Variant SKUs to filter on. Max must be less than or equal to filterPageSize. Recommended to not include full metadata while using this. This will work in conjunction with the other `filter` params EXCEPT `filterByIds`.
- `ids` (query, array of integer, optional): Finds elements matching these IDs. Max must be less than or equal to filterPageSize.
- `includeParent` (query, boolean, optional): If "true" is passed, the "parent" node will be populated with Inventory Parent information. NOTE : The "variants" will be empty in this node to prevent circular references.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "parent.customFields" node will be populated.
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates" node will not be populated.
- `includeLinkedProductVariants` (query, boolean, optional): If "false" is passed, the "linkedProductvariants" node will not be populated.
- `filterNeedsDeleting` (query, boolean, optional): If "true" is passed, it will return inventory variants which are scheduled to delete.
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `sourceId` (integer)
- `inventoryParentId` (integer)
- `supplierVariantId` (string)
- `shippingCost` (number)
- `dropshipFee` (number)
- `inventoryListPrice` (number)
- `referenceIdentifier` (string)
- `inventoryVariantId` (string)
- `committedQuantity` (integer)
- `incomingQuantity` (integer)
- `quantity` (integer)
- `totalQuantity` (integer)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `masterSku` (string): If available from your data source populate with your primary product master SKU to enable easily linking to your existi
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `totalQuantityLastChangedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `customAggregateFields` (array of object)
- `parent` (object)
- `linkedProductVariants` (array of object)
- ...and 9 more fields, see the docs page
### POST /inventory/parents
Create/Update Inventory
Create or update up to 20 parents with variants at a time. This endpoint performs a full update of all data passed. Excluded fields will remain unchanged. This means that explicitly passing null for 'title' will null out title, but skipping passing any json for 'title' will preserve the previous value. For updating just variants (that already exist) with new prices/quantities see the `PUT Inventory Variants` endpoint.
- Operation id: `modifyInventory`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/modifyinventory
Query parameters:
- `modifyParentOptions` (query, string (none | replace | merge | deleteIncluded), optional): Should options of the parent be modified
- `modifyVariantOptions` (query, string (none | replace | merge | deleteIncluded), optional): Should options of the variant be modified
- `modifyParentImages` (query, string (none | replace | merge | deleteIncluded), optional): Should images of the parent be modified
- `modifyVariantImages` (query, string (none | replace | merge | deleteIncluded), optional): Should images of the variant be modified
- `modifyParentCustomFields` (query, string (none | replace | merge | deleteIncluded), optional): Should custom fields of the parent be modified
- `modifyVariantCustomFields` (query, string (none | replace | merge | deleteIncluded), optional): Should custom fields of the variant be modified
- `modifyVariantCustomAggregateFields` (query, string (none | replace | merge | deleteIncluded), optional): Should custom aggregate fields of the variant be modified
- `modifyAttributes` (query, string (none | replace | merge | deleteIncluded), optional): Should attributes be modified
Request body (application/json), array of object:
- `sourceId` (integer): Only required to be passed if you are using an account token type
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `archived` (boolean)
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOne` (string)
- `categoryTwo` (string)
- `categoryThree` (string)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer): If the parent was created or updated this will be populated. If the parent did not exist and failed to be created this w
- `sku` (string)
- `success` (boolean): Whether or not the parent was successfully created/updated. If this is false the `errors` property will contain informat
- `result` (string (new | changed | unchanged | archived))
- `parentOptionsResult` (object)
- `parentImagesResult` (object)
- `parentCustomFieldsResult` (object)
- `parentAttributesResult` (object)
- `variants` (array of object)
- `errors` (array of object)
### DELETE /inventory/parent/{parentId}
Delete Inventory Parent
Endpoint to delete parent inventory and all of its variants.
- Operation id: `deleteInventoryParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/deleteinventoryparent
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
- `409`: Conflict
Success response body, object:
- `numberOfInventoryVariantsDeleted` (integer)
- `numberOfInventoryParentsDeleted` (integer)
### DELETE /inventory/variant/{variantId}
Delete Inventory Variant
Endpoint to delete inventory variants.
- Operation id: `deleteInventoryVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/deleteinventoryvariant
Query parameters:
- `deleteParentIfLastVariant` (query, boolean, optional): Delete the parent product if the variant being deleted is the last variant. Default `True`
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
- `409`: Inventory variant is linked to product variant.
Success response body, object:
- `numberOfInventoryVariantsDeleted` (integer)
- `numberOfInventoryParentsDeleted` (integer)
### GET /inventory/variant/{variantId}
Get Inventory Variant
- Operation id: `getInventoryVariantById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/getinventoryvariantbyid
Query parameters:
- `includeParent` (query, boolean, optional): If "true" is passed, the "parent" node will be populated with Parent information. NOTE : The "variants" will be empty in this node to prevent circular references.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" nodes will be populated.
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates"(Fields) node will not be populated. Custom Aggregates are similar to custom fields, but they can be aggregated across multiple sources.
- `includeLinkedProductVariants` (query, boolean, optional): If "false" is passed, the "linkedProductVariants" node will not be populated.
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `sourceId` (integer)
- `inventoryParentId` (integer)
- `supplierVariantId` (string)
- `shippingCost` (number)
- `dropshipFee` (number)
- `inventoryListPrice` (number)
- `referenceIdentifier` (string)
- `inventoryVariantId` (string)
- `committedQuantity` (integer)
- `incomingQuantity` (integer)
- `quantity` (integer)
- `totalQuantity` (integer)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `masterSku` (string): If available from your data source populate with your primary product master SKU to enable easily linking to your existi
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `totalQuantityLastChangedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `customAggregateFields` (array of object)
- `parent` (object)
- `linkedProductVariants` (array of object)
- ...and 9 more fields, see the docs page
### GET /inventory/variants
Get Inventory Variants
This endpoint will fetch back a list of Inventory Variants. If values are provided for both `skus` and `ids` parameters only `ids` will be used.
- Operation id: `getInventoryVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/getinventoryvariants
Query parameters:
- `page` (query, integer, optional): page number
- `pageSize` (query, integer, optional): number of elements per page
- `sourceId` (query, integer, optional): This will be automatically populated for Source API Tokens. Required if using an Account API Token
- `updatedAfter` (query, string, optional): Only retrieves back inventory records that hae been updated after the date specified
- `skus` (query, array of string, optional): Finds elements matching these SKUs. Max must be less than or equal to pageSize.
- `upcs` (query, array of string, optional): Finds elements matching these UPCs. Max must be less than or equal to pageSize.
- `ids` (query, array of integer, optional): Finds elements matching these IDs. Max must be less than or equal to pageSize.
- `includeParent` (query, boolean, optional): If "true" is passed, the "parent" node will be populated with Parent information. NOTE : The "variants" will be empty in this node to prevent circular references.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" nodes will be populated.
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates"(Fields) node will not be populated. Custom Aggregates are similar to custom fields, but they can be aggregated across multiple sources.
- `includeLinkedProductVariants` (query, boolean, optional): If "false" is passed, the "linkedProductVariants" node will not be populated.
- `filterNeedsDeleting` (query, boolean, optional): If "true" is passed, it will return inventory variants which are scheduled to delete.
- `filterArchived` (query, boolean, optional): If "true" is passed, it will return only archived variants. If "false" is passed, only unarchived variants will be returned. The default value of null will return all variants.
- `filterCustomFieldName` (query, string, optional): Filter inventory variants that contain a custom field matching the name provided.
- `filterCustomFieldValue` (query, string, optional): Filter inventory variants that contain a custom field matching the value provided. Must be used in conjunction with a passed value for `filterCustomFieldName`, otherwise a `400` bad request will be returned.
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `sourceId` (integer)
- `inventoryParentId` (integer)
- `supplierVariantId` (string)
- `shippingCost` (number)
- `dropshipFee` (number)
- `inventoryListPrice` (number)
- `referenceIdentifier` (string)
- `inventoryVariantId` (string)
- `committedQuantity` (integer)
- `incomingQuantity` (integer)
- `quantity` (integer)
- `totalQuantity` (integer)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `masterSku` (string): If available from your data source populate with your primary product master SKU to enable easily linking to your existi
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `totalQuantityLastChangedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `customAggregateFields` (array of object)
- `parent` (object)
- `linkedProductVariants` (array of object)
- ...and 9 more fields, see the docs page
### PATCH /inventory/parents/{parentId}/tags
Update Inventory Parent Tags
Adds and/or removes tags on the entity by name. Tags in `add` that do not exist yet are created. Returns the entity's full tag list after the update, sorted alphabetically.
- Operation id: `updateInventoryParentTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/updateinventoryparenttags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
### PATCH /inventory/variants/{variantId}/tags
Update Inventory Variant Tags
Adds and/or removes tags on the entity by name. Tags in `add` that do not exist yet are created. Returns the entity's full tag list after the update, sorted alphabetically.
- Operation id: `updateInventoryVariantTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/updateinventoryvarianttags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
### PUT /inventory/variants
Update Inventory Variants
This endpoint is used to update inventory variants. (Up to 50 in one request)
- Operation id: `updateInventoryVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/inventory/updateinventoryvariants
Query parameters:
- `modifyCost` (query, string (none | update | updateNonNull), optional): Should the cost of the variant be modified
- `modifyMsrp` (query, string (none | update | updateNonNull), optional): Should the MSRP of the variant be modified
- `modifyMap` (query, string (none | update | updateNonNull), optional): Should the MAP of the variant be modified
- `modifyQuantity` (query, string (none | update | updateNonNull), optional): Should the quantity of the variant be modified
- `modifyShippingCost` (query, string (none | update | updateNonNull), optional): Should the shipping cost of the variant be modified
- `modifyDropShipFee` (query, string (none | update | updateNonNull), optional): Should the dropship fee of the variant be modified
- `modifyInventoryListPrice` (query, string (none | update | updateNonNull), optional): Should the inventory list price of the variant be modified
- `modifyAllowBackorders` (query, string (none | update | updateNonNull), optional): Should allow back orders of the variant be modified
- `modifyWeight` (query, string, optional): Should the weight of the variant be modified
- `modifyHeight` (query, string, optional): Should the height of the variant be modified
- `modifyLength` (query, string, optional): Should the length of the variant be modified
- `modifyWidth` (query, string, optional): Should the width of the variant be modified
- `modifyWeightUnit` (query, string, optional): Should the dimension unit of the variant be modified
- `modifyDimensionUnit` (query, string, optional): Should the weight unit of the variant be modified
- `modifyRequiresFfl` (query, string (none | update | updateNonNull), optional): Should the `requiresFfl` field of the variant be modified
- `modifyCustomFields` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should custom fields of the variant be modified
Request body (application/json), array of object:
- `inventoryVariantId` (integer, required)
- `sku` (string, required)
- `cost` (number)
- `msrp` (number)
- `map` (number)
- `quantity` (integer)
- `shippingCost` (number)
- `dropshipFee` (number)
- `inventoryListPrice` (number)
- `allowBackorders` (boolean)
- `customAggregateFieldUpdates` (array of object)
- `archived` (boolean): Optional parameter. Values of null will be treated as no change is requested.
- `weight` (number)
- `height` (number)
- `width` (number)
- `length` (number)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `requiresFfl` (boolean): Indicate if FFL information will be required to fulfill this inventory variant
- `customFields` (array of object)
Responses:
- `200`: OK
- `400`: Bad Request
Success response body, array of object:
- `inventoryVariantId` (integer)
- `sku` (string)
- `success` (boolean): Indicates whether the update was successful
- `message` (string): If the update was unsuccessful this will indicate why
---
## Listing
19 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/listing
### GET /listing/variants/{variantId}/pair
[Deprecated] Get Listing Pair
This endpoint is deprecated. Instead, we'd encourage you to use : `GET /listing/variants/{id}` and pass `includeParent` flag
**Deprecated.**
- Operation id: `getListingPairByVariantId`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingpairbyvariantid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `parent` (object, required)
- `variant` (object, required)
### POST /listing/search/parents
[Deprecated] Search Listing Parents
[Deprecated] Please use `GET /listing/parents`. Lists Listing Variants that meet the input filters
**Deprecated.**
- Operation id: `postListingSearchParents`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/postlistingsearchparents
Query parameters:
- `pageSize` (query, integer, optional): Number of entries per page
- `page` (query, integer, optional)
- `includeAttributes` (query, boolean, optional)
- `includeCategories` (query, boolean, optional)
- `includeImages` (query, boolean, optional)
- `includeOptions` (query, boolean, optional)
- `includeVariants` (query, boolean, optional): When `true` this will include at most 10 variants per parent.
- `includeVariantImages` (query, boolean, optional)
- `includeVariantOptionValues` (query, boolean, optional)
- `includeVariantOverwrites` (query, boolean, optional)
- `includeVariantCustomFields` (query, boolean, optional)
Request body (application/json), object:
- `filterChannelId` (integer)
- `filterParentIds` (array of integer)
- `filterNeedsPublished` (boolean)
- `filterImagesCached` (boolean)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryTwo` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryThree` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `channelId` (integer, required)
- `productParentId` (integer, required)
- `externalListingId` (string)
- `publishError` (string)
- `syncError` (string)
- `staticContentUpdatedAt` (string)
- `staticContentSyncedAt` (string)
- `linkAttemptedAt` (string)
- `listingStatus` (object)
- `changeToListingStatus` (object)
- `pausedAt` (string)
- `scheduledToDeleteAt` (string)
- `tags` (array of string)
- `imageFetcherEventTriggered` (boolean)
### POST /listing/search/variants
[Deprecated] Search Listing Variants
Lists Listing Variants that meet the input filters
**Deprecated.**
- Operation id: `postListingSearchVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/postlistingsearchvariants
Query parameters:
- `pageSize` (query, integer, optional): Number of entries per page
- `page` (query, integer, optional)
- `includeParent` (query, boolean, optional)
- `includeImages` (query, boolean, optional)
- `includeOptionValues` (query, boolean, optional)
- `includeOverwrites` (query, boolean, optional): will include dynamic prices and quantities if they are overwritten with fixed values
- `includeCustomFields` (query, boolean, optional)
Request body (application/json), object:
- `filterChannelId` (integer)
- `filterParentIds` (array of integer)
- `filterVariantIds` (array of integer)
- `filterExternalIds` (array of string)
- `filterProductVariantIds` (array of integer)
- `filterSkus` (array of string)
- `filterUpcs` (array of string)
- `filterMpns` (array of string)
- `filterEans` (array of string)
- `filterAsins` (array of string)
- `filterNeedsSynced` (boolean)
- `filterNeedsDeleting` (boolean)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `listingParentId` (integer)
- `price` (number)
- `salePrice` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `masterSku` (string): Your master SKU is the SKU you use at your central product catalog level that is used as the primary means of identifyin
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `quantity` (integer)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `bundle` (boolean): Indicates if this variant is a bundle. Configured at the product level and unchangeable.
- `channelId` (integer, required)
- `productVariantId` (integer, required)
- ...and 30 more fields, see the docs page
### PATCH /listing/parents
Acknowledge Listing Parents
If you are leveraging the `publish` flag on `GET /listing/parents`, this endpoint allows you to respond to those interactions. If a listing has a `changeToListingStatus` pending and you respond WITHOUT an `error`, Flxpoint will assume the status change worked as intended.
- Operation id: `acknowledgeListingParents`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/acknowledgelistingparents
Request body (application/json), array of object:
- `listingParentId` (integer, required)
- `externalListingId` (string): (Optional) Must be Unique (per channel)! If you are responding to a `publish` operation (meaning, this is a brand new li
- `error` (string): If this field is `null`, we will assume a successful interaction. If an interaction failed, please provide a reason by p
- `variants` (array of object, required)
- `images` (array of object)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
### PATCH /listing/variants
Acknowledge Listing Variants
If you are leveraging the `sync` flag on `GET /listing/variants`, this endpoint allows you to respond to those interactions. If a listing has a `changeToListingStatus` pending and you respond WITHOUT an `error`, Flxpoint will assume the status change worked as intended.
- Operation id: `acknowledgeListingVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/acknowledgelistingvariants
Request body (application/json), array of object:
- `listingVariantId` (integer, required)
- `syncedAt` (string): Timestamp indicating when the listing was synced to the channel. Defaults to the current timestamp if not provided. This
- `error` (string): If this field is `null`, we will assume a successful interaction. If an interaction failed, please provide a reason by p
- `overrideStatus` (object)
- `isLinkedToRegularProduct` (boolean)
Responses:
- `200`: OK
- `401`: Unauthorized
### POST /listing/parents
Create/Update Listing Parent
Create/Update a listing parent
- Operation id: `postListingParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/postlistingparent
Query parameters:
- `restrictCreateOrUpdate` (query, string (createOnly | updateOnly), optional): [Optional] When using a endpoint that can create or update products by SKU, use this parameter to restrict the endpoint to perform only a creation or only an update based on the existence of that SKU. If you pass `createOnly` and the SKU exists nothing will be updated, and if you pass `updateOnly` and the SKU doesn't exist nothing will be created.
- `modifyContent` (query, string (none | update | updateNonNull), optional): Should content fields of the parent/variant be modified
- `modifyOptions` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should options of the parent/variant be modified
- `modifyImages` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should images of the parent/variant be modified
- `modifyAttributes` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should attributes of the parent be modified
- `modifyCustomFields` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should custom fields of the parent be modified
- `modifyCategories` (query, string (none | update | delete), optional): Should categories of the parent be modified
- `modifyPublishData` (query, string (none | update | updateNonNull), optional): Should publish fields (ie `publishError`, `staticContentUpdatedAt`, `staticContentSyncedAt`) of the parent/variant be modified
- `modifyChannelData` (query, string (none | update | updateNonNull), optional): Should channel related fields (ie `externalLIstingId`, `linkAttemptedAt`, `linkedToRegularProduct`, `externalReferenceId`, `externalReferenceIdType`) of the parent/variant be modified
- `modifySyncData` (query, string (none | update | updateNonNull), optional): Should sync fields (ie `syncError`, `dynamicContentUpdatedAt`, `dynamicContentSyncedAt`) of the parent/variant be modified
- `modifyStatusData` (query, string (none | update | updateNonNull), optional): Should status fields (ie `pausedAt`, `listingStatusId`, `changeToListingStatusId`, `scheduledToDeleteAt`) of the parent/variant be modified
- `modifyCategoryAiData` (query, string (none | update | delete), optional): Should category ai data be modified
Request body (application/json), object:
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryTwo` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryThree` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object): DEPRECATED : Variants included in this call will not be updated. You need to use the dedicated variant endpoint to updat
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `channelId` (integer, required)
- `productParentId` (integer, required)
- `externalListingId` (string)
- `publishError` (string)
- `syncError` (string)
- `staticContentUpdatedAt` (string)
- `staticContentSyncedAt` (string)
- `linkAttemptedAt` (string)
- `listingStatus` (object)
- `changeToListingStatus` (object)
- `pausedAt` (string)
Responses:
- `200`: OK - Existing parent was updated OR the `restrictCreateOrUpdate` param was provided with a value of `createOnly` and the parent already existed in which case nothing was modified and the existing parent will be returned.
- `201`: CREATED - A new parent was created
- `204`: NO CONTENT - Only possible when using the `restrictCreateOrUpdate = updateOnly` param and the parent listing does not exist. This will return an empty/null response body.
- `400`: When a invalid data condition is provided
- `401`: Unauthorized
- `409`: Conflict - If the SKU provided already exists on a different parent a conflict will be returned
Success response body, object:
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryTwo` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryThree` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `channelId` (integer, required)
- `productParentId` (integer, required)
- `externalListingId` (string)
- `publishError` (string)
- `syncError` (string)
- `staticContentUpdatedAt` (string)
- `staticContentSyncedAt` (string)
- `linkAttemptedAt` (string)
- `listingStatus` (object)
- `changeToListingStatus` (object)
- `pausedAt` (string)
- `scheduledToDeleteAt` (string)
- `tags` (array of string)
- `imageFetcherEventTriggered` (boolean)
### POST /listing/variants
Create/Update Listing Variant
Create/Update a listing variant
- Operation id: `postListingVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/postlistingvariant
Query parameters:
- `restrictCreateOrUpdate` (query, string (createOnly | updateOnly), optional): [Optional] When using a endpoint that can create or update products by SKU, use this parameter to restrict the endpoint to perform only a creation or only an update based on the existence of that SKU. If you pass `createOnly` and the SKU exists nothing will be updated, and if you pass `updateOnly` and the SKU doesn't exist nothing will be created.
- `modifyContent` (query, string (none | update | updateNonNull), optional): Should content fields of the parent/variant be modified
- `modifyIdentifiers` (query, string (none | update | updateNonNull), optional): Should identifier fields (ie Master SKU, UPC, MPN, GTIN, ASIN, Reference Identifier) of the variant be modified
- `modifyDimensions` (query, string (none | update | updateNonNull), optional): Should dimension fields (ie weight, length, width, height) of the variant be modified
- `modifyOptions` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should options of the parent/variant be modified
- `modifyImages` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should images of the parent/variant be modified
- `modifyQuantityOverwrite` (query, string (none | update | delete | updateNonNull), optional): Should the quantity overwrite be updated? Use in combination with the quantityOverwrite object and associated variant quantity field(s) to overwrite any to a locked value or to remove any overwrites.
- `modifyPriceOverwrite` (query, string (none | update | updateNonNull | delete), optional): Should the price overwrite be updated? Use in combination with the priceOverwrite object and associated variant pricing field(s) to overwrite any to a locked value or to remove any overwrite(s)..
- `modifyPublishData` (query, string (none | update | updateNonNull), optional): Should publish fields (ie `publishError`, `staticContentUpdatedAt`, `staticContentSyncedAt`) of the parent/variant be modified
- `modifySyncData` (query, string (none | update | updateNonNull), optional): Should sync fields (ie `syncError`, `dynamicContentUpdatedAt`, `dynamicContentSyncedAt`) of the parent/variant be modified
- `modifyStatusData` (query, string (none | update | updateNonNull), optional): Should status fields (ie `pausedAt`, `listingStatusId`, `changeToListingStatusId`, `scheduledToDeleteAt`) of the parent/variant be modified
- `modifyChannelData` (query, string (none | update | updateNonNull), optional): Should channel related fields (ie `externalLIstingId`, `linkAttemptedAt`, `linkedToRegularProduct`, `externalReferenceId`, `externalReferenceIdType`) of the parent/variant be modified
- `modifyVariantCustomFields` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should custom fields of the variant be modified
- `modifyRequiresFfl` (query, string (none | update | updateNonNull), optional): Should the `requiresFfl` field be modified
Request body (application/json), object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `listingParentId` (integer)
- `price` (number)
- `salePrice` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `masterSku` (string): Your master SKU is the SKU you use at your central product catalog level that is used as the primary means of identifyin
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `quantity` (integer)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `bundle` (boolean): Indicates if this variant is a bundle. Configured at the product level and unchangeable.
- `channelId` (integer, required)
- `productVariantId` (integer, required)
- ...and 30 more fields, see the docs page
Responses:
- `200`: OK - Existing variant was updated OR the `restrictCreateOrUpdate` param was provided with a value of `createOnly` and the variant already existed in which case nothing was modified and the existing variant will be returned.
- `201`: CREATED - A new variant was created
- `204`: NO CONTENT - Only possible when using the `restrictCreateOrUpdate = updateOnly` param and the variant listing does not exist. This will return an empty/null response body.
- `400`: Bad Request
- `401`: Unauthorized
- `409`: Conflict - If the SKU provided already exists on a different variant a conflict will be returned
Success response body, object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `listingParentId` (integer)
- `price` (number)
- `salePrice` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `masterSku` (string): Your master SKU is the SKU you use at your central product catalog level that is used as the primary means of identifyin
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `quantity` (integer)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `bundle` (boolean): Indicates if this variant is a bundle. Configured at the product level and unchangeable.
- `channelId` (integer, required)
- `productVariantId` (integer, required)
- ...and 30 more fields, see the docs page
### DELETE /listing/category/{categoryId}
Delete Listing Category
Delete Listing Category by ID
- Operation id: `deleteListingCategory`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/deletelistingcategory
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
### DELETE /listing/parents/{parentId}
Delete Listing Parent
Endpoint to delete parent listing and all of it’s variants.
- Operation id: `deleteListingParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/deletelistingparent
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `numberOfListingVariantsDeleted` (integer)
- `numberOfListingParentsDeleted` (integer)
- `numberOfVariantsThatWereLinked` (integer)
### DELETE /listing/variants/{variantId}
Delete Listing Variant
Endpoint to delete listing variants.
- Operation id: `deleteListingVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/deletelistingvariant
Query parameters:
- `deleteParentIfLastVariant` (query, boolean, optional): Determines when this is the last variant deleted and deletes the parent listing. Default : `true`
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `numberOfListingVariantsDeleted` (integer)
- `numberOfListingParentsDeleted` (integer)
- `numberOfVariantsThatWereLinked` (integer)
### DELETE /listing/category/orphaned/channel
Delete Orphaned Listing Categories For Channel
Delete orphaned listing categories for a single channel (categories with no listing products associated). Accepts either an Account API Token or a Channel API Token; the caller must have access to the specified channel. Use this endpoint to retry cleanup for a single channel after a partial failure of the account-wide endpoint, or to target a specific channel known to have orphans.
- Operation id: `deleteOrphanedListingCategoriesForChannel`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/deleteorphanedlistingcategoriesforchannel
Query parameters:
- `channelId` (query, integer, optional): The channel ID orphaned categories should be found and deleted from. When using a channel token nothing needs to be passed here. When using an account token the channel ID must be passed.
Responses:
- `200`: OK
- `401`: Unauthorized
- `403`: Forbidden - Channel ID does not exist
Success response body, object:
- `deletedCount` (integer, required)
### GET /listing/variants/count
Get Count of Listing Variants
- Operation id: `getListingVariantsCount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingvariantscount
Query parameters:
- `channelId` (query, integer, optional): This will be automatically populated for Channel API Tokens. Required if using an Account API Token
- `updatedAfter` (query, string, optional): Only retrieves back listing variants that hae been updated after the date specified
- `basicsUpdatedAfter` (query, string, optional): Only retrieves back listing variants that have had basic info updated after the date specified. This includes primary fields like `price` and `quantity`
- `sync` (query, boolean, optional): Filter listing variants based on whether or not they have data ready to be synced.
- `publish` (query, boolean, optional): Filter listing variants based on whether or not they have data ready to be published (created or updated).
- `includeDeleting` (query, boolean, optional): Filter listing variants based on whether or not they have been deleted
- `includeImagesCached` (query, boolean, optional): Filter listing variants based on whether or not they have images cached.
- `includePaused` (query, boolean, optional): Filter listing variants based on whether or not they have been paused
- `minimumQuantity` (query, integer, optional): Filter listing variants based on whether or not they have a minimum quantity.
- `skus` (query, array of string, optional): Finds elements matching these SKUs. Max 50
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `count` (integer, required)
### GET /listing/categories
Get Listing Categories
This endpoint will fetch back a list of Listing Categories.
- Operation id: `getListingCategories`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingcategories
Query parameters:
- `filterByChannelId` (query, integer, optional): Retrieve categories of a specific channel
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
### GET /listing/parents/{parentId}
Get Listing Parent
Retrieve a Listing Parent by `listingParentId`. All metadata will be populated when using this endpoint.
- Operation id: `getListingParentById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingparentbyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryTwo` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryThree` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `channelId` (integer, required)
- `productParentId` (integer, required)
- `externalListingId` (string)
- `publishError` (string)
- `syncError` (string)
- `staticContentUpdatedAt` (string)
- `staticContentSyncedAt` (string)
- `linkAttemptedAt` (string)
- `listingStatus` (object)
- `changeToListingStatus` (object)
- `pausedAt` (string)
- `scheduledToDeleteAt` (string)
- `tags` (array of string)
- `imageFetcherEventTriggered` (boolean)
### GET /listing/parents
Get Listing Parents
This endpoint will fetch back a list of Listing Parents. If you're a new integrator, it's recommended to read the `Integrating as a Channel` guide. Only returns 4000 variants per request. If you are not able to retrieve all variants in a single request, please lower your page size
- Operation id: `getListingParents`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingparents
Query parameters:
- `page` (query, integer, optional): page number
- `pageSize` (query, integer, optional): number of elements per page
- `channelId` (query, integer, optional): This will be automatically populated for Channel API Tokens. Required if using an Account API Token
- `skus` (query, array of string, optional): Finds elements matching these SKUs. Max 50
- `updatedAfter` (query, string, optional): Only retrieves back elements that have been updated after the date specified
- `publish` (query, boolean, optional): Read our API Guides to learn about this flag. Passing `true` requires you to respond for the interaction.
- `includeDeleting` (query, boolean, optional): Filter listing parents based on whether or not they have been deleted
- `includePaused` (query, boolean, optional): Filter listing parents based on whether or not they have been paused
- `includeOutOfStockVariants` (query, boolean, optional): If "false" is passed, it will not return out of stock inventory variants.
- `includeHavingImagesCached` (query, boolean, optional): If "true" is passed, it will only return inventory parents/variants with cached images.
- `changeToListingStatusHandle` (query, string, optional): Only retrieves back elements that have been queued to change to the specified listing status.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" nodes will be populated.
- `includeVariants` (query, boolean, optional): Include variants for the parent
- `includeOverwrites` (query, boolean, optional): will include dynamic prices and quantities if they are overwritten with fixed values
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates"(Fields) node will not be populated. Custom Aggregates are similar to custom fields, but they can be aggregated across multiple sources.
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryTwo` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `categoryThree` (object): A listing category. These are primarily created during the listing building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `channelId` (integer, required)
- `productParentId` (integer, required)
- `externalListingId` (string)
- `publishError` (string)
- `syncError` (string)
- `staticContentUpdatedAt` (string)
- `staticContentSyncedAt` (string)
- `linkAttemptedAt` (string)
- `listingStatus` (object)
- `changeToListingStatus` (object)
- `pausedAt` (string)
- `scheduledToDeleteAt` (string)
- `tags` (array of string)
- `imageFetcherEventTriggered` (boolean)
### GET /listing/variants/{variantId}
Get Listing Variant
Retrieve a Listing Variant by `listingVariantId`. All metadata will be populated when using this endpoint.
- Operation id: `getListingVariantById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingvariantbyid
Responses:
- `200`: OK
- `400`: Bad Request
- `404`: Not Found
Success response body, object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `listingParentId` (integer)
- `price` (number)
- `salePrice` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `masterSku` (string): Your master SKU is the SKU you use at your central product catalog level that is used as the primary means of identifyin
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `quantity` (integer)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `bundle` (boolean): Indicates if this variant is a bundle. Configured at the product level and unchangeable.
- `channelId` (integer, required)
- `productVariantId` (integer, required)
- ...and 30 more fields, see the docs page
### GET /listing/variants
Get Listing Variants
This endpoint will fetch back a list of Listing Variants! If you're a new integrator, it's recommended to read the `Integrating as a Channel` guide.
- Operation id: `getListingVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/getlistingvariants
Query parameters:
- `page` (query, integer, optional): page number
- `pageSize` (query, integer, optional): number of elements per page
- `channelId` (query, integer, optional): This will be automatically populated for Channel API Tokens. Required if using an Account API Token
- `updatedAfter` (query, string, optional): Only retrieves back listing variants that hae been updated after the date specified
- `basicsUpdatedAfter` (query, string, optional): Only retrieves back listing variants that have had basic info updated after the date specified. This includes primary fields like `price` and `quantity`
- `sync` (query, boolean, optional): Read our API Guides to learn about this flag. Passing `true` requires you to respond for the interaction.
- `skus` (query, array of string, optional): Finds elements matching these SKUs. Max must be less than or equal to pageSize.
- `upcs` (query, array of string, optional): Finds elements matching these UPCs. Max must be less than or equal to pageSize.
- `ids` (query, array of integer, optional): Finds elements matching these IDs. Max must be less than or equal to pageSize.
- `includeParent` (query, boolean, optional): If "true" is passed, the "parent" node will be populated with Parent information. NOTE : The "variants" will be empty in this node to prevent circular references.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" nodes will be populated.
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates"(Fields) node will not be populated. Custom Aggregates are similar to custom fields, but they can be aggregated across multiple sources.
- `includeOverwrites` (query, boolean, optional): will include dynamic prices and quantities if they are overwritten with fixed values
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `listingParentId` (integer)
- `price` (number)
- `salePrice` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `id` (integer)
- `accountId` (integer)
- `sku` (string, required)
- `masterSku` (string): Your master SKU is the SKU you use at your central product catalog level that is used as the primary means of identifyin
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number)
- `map` (number)
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number)
- `quantity` (integer)
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- `bundle` (boolean): Indicates if this variant is a bundle. Configured at the product level and unchangeable.
- `channelId` (integer, required)
- `productVariantId` (integer, required)
- ...and 30 more fields, see the docs page
### PATCH /listing/parents/{parentId}/tags
Update Listing Parent Tags
Adds and/or removes tags on the entity by name. Tags in `add` that do not exist yet are created. Returns the entity's full tag list after the update, sorted alphabetically.
- Operation id: `updateListingParentTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/updatelistingparenttags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
### PATCH /listing/variants/{variantId}/tags
Update Listing Variant Tags
Adds and/or removes tags on the entity by name. Tags in `add` that do not exist yet are created. Returns the entity's full tag list after the update, sorted alphabetically.
- Operation id: `updateListingVariantTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing/updatelistingvarianttags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
---
## Listing Builder
5 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/listing-builder
### POST /listing/{channelId}/builder/build/{productVariantId}
Build Listing from Product Variant
- Operation id: `createListing`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing-builder/createlisting
Request body (application/json), object:
- `mappingTemplateId` (integer): A specific mapping template that should be used to build the listing. If not provided the default mapping template will
- `rebuildIfExists` (boolean): Rebuild the listing if the product variant is already built and linked to a listing in the channel
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `listingVariantId` (integer): The ID of the listing variant if it was successfully created OR if it was rebuilt
- `channelId` (integer): The channel ID as passed in the path params
- `built` (boolean): Whether or not the listing was built (created)
- `rebuilt` (boolean): Whether a listing that already existed for the product in the channel was rebuilt.
- `duplicateSkuFailure` (boolean): If the listing could not be built because there already is a existing listing in the channel with the same SKU that was
### GET /listing/{channelId}/builder/count
Get Listing Builder Count
Get the count of the total listings pending a build in the given channel
- Operation id: `getListingBuilderCount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing-builder/getlistingbuildercount
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `count` (integer, required)
### GET /listing/builder/re-build/count
Get Listing Rebuilder Count
Get a count of the total number of listing that are pending a rebuild
- Operation id: `getListingReBuilderCount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing-builder/getlistingrebuildercount
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `variantCount` (integer)
- `variantFailedCount` (integer)
- `parentCount` (integer)
- `parentFailedCount` (integer)
### POST /listing/{channelId}/builder/re-build/parent/{listingParentId}
Rebuild Listing Parent
- Operation id: `rebuildListingParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing-builder/rebuildlistingparent
Query parameters:
- `rebuildVariants` (query, boolean, optional): Whether variants of the parent should be rebuilt as well.
Request body (application/json), object:
- `mappingTemplateId` (integer): A specific mapping template that should be used to build the listing. If not provided the default mapping template will
- `rebuildIfExists` (boolean): Rebuild the listing if the product variant is already built and linked to a listing in the channel
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `success` (boolean, required)
- `error` (string)
### POST /listing/{channelId}/builder/re-build/variant/{listingVariantId}
Rebuild Listing Variant
- Operation id: `rebuildListingVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/listing-builder/rebuildlistingvariant
Request body (application/json), object:
- `mappingTemplateId` (integer): A specific mapping template that should be used to build the listing. If not provided the default mapping template will
- `rebuildIfExists` (boolean): Rebuild the listing if the product variant is already built and linked to a listing in the channel
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `success` (boolean, required)
- `error` (string)
---
## MappingSet
10 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/mappingset
### POST /mapping-set/{id}/item
Add Item to Mapping Set
This will add a Mapping Set Item
- Operation id: `postMappingSetItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/postmappingsetitems
Request body (application/json), array of object:
- `id` (integer)
- `mappingSetId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `updatedAt` (string)
- `fromValue` (string, required)
- `toValue` (string)
Responses:
- `200`: OK
### POST /mapping-set
Create Mapping Set
Create a mapping set.
- Operation id: `postMappingSet`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/postmappingset
Request body (application/json), object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
Responses:
- `200`: OK
Success response body, object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
### DELETE /mapping-set/{id}/item
Delete Item from Mapping Set
This endpoint will delete a mapping set item
- Operation id: `deleteMappingSetItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/deletemappingsetitems
Request body (application/json), object:
- `fromValues` (array of string)
Responses:
- `200`: OK
### DELETE /mapping-set/{id}
Delete Mapping Set
Delete a mapping set.
- Operation id: `deleteMappingSet`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/deletemappingset
Responses:
- `200`: OK
- `404`: Not Found
### GET /mapping-set/{id}/convert
Get Converted Value
Attempt to convert a given value using a mapping set.
- Operation id: `convertUsingMappingSet`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/convertusingmappingset
Query parameters:
- `fromValue` (query, string, required): The value to attempt to convert using the mapping set
Responses:
- `200`: OK
Success response body, object:
- `converted` (boolean, required)
- `fromValue` (string, required)
- `toValue` (string, required)
### GET /mapping-lists
Get Mapping Lists
Get a List of Mapping List. It will retrieve a maximum of 100 mapping lists with each request
- Operation id: `getMappingLists`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/getmappinglists
Query parameters:
- `page` (query, integer, optional)
- `exclusionListForSourceId` (query, integer, optional): Retrieve mapping lists for the given sourceId
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
### GET /mapping-set/{id}
Get Mapping Set
Get a mapping set
- Operation id: `getMappingSet`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/getmappingset
Responses:
- `200`: OK
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
### GET /mapping-set/{id}/item
Get Mapping Set Item
Get a single mapping item
- Operation id: `getMappingSetItem`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/getmappingsetitem
Query parameters:
- `itemId` (query, integer, optional): Get by ID
- `fromValue` (query, string, optional): Get by fromValue
Responses:
- `200`: OK
- `400`: Bad Request
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `mappingSetId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `updatedAt` (string)
- `fromValue` (string, required)
- `toValue` (string)
### GET /mapping-sets
Get Mapping Sets
Get a List of Mapping Sets. It will retrieve a maximum of 100 mapping sets with each request
- Operation id: `getMappingSets`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/getmappingsets
Query parameters:
- `page` (query, integer, optional)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
### PATCH /mapping-set/{id}
Update Mapping Set
Update a mapping set.
- Operation id: `patchMappingSet`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingset/patchmappingset
Request body (application/json), object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
Responses:
- `200`: OK
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `createdAt` (string)
- `name` (string, required)
- `description` (string)
- `totalItems` (integer)
- `exclusionListForSourceId` (integer)
- `exclusionType` (string (sku | brand | category)): Required when 'exclusionListForSourceId' is provided. Specifies the type of exclusion being applied. Use 'sku', 'brand',
---
## MappingTemplate
5 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/mappingtemplate
### POST /mapping-template
Create/Update Mapping Template
Create/Update a mapping template
- Operation id: `postMappingTemplate`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingtemplate/postmappingtemplate
Request body (application/json), object:
- `id` (integer)
- `eventId` (integer, required)
- `eventHandle` (string)
- `name` (string, required)
- `description` (string)
- `createdAt` (string)
- `updatedAt` (string)
- `csvIndexBased` (boolean)
- `fields` (array of object)
- `mappingEventGroupReplaceModes` (array of object)
- `useAsDefault` (boolean): Whether automated processes for the given `eventId` this mapping template is associated with should automatically defaul
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `eventId` (integer, required)
- `eventHandle` (string)
- `name` (string, required)
- `description` (string)
- `createdAt` (string)
- `updatedAt` (string)
- `csvIndexBased` (boolean)
- `fields` (array of object)
- `mappingEventGroupReplaceModes` (array of object)
- `useAsDefault` (boolean): Whether automated processes for the given `eventId` this mapping template is associated with should automatically defaul
### DELETE /mapping-template/{mappingTemplateId}
Delete Mapping Template
Delete a mapping template
- Operation id: `deleteMappingTemplate`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingtemplate/deletemappingtemplate
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### GET /mapping-template/{mappingTemplateId}
Get Mapping Template
- Operation id: `getMappingTemplateById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingtemplate/getmappingtemplatebyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `eventId` (integer, required)
- `eventHandle` (string)
- `name` (string, required)
- `description` (string)
- `createdAt` (string)
- `updatedAt` (string)
- `csvIndexBased` (boolean)
- `fields` (array of object)
- `mappingEventGroupReplaceModes` (array of object)
- `useAsDefault` (boolean): Whether automated processes for the given `eventId` this mapping template is associated with should automatically defaul
### GET /mapping-template
Get Mapping Templates
List all mapping templates.
- Operation id: `listMappingTemplates`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingtemplate/listmappingtemplates
Query parameters:
- `includeFields` (query, boolean, optional): Whether fields should be populated on the returned mapping templates
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `eventId` (integer, required)
- `eventHandle` (string)
- `name` (string, required)
- `description` (string)
- `createdAt` (string)
- `updatedAt` (string)
- `csvIndexBased` (boolean)
- `fields` (array of object)
- `mappingEventGroupReplaceModes` (array of object)
- `useAsDefault` (boolean): Whether automated processes for the given `eventId` this mapping template is associated with should automatically defaul
### POST /mapping-template/run
Run Mapping Template
This endpoint will run a mapping template
- Operation id: `runMappingTemplate`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/mappingtemplate/runmappingtemplate
Request body (application/json), object:
- `mappingEventId` (integer, required)
- `fromObjects` (object, required)
- `toObjects` (object, required)
- `options` (object)
Responses:
- `200`: OK
- `404`: Not Found
Success response body, object:
- `fromObjects` (object, required)
- `toObjects` (object, required)
- `customHandlers` (array of object)
---
## Order
12 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/order
### GET /orders/{channelId}/{orderNumber}
[Deprecated] Get Order by Order Number
This endpoint is deprecated. This functionality will be added to : `GET /orders` -> `findByOrderNumber`
**Deprecated.**
- Operation id: `getOrderByOrderNumber`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/getorderbyordernumber
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### GET /orders/list
[Deprecated] List Orders
This endpoint is deprecated, please use `GET /orders` instead This endpoint will retrieve back Orders - Params starting with **filter*** will filter the results down - Params starting with **include*** will determine the metadata returned
**Deprecated.**
- Operation id: `listOrders`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/listorders
Query parameters:
- `filterStatus` (query, string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed), optional): Filters down to Orders that match this status.
- `filterOrderedAfter` (query, string, optional): Filters down to Orders that were ordered after this datetime.
- `filterStatusHasChangedSince` (query, string, optional): Returns any orders that have had a status change since this datetime.
- `filterHasTag` (query, string, optional): Filters orders that has tag
- `filterShipmentStatus` (query, string (Not Started | Partially Completed | Completed), optional): Filters down to Orders that has this shipment status
- `filterChannelInvoiceStatus` (query, string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined), optional): Filters down to Orders that are in this channel invoice status.
- `includeChannelInvoice` (query, boolean, optional): Determines if "channel invoice" are returned in the response
- `includePos` (query, boolean, optional): Determines if "purchase orders" are returned in the response. Only applicable if using an account token type. Will never be included for channel token types.
- `includeShipments` (query, boolean, optional): Determines if "shipments" are returned in the response.
- `includeSourceInvoices` (query, boolean, optional): Determines if "source invoices" are returned in the response. Only applicable if using an account token type. Will never be included for channel token types.
- `includeStatusHistory` (query, boolean, optional): Determines if "order status history" are returned in the response
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
- `filterPageSize` (query, integer, optional): Number of entries per page
- `filterPageNumber` (query, integer, optional): Current Page
- `filterByChannelId` (query, integer, optional): Retrieve orders of a specific channel
- `filterByIds` (query, array of integer, optional): A list of Order IDs to filter on. Max 50 IDs. Recommended to not include full metadata while using this. This will work in conjunction with the other `filter` params
- `includeFFL` (query, boolean, optional): Determines if "Order FFL" (if available) is included in the response
- `includeReturns` (query, boolean, optional): Determines if "Order returns" are returned in the response
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### POST /checkout
Checkout Order
This endpoint allows you to go through a ”checkout” process for a potential Order. Use Case Example : A customer is going through the ”checkout” process on your site and you would like to provide them with an estimated shipping cost generate by your rules in Flxpoint. This endpoint will response with a ”mock” Order representing the expected result of a live Order submission. If you pass `mockRouting` - we will also try to route the Order to Source(s), and reply back with ”mock” Purchase Orders attached to reflect the result of a live Order routing process. DISCLAIMER: Depending on the strategy, this endpoint may take some time to process (i.e. if you are deriving Shipping Costs by using Rate Shopping, latency is also dependent on ShipEngine’s response times). **Please be aware, ”id” values will be null. Nothing is persisted as a result of this operation**
- Operation id: `checkoutOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/checkoutorder
Query parameters:
- `mockRouting` (query, boolean, optional): If `true`, Flxpoint will try to route the Order to Source(s), and reply back with ”mock” Purchase Orders attached to reflect the result of a live Order routing process. If this process fails, `purchaseOrders` will be empty
- `routingGroupId` (query, integer, optional): If passed, Flxpoint will override the default routing group used to generate the Purchase Orders
Request body (application/json), object:
- `channelId` (integer): This field will automatically be populated if you are using a Channel or Reseller API Token. If you are using an Account
- `resellerId` (integer): This field will automatically be populated if you are using a Reseller API Token. If you are using an Account API Token
- `orderNumber` (string, required): Unique Order ID from external system submitting Order.
- `referenceNumber` (string): User friendly Order number being submitted, uniqueness not enforced.
- `orderedAt` (string): Timestamp that represents when the Order was placed. If a timestamp is not provided, we will add the current time in dur
- `note` (string)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `shippingText` (string): Text that represents the shipping method selected for this Order. This is used to find a matching "Shipping Policy" and
- `shippingPolicyId` (integer): Unique ID of a Shipping Policy within your account. If "shippingText" is passed and has a matching Channel Shipping Mapp
- `shippingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `billingAddress` (object): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `attributes` (array of object): Any attribute with an empty key or value will be ignored (won't be saved). Also, each attribute should have a unique key
- `orderItems` (array of object, required)
- `piiRetentionPolicy` (string (30_days_after_shipment | 60_days_after_shipment | 90_days_after_shipment | none)): Personal Identifiable Information (PII) retention policy. By specifying a PII retention policy, we will remove customer
- `orderInvoice` (object): An "Order Invoice" represents a "Receipt" or B2B Invoice for Orders being submitted. If fields like "subtotal" or "total
- `orderFFL` (object): Federal Firearm License details
- `orderType` (string (Online | POS | Manual))
- `fulfillmentType` (string (Shipping | In-Store Purchase))
- `orderStatus` (string (Open | Draft))
- `tags` (array of string)
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### POST /orders
Create Order
This endpoint creates an Order! Orders can be created by using an Account, Channel, or Reseller API Token. If an Account Token is used, a `channelId` must be provided. Items are associated by `sku`, `external_listing_id`, or `listing_variant_id`. See the `CreateOrderItem` model for more information. When an Order is created, it will : - Run `Order Import` workflow rules - Run `Order Invoice` workflow rules - Run `Auto FR Generation` settings - Which in turn, may also run additional workflows if FRs are created For more information about Orders, see our docs : https://docs.flxpoint.com/flxpoint/orders
- Operation id: `post-orders`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/post-orders
Query parameters:
- `routingGroupId` (query, integer, optional): If passed, Flxpoint will override the default routing group used to generate the Purchase Orders
Request body (application/json), object:
- `channelId` (integer): This field will automatically be populated if you are using a Channel or Reseller API Token. If you are using an Account
- `resellerId` (integer): This field will automatically be populated if you are using a Reseller API Token. If you are using an Account API Token
- `orderNumber` (string, required): Unique Order ID from external system submitting Order.
- `referenceNumber` (string): User friendly Order number being submitted, uniqueness not enforced.
- `orderedAt` (string): Timestamp that represents when the Order was placed. If a timestamp is not provided, we will add the current time in dur
- `note` (string)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `shippingText` (string): Text that represents the shipping method selected for this Order. This is used to find a matching "Shipping Policy" and
- `shippingPolicyId` (integer): Unique ID of a Shipping Policy within your account. If "shippingText" is passed and has a matching Channel Shipping Mapp
- `shippingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `billingAddress` (object): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `attributes` (array of object): Any attribute with an empty key or value will be ignored (won't be saved). Also, each attribute should have a unique key
- `orderItems` (array of object, required)
- `piiRetentionPolicy` (string (30_days_after_shipment | 60_days_after_shipment | 90_days_after_shipment | none)): Personal Identifiable Information (PII) retention policy. By specifying a PII retention policy, we will remove customer
- `orderInvoice` (object): An "Order Invoice" represents a "Receipt" or B2B Invoice for Orders being submitted. If fields like "subtotal" or "total
- `orderFFL` (object): Federal Firearm License details
- `orderType` (string (Online | POS | Manual))
- `fulfillmentType` (string (Shipping | In-Store Purchase))
- `orderStatus` (string (Open | Draft))
- `tags` (array of string)
Responses:
- `200`: OK
- `401`: Unauthorized
- `409`: Duplicate Order Number Found
Success response body, object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### POST /orders/{orderId}/items
Create Order Item
- Operation id: `createOrderItem`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/createorderitem
Request body (application/json), object:
- `price` (number)
- `discount` (number): Line-item discount as a monetary amount subtracted from the line total (price * quantity), in the order's currency.
- `quantity` (integer, required)
- `productVariantId` (integer)
- `listingVariantId` (integer)
- `shippingAddress` (object): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### GET /orders/{id}
Get Order
- Operation id: `getOrderById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/getorderbyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### GET /orders
Get Orders
This endpoint will retrieve back Orders
- Operation id: `getOrders`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/getorders
Query parameters:
- `page` (query, integer, optional): page number
- `pageSize` (query, integer, optional): number of elements per page
- `channelId` (query, integer, optional): ID of the Channel. This will be default applied for Channel API Tokens
- `orderedAfter` (query, string, optional): Only returns Orders that have been ordered after this time.
- `sinceId` (query, integer, optional): If passed, returns results with an id greater than this
- `hasTag` (query, string, optional): Only returns Orders that have the matching tag
- `ids` (query, array of integer, optional): Finds elements matching these IDs. Max 50
- `orderNumbers` (query, array of string, optional): Finds records matching these Order Numbers. Max 50
- `referenceNumbers` (query, array of string, optional): Finds records matching these Reference Numbers. Max 50
- `status` (query, string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed), optional): Only returns Orders that have the matching status.
- `shipmentStatus` (query, string (Not Started | Partially Completed | Completed), optional): Only returns Orders that have the matching shipment status
- `channelInvoiceStatus` (query, string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined), optional): Only returns Orders that have the matching channel invoice status.
- `paymentStatus` (query, array of string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined), optional): Only returns Orders that match one of the input payment statuses.
- `accountingSynced` (query, boolean, optional): Filters based on whether or not order accounting is synced
- `includeShippingPolicy` (query, boolean, optional): Determines if "shipping policy" is returned in the response
- `includeChannelShippingMethod` (query, boolean, optional): Determines if "channel shipping method" is returned in the response
- `includeChannelInvoice` (query, boolean, optional): Determines if "channel invoice" is returned in the response
- `includePos` (query, boolean, optional): Determines if "purchase orders" are returned in the response. Only applicable if using an account token type. Will never be included for channel token types.
- `includeShipments` (query, boolean, optional): Determines if "shipments" are returned in the response.
- `hasShipments` (query, boolean, optional): Filters orders based on whether or not they have at least one shipment.
- `shipmentSyncedToChannel` (query, boolean, optional): Filters returned "shipments" based on whether or not they have been synced to the channel. If this is passed as true, both "includeShipments" and "isShipped" will be set to true.
- `shipmentSuppressed` (query, boolean, optional): Filters returned "shipments" based on whether or not they have been suppressed. If this is passed as true, both "includeShipments" and "isShipped" will be set to true.
- `shipmentHasError` (query, boolean, optional): Filters returned "shipments" based on whether or not they have been they had an error saved when syncing to the channel. If this is passed as true, both "includeShipments" and "isShipped" will be set to true.
- `includeSourceInvoices` (query, boolean, optional): Determines if "source invoices" are returned in the response. Only applicable if using an account token type. Will never be included for channel token types.
- `includeStatusHistory` (query, boolean, optional): Determines if "order status history" are returned in the response
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
- `includeFFL` (query, boolean, optional): Determines if "Order FFL" (if available) is included in the response
- `includeReturns` (query, boolean, optional): Determines if "Order returns" are returned in the response.
- `updatedAfter` (query, string, optional): Only returns orders that have been updated after this time. Includes changes to the order itself only — it does not include additions or changes to sub-components of an order (e.g. a shipment being added). To also capture sub-component changes, use `orderModifiedAfter` instead.
- `includeCancelledOrders` (query, boolean, optional): Include cancelled orders in the response.
- `allocationStatus` (query, string (Not Started | Partially Completed | Completed), optional): Filter on Allocation Status
- `shipmentAccountingSynced` (query, boolean, optional): Shipment Accounting Synced Filter
- `orderModifiedAfter` (query, string, optional): Only returns orders where the order or any of its sub-components have been modified after this time. Sub-components include: Line Items, FFL, Shipping Address, Billing Address, Fulfillment Requests (FR/PR/SPO/TO), Shipments, Source Invoices, Returns, and RMAs. This filter matches the order's `modifiedAt` field. Unlike `updatedAfter`, it captures changes such as a shipment being added to the order.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `orderNumber` (string)
- `referenceNumber` (string)
- `orderTotal` (number)
- `note` (string)
- `importedFrom` (integer)
- `orderedAt` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `shippingText` (string)
- `acknowledgedStatus` (string (Not Started | Partially Completed | Completed))
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `orderStatus` (string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed | Draft))
- `shippingAddress` (object)
- `billingAddress` (object)
- `dealerAddress` (object)
- `channelId` (integer)
- `reseller` (object)
- `released` (boolean)
- `accountId` (integer)
- `paymentStatus` (string (Not Authorized | Authorized | Paid | Deferred | Refunded | Credited | Awaiting Clearance | Declined))
- `allocatedStatus` (string (Not Started | Partially Completed | Completed))
- `canceledAt` (string)
- `totalOrderItems` (integer)
- `totalQuantity` (integer)
- `totalWeight` (number)
- `paymentRefundStatus` (string (None | Partially | Fully))
- `paymentCreditStatus` (string (None | Partially | Fully))
- `purchaseOrderStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderProcessStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderFailedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderCanceledStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderVoidedStatus` (string (Not Started | Partially Completed | Completed))
- `paymentDeferredAt` (string)
- `paymentDeferredUntil` (string)
- `channelInvoiceReceiptQueuedId` (string)
- `channelShippingMethod` (object)
- `totalPos` (integer)
- `shippingPolicy` (object)
- `poTotalCost` (number)
- ...and 28 more fields, see the docs page
### PATCH /orders/link
Link Unmanaged Orders/Items
Attempt to link unmanaged order items based on the IDs passed. You can only pass one of the defined GET parameters at a time, otherwise a 400 will be returned.
- Operation id: `patchLinkOrders`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/patchlinkorders
Responses:
- `200`: OK
- `400`: Bad Request. Will be returned if more than one GET parameter is defined & passed at a time or no get parameters are passed.
- `401`: Unauthorized
### PUT /orders/{id}/route
Route Order
this endpoint applies modern generation strategy that takes routing rules into consideration and builds best purchase order solutions
- Operation id: `routeOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/routeorder
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: No routing solution found
- `409`: In-flight (processing, processed, acknowledged) Purchase Orders already exist. Cannot regenerate
Success response body, array of object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### PATCH /orders/{id}/accounting-sync
Sync Accounting for Order
Update order as synced to external accounting system
- Operation id: `syncOrderAccounting`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/syncorderaccounting
Request body (application/json), object:
- `accountingSynced` (boolean): specify whether accounting was synced
- `externalAccountingId` (string): identfier in the external system that identifies with this order.
- `items` (array of object)
- `accountingSyncError` (string)
Responses:
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### PATCH /orders/{id}/status
Update Order Status
- Operation id: `updateOrderStatus`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/updateorderstatus
Query parameters:
- `status` (query, string (Open | Closed | Canceled | On Hold | Failed | No Shipping Method | Not Managed), required): order status
- `updateNote` (query, string, optional): note about this status update
Responses:
- `201`: Created
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### PATCH /orders/{id}/tags
Update Order Tags
- Operation id: `updateOrderTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/order/updateordertags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
---
## Package
1 operation. Reference: https://www.apihelpcenter.flxpoint.com/reference/package
### POST /packages/custom
Create Custom Package
Use this endpoint to create a new custom package. If a custom package with this name already exists, a 409 - Conflict Response will be returned.
- Operation id: `saveCustomPackage`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/package/savecustompackage
Request body (application/json), object:
- `name` (string, required)
- `length` (number, required)
- `width` (number, required)
- `height` (number, required)
- `dimensionUnit` (string (in | cm), required)
- `weight` (number, required)
- `weightUnit` (string (lb | oz | g | kg), required)
Responses:
- `201`: Created
- `400`: Bad Request
- `401`: Unauthorized
- `409`: Conflict
Success response body, object:
- `id` (integer): A unique, numerical identifier for the package.
- `name` (string): Your name for the package.
- `length` (number): The length dimension of the package.
- `width` (number): The width dimension of the package.
- `height` (number): The height dimension of the package.
- `dimensionUnit` (object)
- `weight` (number): The weight of the package itself (excluding any contents).
- `weightUnit` (object)
- `createdAt` (string): The time that the package was created by an account user.
- `createdByUserEmail` (string): The email address of the user who created the package.
- `updatedAt` (string): The last time the package details were modified (will be null if never changed).
---
## Product
19 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/product
### GET /product/{parentId}/{variantId}
[Deprecated] Get Product Pair
Deprecated, use `/product/variants` with `includeParent`
**Deprecated.**
- Operation id: `getProductPair`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductpair
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `parent` (object, required)
- `variant` (object, required)
### GET /product/variant/{variantId}/pair
[Deprecated] Get Product Pair by Variant ID
Deprecated, use `/products/variants/{id}` with `includeParent`
**Deprecated.**
- Operation id: `getProductPairByVariantId`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductpairbyvariantid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `parent` (object, required)
- `variant` (object, required)
### GET /product/products/variant
[Deprecated] Get Product Variant
Deprecated, use `/product/variants` with `findBySku`
**Deprecated.**
- Operation id: `getProductVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductvariant
Query parameters:
- `findBySku` (query, string, optional): Find a parent/variant by SKU
- `findById` (query, integer, optional): Find a variant/parent by ID
Responses:
- `200`: OK
- `400`: If neither `findBySku` or `findById` is passed.
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `productParentId` (integer)
- `price` (number): The dynamic price, or locked price if overwritten.
- `salePrice` (number)
- `estimatedShippingCost` (number): The dynamic estimated shipping cost, or locked estimated shipping cost if overwritten.
- `estimatedDropshipFee` (number): The dynamic estimated dropship fee, or locked estimated dropship fee if overwritten.
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `inventoryLinks` (array of object)
- `productAlternatives` (array of object)
- `referenceIdentifier` (string)
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number): The dynamic MSRP, or locked MSRP if overwritten.
- `map` (number): The dynamic MAP, or locked MAP if overwritten.
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number): The dynamic cost, or locked cost if overwritten.
- `quantity` (integer): The dynamic quantity, or locked quantity if overwritten.
- `pendingFulfillmentQuantity` (integer): The # of items on active orders that are waiting to be added to Fulfillment Requests
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- ...and 12 more fields, see the docs page
### GET /product/variant/inventorylinks
[Deprecated] Get Product Variant Inventory Links
This endpoint is deprecated, either use the `GET /inventory/variant/{variantId}` endpoint or `GET /product/variant/{variantId}`
**Deprecated.**
- Operation id: `listProductVariantInventoryLinks`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/listproductvariantinventorylinks
Query parameters:
- `filterProductVariantId` (query, integer, optional): ID of product variant
- `filterInventoryVariantId` (query, integer, optional): ID of inventory variant
Responses:
- `200`: OK
Success response body, array of object:
- `id` (integer)
- `productVariantId` (integer)
- `inventoryVariantId` (integer, required)
- `sourceId` (integer)
- `sku` (string)
- `archived` (boolean)
- `quantity` (integer)
- `cost` (number)
- `msrp` (number)
- `map` (number)
- `shippingCost` (number)
- `dropshipFee` (number)
- `inventoryListPrice` (number)
### POST /product/search/variants
[Deprecated] Search Product Variants
**Deprecated.**
- Operation id: `getProductVariants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductvariants
Query parameters:
- `page` (query, integer, optional)
- `pageSize` (query, integer, optional): Number of entries per page
- `includeImages` (query, boolean, optional)
- `includeOptionValues` (query, boolean, optional)
- `includeOverwrites` (query, boolean, optional)
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" node will be populated.
Request body (application/json), object:
- `filterNeedsDeleting` (boolean): fetch variants that are marked for deletion
- `filterProductVariantIds` (array of integer): filter by list of product variant id
- `includeInventoryLinks` (boolean): Use this to include `ProductVariantInventoryLink` associated with the product variant. By default they are not inc
- `includeBundleComponents` (boolean): Use this to include `ProductBundleComponents` associated with the product variant. By default they are not include
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `productParentId` (integer)
- `price` (number): The dynamic price, or locked price if overwritten.
- `salePrice` (number)
- `estimatedShippingCost` (number): The dynamic estimated shipping cost, or locked estimated shipping cost if overwritten.
- `estimatedDropshipFee` (number): The dynamic estimated dropship fee, or locked estimated dropship fee if overwritten.
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `inventoryLinks` (array of object)
- `productAlternatives` (array of object)
- `referenceIdentifier` (string)
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number): The dynamic MSRP, or locked MSRP if overwritten.
- `map` (number): The dynamic MAP, or locked MAP if overwritten.
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number): The dynamic cost, or locked cost if overwritten.
- `quantity` (integer): The dynamic quantity, or locked quantity if overwritten.
- `pendingFulfillmentQuantity` (integer): The # of items on active orders that are waiting to be added to Fulfillment Requests
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- ...and 12 more fields, see the docs page
### POST /product/products/parent
Create/Update Product Parent
Create/Update a product parent
- Operation id: `postProductParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/postproductparent
Query parameters:
- `restrictCreateOrUpdate` (query, string (createOnly | updateOnly), optional): [Optional] When using a endpoint that can create or update products by SKU, use this parameter to restrict the endpoint to perform only a creation or only an update based on the existence of that SKU. If you pass `createOnly` and the SKU exists nothing will be updated, and if you pass `updateOnly` and the SKU doesn't exist nothing will be created.
- `modifyContent` (query, string (none | update | updateNonNull), optional): Should content fields of the parent/variant be modified
- `modifyOptions` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should options of the parent/variant be modified
- `modifyImages` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should images of the parent/variant be modified
- `modifyAttributes` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should attributes of the parent be modified
- `modifyCustomFields` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should custom fields of the parent be modified
- `modifyCategories` (query, string (none | update | delete), optional): Should categories of the parent be modified
Request body (application/json), object:
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryTwo` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryThree` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object): DEPRECATED : Variants included in this call will not be updated. You need to use the dedicated variant endpoint to updat
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
Responses:
- `200`: OK - Existing parent was updated OR the `restrictCreateOrUpdate` param was provided with a value of `createOnly` and the parent already existed in which case nothing was modified and the existing parent will be returned.
- `201`: CREATED - A new parent was created
- `204`: NO CONTENT - Only possible when using the `restrictCreateOrUpdate = updateOnly` param and the parent product does not exist. This will return an empty/null response body.
- `401`: Unauthorized
- `409`: Conflict - If the SKU provided already exists on a different parent a conflict will be returned
Success response body, object:
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryTwo` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryThree` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `tags` (array of string)
- `listingLinks` (array of object)
- `imageFetcherEventTriggered` (boolean)
### POST /product/products/variant
Create/Update Product Variant
Create/Update a product variant. **Note on Bundles:** To create a bundle, you must set the `bundle` field to `true` in the initial creation request (this cannot be updated later). You do not need to pass `bundleProductVariantId` in the `bundleComponents` array during creation.
- Operation id: `postProductVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/postproductvariant
Query parameters:
- `restrictCreateOrUpdate` (query, string (createOnly | updateOnly), optional): [Optional] When using a endpoint that can create or update products by SKU, use this parameter to restrict the endpoint to perform only a creation or only an update based on the existence of that SKU. If you pass `createOnly` and the SKU exists nothing will be updated, and if you pass `updateOnly` and the SKU doesn't exist nothing will be created.
- `modifyContent` (query, string (none | update | updateNonNull), optional): Should content fields of the parent/variant be modified
- `modifyIdentifiers` (query, string (none | update | updateNonNull), optional): Should identifier fields (ie Master SKU, UPC, MPN, GTIN, ASIN, Reference Identifier) of the variant be modified
- `modifyDimensions` (query, string (none | update | updateNonNull), optional): Should dimension fields (ie weight, length, width, height) of the variant be modified
- `modifyOptions` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should options of the parent/variant be modified
- `modifyImages` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should images of the parent/variant be modified
- `modifyInventoryLinks` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should inventory links of the product variant be updated
- `modifyQuantityOverwrite` (query, string (none | update | delete | updateNonNull), optional): Should the quantity overwrite be updated? Use in combination with the quantityOverwrite object and associated variant quantity field(s) to overwrite any to a locked value or to remove any overwrites.
- `modifyPriceOverwrite` (query, string (none | update | updateNonNull | delete), optional): Should the price overwrite be updated? Use in combination with the priceOverwrite object and associated variant pricing field(s) to overwrite any to a locked value or to remove any overwrite(s)..
- `modifyBundleComponents` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should bundle components of the product variant be updated
- `modifyVariantCustomFields` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should custom fields of the variant be modified
- `modifyProductAlternatives` (query, string (none | update | merge | deleteIncluded | deleteAll), optional): Should product alternatives of the variant be modified
- `modifyRequiresFfl` (query, string (none | update | updateNonNull), optional): Should the `requiresFfl` field be modified
Request body (application/json), object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `productParentId` (integer)
- `price` (number): The dynamic price, or locked price if overwritten.
- `salePrice` (number)
- `estimatedShippingCost` (number): The dynamic estimated shipping cost, or locked estimated shipping cost if overwritten.
- `estimatedDropshipFee` (number): The dynamic estimated dropship fee, or locked estimated dropship fee if overwritten.
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `inventoryLinks` (array of object)
- `productAlternatives` (array of object)
- `referenceIdentifier` (string)
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number): The dynamic MSRP, or locked MSRP if overwritten.
- `map` (number): The dynamic MAP, or locked MAP if overwritten.
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number): The dynamic cost, or locked cost if overwritten.
- `quantity` (integer): The dynamic quantity, or locked quantity if overwritten.
- `pendingFulfillmentQuantity` (integer): The # of items on active orders that are waiting to be added to Fulfillment Requests
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- ...and 12 more fields, see the docs page
Responses:
- `200`: OK - Existing variant was updated OR the `restrictCreateOrUpdate` param was provided with a value of `createOnly` and the variant already existed in which case nothing was modified and the existing variant will be returned.
- `201`: CREATED - A new variant was created
- `204`: NO CONTENT - Only possible when using the `restrictCreateOrUpdate = updateOnly` param and the variant product does not exist. This will return an empty/null response body.
- `400`: Bad Request
- `401`: Unauthorized
- `409`: Conflict - If the SKU provided already exists on a different variant a conflict will be returned
Success response body, object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `productParentId` (integer)
- `price` (number): The dynamic price, or locked price if overwritten.
- `salePrice` (number)
- `estimatedShippingCost` (number): The dynamic estimated shipping cost, or locked estimated shipping cost if overwritten.
- `estimatedDropshipFee` (number): The dynamic estimated dropship fee, or locked estimated dropship fee if overwritten.
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `inventoryLinks` (array of object)
- `productAlternatives` (array of object)
- `referenceIdentifier` (string)
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number): The dynamic MSRP, or locked MSRP if overwritten.
- `map` (number): The dynamic MAP, or locked MAP if overwritten.
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number): The dynamic cost, or locked cost if overwritten.
- `quantity` (integer): The dynamic quantity, or locked quantity if overwritten.
- `pendingFulfillmentQuantity` (integer): The # of items on active orders that are waiting to be added to Fulfillment Requests
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- ...and 12 more fields, see the docs page
### DELETE /product/category/orphaned
Delete Orphaned Product Categories
Delete all orphaned product categories for the account (categories with no products or variants associated)
- Operation id: `deleteOrphanedProductCategories`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/deleteorphanedproductcategories
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `deletedCount` (integer, required)
### DELETE /product/category/{categoryId}
Delete Product Category
Delete Product Category by ID
- Operation id: `deleteProductCategory`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/deleteproductcategory
Responses:
- `204`: No Content
- `401`: Unauthorized
- `404`: Not Found
### DELETE /product/parent/{parentId}
Delete Product Parent
Endpoint to delete parent products and all of it’s variants.
- Operation id: `deleteProductParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/deleteproductparent
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `409`: Conflict
Success response body, object:
- `numberOfProductVariantsDeleted` (integer)
- `numberOfProductParentsDeleted` (integer)
### DELETE /product/variant/{variantId}
Delete Product Variant
Endpoint to delete product variants.
- Operation id: `deleteProductVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/deleteproductvariant
Query parameters:
- `deleteParentIfLastVariant` (query, boolean, optional): Determines when this is the last variant deleted and deletes the parent product. Default `True`
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
- `409`: Conflict
Success response body, object:
- `numberOfProductVariantsDeleted` (integer)
- `numberOfProductParentsDeleted` (integer)
### GET /product/variant/{variantId}/alternatives
Get Product Alternatives
- Operation id: `getProductAlternatives`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductalternatives
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `id` (integer)
- `sku` (string)
- `title` (string)
- `quantity` (integer)
- `cost` (number)
- `price` (number)
- `image` (string)
- `parentId` (integer)
### GET /product/products/parent
Get Product Parent
- Operation id: `getProductParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductparent
Query parameters:
- `findBySku` (query, string, optional): Find a parent/variant by SKU
- `findById` (query, integer, optional): Find a variant/parent by ID
- `includeVariants` (query, boolean, optional): Include variants for the parent
Responses:
- `200`: OK
- `400`: If neither `findBySku` or `findById` is passed.
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryTwo` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryThree` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `tags` (array of string)
- `listingLinks` (array of object)
- `imageFetcherEventTriggered` (boolean)
### GET /product/parents
Get Product Parents
This endpoint will fetch back a list of Product Parents.
- Operation id: `getProductParents`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductparents
Query parameters:
- `page` (query, integer, optional): page number
- `pageSize` (query, integer, optional): number of elements per page
- `skus` (query, array of string, optional): Finds elements matching these SKUs. Max 50
- `updatedAfter` (query, string, optional): Only retrieves back elements that have been updated after the date specified
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" nodes will be populated.
- `includeVariants` (query, boolean, optional): Include variants for the parent
- `includeOverwrites` (query, boolean, optional): will include dynamic prices and quantities if they are overwritten with fixed values
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates"(Fields) node will not be populated. Custom Aggregates are similar to custom fields, but they can be aggregated across multiple sources.
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
- `includeListingLinks` (query, boolean, optional): If `true`, `listingLinks` will be populated with a list of `Listing Parent IDs` that this product is associated to.
- `deleting` (query, boolean, optional): If true will filter down to products being deleted
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `description` (string)
- `manufacturer` (string)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `categoryOne` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryTwo` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `categoryThree` (object): A product category. These are primarily created during the product building process, and are initially seeded/populated
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `customFields` (array of object)
- `variants` (array of object)
- `categoryOneId` (integer)
- `categoryTwoId` (integer)
- `categoryThreeId` (integer)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `tags` (array of string)
- `listingLinks` (array of object)
- `imageFetcherEventTriggered` (boolean)
### GET /product/variant/{variantId}
Get Product Variant
Get a product variant by ID.
- Operation id: `getProductVariantById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductvariantbyid
Responses:
- `200`: OK
- `400`: Bad Request
- `404`: Not Found
Success response body, object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `productParentId` (integer)
- `price` (number): The dynamic price, or locked price if overwritten.
- `salePrice` (number)
- `estimatedShippingCost` (number): The dynamic estimated shipping cost, or locked estimated shipping cost if overwritten.
- `estimatedDropshipFee` (number): The dynamic estimated dropship fee, or locked estimated dropship fee if overwritten.
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `inventoryLinks` (array of object)
- `productAlternatives` (array of object)
- `referenceIdentifier` (string)
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number): The dynamic MSRP, or locked MSRP if overwritten.
- `map` (number): The dynamic MAP, or locked MAP if overwritten.
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number): The dynamic cost, or locked cost if overwritten.
- `quantity` (integer): The dynamic quantity, or locked quantity if overwritten.
- `pendingFulfillmentQuantity` (integer): The # of items on active orders that are waiting to be added to Fulfillment Requests
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- ...and 12 more fields, see the docs page
### GET /product/variants
Get Product Variants
This endpoint will fetch back a list of Product Variants. You cannot use both `findBySKUs` and `findByIds` in a single request
- Operation id: `getProductVariantsV2`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/getproductvariantsv2
Query parameters:
- `page` (query, integer, optional): page number
- `pageSize` (query, integer, optional): number of elements per page
- `updatedAfter` (query, string, optional): Only retrieves back inventory records that hae been updated after the date specified
- `skus` (query, array of string, optional): Finds elements matching these SKUs. Max must be less than or equal to pageSize.
- `upcs` (query, array of string, optional): Finds elements matching these UPCs. Max must be less than or equal to pageSize.
- `ids` (query, array of integer, optional): Finds elements matching these IDs. Max must be less than or equal to pageSize.
- `includeOverwrites` (query, boolean, optional): If `true` will include a list of Price/Quantity overwrites
- `includeCustomAggregates` (query, boolean, optional): If "false" is passed, the "customAggregates"(Fields) node will not be populated. Custom Aggregates are similar to custom fields, but they can be aggregated across multiple sources.
- `includeCustomFields` (query, boolean, optional): If "true" is passed, the "customFields" nodes will be populated.
- `includeImages` (query, boolean, optional): If "false" is passed, the "image" and "parent.image" nodes will not be populated
- `includeOptions` (query, boolean, optional): If "false" is passed, the "options" and "parent.options" nodes will not be populated
- `includeInventoryLinks` (query, boolean, optional): If `true`, `inventoryLinks` will be populated with a list of `Inventory Variant IDs` that this product is associated to.
- `includeListingLinks` (query, boolean, optional): If `true`, `listingLinks` will be populated with a list of `Listing Variant IDs` that this product is associated to.
- `includeParent` (query, boolean, optional): If "true" is passed, the "parent" node will be populated with Parent information. NOTE : The "variants" will be empty in this node to prevent circular references.
- `includeAttributes` (query, boolean, optional): If "true" is passed, the "parent.attributes" node will be populated.
- `includeCategories` (query, boolean, optional): If "true" is passed, the parent category nodes will be populated.
- `includeBundleComponents` (query, boolean, optional): Use this to include `ProductBundleComponents` associated with the product variant. By default they are not included.
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `priceOverwrite` (object)
- `quantityOverwrite` (object)
- `productParentId` (integer)
- `price` (number): The dynamic price, or locked price if overwritten.
- `salePrice` (number)
- `estimatedShippingCost` (number): The dynamic estimated shipping cost, or locked estimated shipping cost if overwritten.
- `estimatedDropshipFee` (number): The dynamic estimated dropship fee, or locked estimated dropship fee if overwritten.
- `inventoryListPrice` (number)
- `imagesFetched` (boolean)
- `productBuilderId` (integer)
- `builtWithMappingTemplateId` (integer)
- `builtAt` (string)
- `rebuiltAt` (string)
- `inventoryLinks` (array of object)
- `productAlternatives` (array of object)
- `referenceIdentifier` (string)
- `id` (integer)
- `sku` (string, required)
- `title` (string)
- `mpn` (string)
- `upc` (string)
- `ean` (string)
- `asin` (string)
- `msrp` (number): The dynamic MSRP, or locked MSRP if overwritten.
- `map` (number): The dynamic MAP, or locked MAP if overwritten.
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `insertedAt` (string)
- `updatedAt` (string)
- `archived` (boolean)
- `cost` (number): The dynamic cost, or locked cost if overwritten.
- `quantity` (integer): The dynamic quantity, or locked quantity if overwritten.
- `pendingFulfillmentQuantity` (integer): The # of items on active orders that are waiting to be added to Fulfillment Requests
- `weightUnit` (object)
- `dimensionUnit` (object)
- `dimensionalWeight` (number)
- `images` (array of object)
- `options` (array of object)
- ...and 12 more fields, see the docs page
### POST /product/variant/{variantId}/alternatives
Save Product Alternatives
- Operation id: `saveProductAlternatives`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/saveproductalternatives
Request body (application/json), array of integer:
Responses:
- `200`: OK
### PATCH /product/parents/{parentId}/tags
Update Product Parent Tags
Adds and/or removes tags on the entity by name. Tags in `add` that do not exist yet are created. Returns the entity's full tag list after the update, sorted alphabetically.
- Operation id: `updateProductParentTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/updateproductparenttags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
### PATCH /product/variants/{variantId}/tags
Update Product Variant Tags
Adds and/or removes tags on the entity by name. Tags in `add` that do not exist yet are created. Returns the entity's full tag list after the update, sorted alphabetically.
- Operation id: `updateProductVariantTags`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product/updateproductvarianttags
Request body (application/json), object:
- `add` (array of string)
- `remove` (array of string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
---
## Product Builder
13 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/product-builder
### PUT /product/builder/issues/{issueId}/build
Build Product From Existing Issue
From the specified `issueId` try to again build the underlying inventory variant into a product.
- Operation id: `tryToBuildIssueAgain`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/trytobuildissueagain
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `built` (boolean, required)
- `rebuilt` (boolean, required)
- `linked` (boolean, required)
- `alreadyBuiltAndLinked` (boolean, required)
- `needsReview` (boolean, required)
- `productVariantId` (integer)
- `productParentId` (integer)
- `inventoryVariantId` (integer, required)
- `issue` (object)
- `removedDueToStaleMatch` (boolean, required): If an issue previously arose between an inventory variant and a product variant and either of the values the original ma
- `discarded` (boolean, required)
- `productToListingBuilderList` (array of object)
### POST /product/builder/build/{inventoryVariantId}
Build Product from Inventory Variant
Create a product from a specified `inventoryVariantId`
- Operation id: `createProductFromInventoryVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/createproductfrominventoryvariant
Request body (application/json), object:
- `productBuilderId` (integer): (optional) A specific product builder to use. If null the system default will be used.
- `mappingTemplateId` (integer): (optional) A specific mapping template to use. If null the system default will be used.
- `fetchImages` (boolean): If true, images fetch events will be triggered.
Responses:
- `200`: OK - A list of builder responses. This returns a list as a single inventory variant may match to multiple product variants.
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `built` (boolean, required)
- `rebuilt` (boolean, required)
- `linked` (boolean, required)
- `alreadyBuiltAndLinked` (boolean, required)
- `needsReview` (boolean, required)
- `productVariantId` (integer)
- `productParentId` (integer)
- `inventoryVariantId` (integer, required)
- `issue` (object)
- `removedDueToStaleMatch` (boolean, required): If an issue previously arose between an inventory variant and a product variant and either of the values the original ma
- `discarded` (boolean, required)
- `productToListingBuilderList` (array of object)
### DELETE /product/builder/issues/{issueId}
Delete Product Builder Issue
Deletes a product builder issue by ID.
- Operation id: `deleteProductBuilderIssueById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/deleteproductbuilderissuebyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
### DELETE /product/builder/issues
Delete Product Builder Issues
This will delete all build issues associated with the `inventoryVariantId`
- Operation id: `deleteProductBuilderIssues`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/deleteproductbuilderissues
Query parameters:
- `inventoryVariantId` (query, integer, optional): Delete issues that a specific inventory variant is associated with
- `productVariantId` (query, integer, optional): Delete issues that a specific product variant is associated with
Responses:
- `200`: OK
- `401`: Unauthorized
### GET /product/builder/pending-count
Get Product Builder Count
Get the total number of pending & failed inventory variants that are being currently being built into products.
- Operation id: `getProductBuilderPendingCounts`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/getproductbuilderpendingcounts
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `count` (integer, required)
- `failedCount` (integer)
### GET /product/builder/issues/{issueId}
Get Product Builder Issue
Only exists when a state that requires human intervention is encountered (based on buidler settings). This will return the data points necessary to alter & make decisions on how the inventory variant should be treated in further attempts to convert it to a product variant.
- Operation id: `getProductBuilderIssueById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/getproductbuilderissuebyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer, required)
- `inventoryVariantId` (integer, required)
- `accountId` (integer)
- `insertedAt` (string)
- `mappingTemplateId` (integer)
- `productBuilderId` (integer)
- `matchedProductVariantId` (integer): The product variant ID that this inventory variant matched with on the basis of a shared GTIN that it will be added as a
- `type` (string (mismatch | duplicate_sources | archived | parent_creation | parent_attachment | duplicate_sku | pending_build | invalid_upc))
- `status` (string (keep | needs_review | discard))
- `matchType` (string (upc | mpn | ean | asin | reference_identifier | master_sku | inventory_sku)): The ID type that this inventory variant matched against an existing product variant with.
- `matchValue` (string): The ID value that this inventory variant matched against an existing product variant with.
- `productMatchType` (string (upc | mpn | ean | asin | reference_identifier | master_sku)): The ID type that was used to match to an existing product variant from an inventory variant. NOTE : This value will be e
- `triggeredLinkRules` (array of object): The product builder link rules that failed when run against this inventory variant and the existing linked ones.
- `mismatchActionKeep` (boolean): When the issue is of the type `MISMATCH` setting this to true will allow the next build attempt for the inventory varian
- `duplicateSourceActionKeep` (boolean): When the issue is of the type `DUPLICATE_SOURCE` setting this to true will allow the next build attempt for the inventor
- `duplicateSourceInventoryVariantId` (integer): The inventory variant ID that is from the same source
- `archivedActionKeep` (boolean): When the issue is of the type `ARCHIVE` setting this to true will allow the next build attempt for the inventory variant
- `parentCreationActionKeep` (boolean): When the issue is of the type `PARENT_CREATION` setting this to true will allow the next build attempt for the inventory
- `parentAttachmentActionKeep` (boolean): When the issue is of the type `PARENT_ATTACHMENT` setting this to true will allow the next build attempt for the invento
- `duplicateSkuProductVariantId` (integer)
- `duplicateUseSku` (string): When the issue is of the type `DUPLICATE_SKU` setting this will cause the next build attempt of the inventory variant to
- `generatedVariantSku` (string): The variant SKU that was generated by running the inventory variant and all of the other linked inventory variants throu
- `generatedParentSku` (string): The parent SKU that was generated by running the inventory variant and all of the other linked inventory variants throug
- `parentAttachmentProductParentId` (integer): The ID of the product parent that this inventory variant is pending being attached to.
- `hasListingsToBuild` (boolean)
- `internalBuildErrorMessage` (string): Internal build error message in case product fails to build with any readable message
- `internalBuildErrorOn` (string): If non-null this is a timestamp indicating that the last build of this issue failed
- `batchId` (string)
- `parentAttachmentDifferentSourceActionKeep` (boolean): When true, the different-source parent attachment warning is bypassed and the variant is attached to the matched parent.
### GET /product/builder/issues
Get Product Builder Issues
Get builder issues that require human intervention (mostly based on buidler settings). This endpoint returns an array of issues for any given `inventoryVariantId` or `productVariantId` as a single inventory variant can match against a potentially unlimited number of product variants that match/share a common identifier (ie UPC) and therefore there can be more than 1 issue for any given inventory/product variant. It may also contain results where there is no match to an existing product but there is human intervention required IE when the product is archived or when the SKU is already in use by an existing product.
- Operation id: `getProductBuilderIssues`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/getproductbuilderissues
Query parameters:
- `inventoryVariantId` (query, integer, optional): Get issues that a specific inventory variant is associated with
- `productVariantId` (query, integer, optional): Get issues that a specific product variant is associated with
Responses:
- `200`: OK
- `400`: If neither `inventoryVariantId` or `productVariantId` is passed in the GET params.
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer, required)
- `inventoryVariantId` (integer, required)
- `accountId` (integer)
- `insertedAt` (string)
- `mappingTemplateId` (integer)
- `productBuilderId` (integer)
- `matchedProductVariantId` (integer): The product variant ID that this inventory variant matched with on the basis of a shared GTIN that it will be added as a
- `type` (string (mismatch | duplicate_sources | archived | parent_creation | parent_attachment | duplicate_sku | pending_build | invalid_upc))
- `status` (string (keep | needs_review | discard))
- `matchType` (string (upc | mpn | ean | asin | reference_identifier | master_sku | inventory_sku)): The ID type that this inventory variant matched against an existing product variant with.
- `matchValue` (string): The ID value that this inventory variant matched against an existing product variant with.
- `productMatchType` (string (upc | mpn | ean | asin | reference_identifier | master_sku)): The ID type that was used to match to an existing product variant from an inventory variant. NOTE : This value will be e
- `triggeredLinkRules` (array of object): The product builder link rules that failed when run against this inventory variant and the existing linked ones.
- `mismatchActionKeep` (boolean): When the issue is of the type `MISMATCH` setting this to true will allow the next build attempt for the inventory varian
- `duplicateSourceActionKeep` (boolean): When the issue is of the type `DUPLICATE_SOURCE` setting this to true will allow the next build attempt for the inventor
- `duplicateSourceInventoryVariantId` (integer): The inventory variant ID that is from the same source
- `archivedActionKeep` (boolean): When the issue is of the type `ARCHIVE` setting this to true will allow the next build attempt for the inventory variant
- `parentCreationActionKeep` (boolean): When the issue is of the type `PARENT_CREATION` setting this to true will allow the next build attempt for the inventory
- `parentAttachmentActionKeep` (boolean): When the issue is of the type `PARENT_ATTACHMENT` setting this to true will allow the next build attempt for the invento
- `duplicateSkuProductVariantId` (integer)
- `duplicateUseSku` (string): When the issue is of the type `DUPLICATE_SKU` setting this will cause the next build attempt of the inventory variant to
- `generatedVariantSku` (string): The variant SKU that was generated by running the inventory variant and all of the other linked inventory variants throu
- `generatedParentSku` (string): The parent SKU that was generated by running the inventory variant and all of the other linked inventory variants throug
- `parentAttachmentProductParentId` (integer): The ID of the product parent that this inventory variant is pending being attached to.
- `hasListingsToBuild` (boolean)
- `internalBuildErrorMessage` (string): Internal build error message in case product fails to build with any readable message
- `internalBuildErrorOn` (string): If non-null this is a timestamp indicating that the last build of this issue failed
- `batchId` (string)
- `parentAttachmentDifferentSourceActionKeep` (boolean): When true, the different-source parent attachment warning is bypassed and the variant is attached to the matched parent.
### GET /product/builder
Get Product Builders
Get configured available product buidlers. Does not include full settings. Use builder specific endpoint to retrieve full data.
- Operation id: `getProductBuilders`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/getproductbuilders
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `accountId` (integer)
- `createdByUserId` (integer)
- `modifiedAt` (string)
- `useAsDefault` (boolean): Indicate that this product builder should be used by default during product building if no other product builder is manu
- `name` (string)
- `onConflictLink` (boolean)
- `attachToExistingParent` (boolean)
- `firstVariantImage` (boolean)
- `firstVariantTitle` (boolean)
- `mappingEventId` (integer)
- `linkOnMasterSku` (boolean)
- `linkOnUpc` (boolean)
- `linkOnMpn` (boolean)
- `linkOnAsin` (boolean)
- `linkOnEan` (boolean)
- `linkOnReferenceIdentifier` (boolean)
- `linkingFields` (array of object)
- `rebuildListingsForChannelIds` (array of integer)
- `archivedAction` (string (create | review | fail))
- `parentAttachmentTypePriority` (string (intelligent | basic))
- `parentAttachmentIntelligentMatchAction` (string (attach | review | fail))
- `parentAttachmentBasicMatchAction` (string (attach | review | fail))
- `parentCreationAction` (string (create | review | fail))
- `parentAttachmentDifferentSourceAction` (string (create | review | attach))
- `duplicateSkuReview` (boolean)
- `duplicateSourceReview` (boolean)
- `allowVariantCreation` (boolean)
- `rebuildVariantWhenNewlyLinked` (boolean)
- `rebuildVariantWhenAlreadyLinked` (boolean)
- `rebuildParentWhenVariantNewlyLinked` (boolean)
- `rebuildParentWhenVariantAlreadyLinked` (boolean)
- `upcValidationAction` (string (create | review | fail))
### GET /product/builder/re-build/pending-count
Get Product Rebuild Count
Get the total number of pending & failed product variants that are being currently being re-built into products.
- Operation id: `getProductBuilderRebuildPendingCount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/getproductbuilderrebuildpendingcount
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `variantCount` (integer)
- `variantFailedCount` (integer)
- `parentCount` (integer)
- `parentFailedCount` (integer)
### GET /product/builder/re-build/next
Rebuild Next Product
Will re-build the next queued parent/variants. This endpoint is only allowed to be consumed via internal flxpoint services.
- Operation id: `rebuildNextProduct`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/rebuildnextproduct
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, object:
- `hasMore` (boolean, required)
- `parentHadError` (boolean)
- `productParentId` (integer)
- `productVariantIdsWithError` (array of integer)
- `productVariantIds` (array of integer)
### POST /product/builder/re-build/parent/{productParentId}
Rebuild Product Parent
Rebuild a product parent and optionally it's variants as well.
- Operation id: `rebuildProductParent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/rebuildproductparent
Query parameters:
- `rebuildVariants` (query, boolean, optional): Whether variants of the parent should be rebuilt as well.
Request body (application/json), object:
- `productBuilderId` (integer): (optional) A specific product builder to use. If null the system default will be used.
- `mappingTemplateId` (integer): (optional) A specific mapping template to use. If null the system default will be used.
- `fetchImages` (boolean): If true, images fetch events will be triggered.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `success` (boolean, required)
- `error` (string)
### POST /product/builder/re-build/variant/{productVariantId}
Rebuild Product Variant
Re-build a product variant
- Operation id: `rebuildProductVariant`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/rebuildproductvariant
Request body (application/json), object:
- `productBuilderId` (integer): (optional) A specific product builder to use. If null the system default will be used.
- `mappingTemplateId` (integer): (optional) A specific mapping template to use. If null the system default will be used.
- `fetchImages` (boolean): If true, images fetch events will be triggered.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `success` (boolean, required)
- `error` (string)
### PUT /product/builder/issues/{issueId}
Update Product Builder Issue
Update an issue. Only these properties of a `ProductBuilderIssue` are allowed to be updated : - `mismatchActionKeep` - `duplicateSourceActionkeep` - `archivedActionKeep` - `parentCreationActionKeep` - `parentAttachmentActionkeep` Setting any of the above properties to a value of `false` will result in the issue being deleted as no further action is necessary on the issue at that point. The rest of the properties are immutable.
- Operation id: `putProductBuilderIssueById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/product-builder/putproductbuilderissuebyid
Request body (application/json), object:
- `id` (integer, required)
- `inventoryVariantId` (integer, required)
- `accountId` (integer)
- `insertedAt` (string)
- `mappingTemplateId` (integer)
- `productBuilderId` (integer)
- `matchedProductVariantId` (integer): The product variant ID that this inventory variant matched with on the basis of a shared GTIN that it will be added as a
- `type` (string (mismatch | duplicate_sources | archived | parent_creation | parent_attachment | duplicate_sku | pending_build | invalid_upc))
- `status` (string (keep | needs_review | discard))
- `matchType` (string (upc | mpn | ean | asin | reference_identifier | master_sku | inventory_sku)): The ID type that this inventory variant matched against an existing product variant with.
- `matchValue` (string): The ID value that this inventory variant matched against an existing product variant with.
- `productMatchType` (string (upc | mpn | ean | asin | reference_identifier | master_sku)): The ID type that was used to match to an existing product variant from an inventory variant. NOTE : This value will be e
- `triggeredLinkRules` (array of object): The product builder link rules that failed when run against this inventory variant and the existing linked ones.
- `mismatchActionKeep` (boolean): When the issue is of the type `MISMATCH` setting this to true will allow the next build attempt for the inventory varian
- `duplicateSourceActionKeep` (boolean): When the issue is of the type `DUPLICATE_SOURCE` setting this to true will allow the next build attempt for the inventor
- `duplicateSourceInventoryVariantId` (integer): The inventory variant ID that is from the same source
- `archivedActionKeep` (boolean): When the issue is of the type `ARCHIVE` setting this to true will allow the next build attempt for the inventory variant
- `parentCreationActionKeep` (boolean): When the issue is of the type `PARENT_CREATION` setting this to true will allow the next build attempt for the inventory
- `parentAttachmentActionKeep` (boolean): When the issue is of the type `PARENT_ATTACHMENT` setting this to true will allow the next build attempt for the invento
- `duplicateSkuProductVariantId` (integer)
- `duplicateUseSku` (string): When the issue is of the type `DUPLICATE_SKU` setting this will cause the next build attempt of the inventory variant to
- `generatedVariantSku` (string): The variant SKU that was generated by running the inventory variant and all of the other linked inventory variants throu
- `generatedParentSku` (string): The parent SKU that was generated by running the inventory variant and all of the other linked inventory variants throug
- `parentAttachmentProductParentId` (integer): The ID of the product parent that this inventory variant is pending being attached to.
- `hasListingsToBuild` (boolean)
- `internalBuildErrorMessage` (string): Internal build error message in case product fails to build with any readable message
- `internalBuildErrorOn` (string): If non-null this is a timestamp indicating that the last build of this issue failed
- `batchId` (string)
- `parentAttachmentDifferentSourceActionKeep` (boolean): When true, the different-source parent attachment warning is bypassed and the variant is attached to the matched parent.
Responses:
- `200`: OK - If the modifications to the issue will result in no further actions being necessary and it not being built/linked to a product then it will be deleted and this will be indicated in the response `deleted` property.
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `deleted` (boolean, required)
---
## Purchase Order
15 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/purchase-order
### PATCH /purchase-orders/{purchaseOrderId}/acknowledge
[Deprecated] Acknowledge Purchase Order
Acknowledge all PO Line item quantities which are not already acknowledged/canceled
**Deprecated.**
- Operation id: `acknowledgeAllPoItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/acknowledgeallpoitems
Request body (application/json), object:
- `confirmationNumber` (string)
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### PATCH /purchase-orders/{purchaseOrderId}/committed-stock
[Deprecated] Adjust Applicable Committed Stock
This endpoint will intelligently reconcile and adjust/release all applicable committed stock for the PO. The cases in which these occurr are as follows : - Shipments : Will automatically release any committed stock for associated shipments that have not yet had their shipped quantity released. - Canceled & Voided : Will automatically release all committed stock in the case that the PO is now canceled or voided. - Line Item Qty Change : If a PO prior to being processed has any quantities modified this endpoint will reconcile the difference between what is already committed and what was modified and will then either release or add the difference. This endpoint will not double/over release when interacted with multiple times (it's idempotent). This makes it safe to call even if you are unsure of whether or not all stock has been appropriately released.
**Deprecated.**
- Operation id: `adjustApplicableCommittedStock`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/adjustapplicablecommittedstock
Responses:
- `200`: OK
- `204`: No Content
- `401`: Unauthorized
- `404`: Not Found
### POST /purchase-orders/{purchaseOrderId}/adjust
[Deprecated] Adjust Purchase Order
This endpoint allows for partial acknowledgements and/or cancellations by specifying items.
**Deprecated.**
- Operation id: `adjustPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/adjustpurchaseorder
Request body (application/json), object:
- `items` (array of object)
- `killOrFillType` (string (fill | kill)): `killOrFillType` can be either `fill` Or `kill`. By default it will be `fill`. - `fill` : This will unallocate the quant
- `cancelUnacknowledgedItemQuantity` (boolean): Indicate whether or not remaining unacknowledged quantity should be canceled. Passing a `null` value here will use the e
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### PATCH /purchase-orders/{purchaseOrderId}/cancel
[Deprecated] Cancel Purchase Order
Cancels all PO Line item quantities which are not already acknowledged/canceled
**Deprecated.**
- Operation id: `cancelAllPoItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/cancelallpoitems
Query parameters:
- `killOrFillType` (query, string (kill | fill), optional): `killOrFillType` can be either `fill` Or `kill`. By default it will be `fill`. `fill` : This will unallocate the quantities from the order item level so that another PO can be generated for alternative fulfillment. `kill` : This will cancel the quantities at the order item level indicating no further fulfillment should occur.
- `cancelReason` (query, string, optional): use this to state the reason for cancel
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### POST /purchase-orders/{purchaseOrderId}/committed-stock
[Deprecated] Commit Stock For Purchase Order
Commit Stock for purchase order
**Deprecated.**
- Operation id: `commitStockForPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/commitstockforpurchaseorder
Responses:
- `200`: OK
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
### POST /purchase-orders
[Deprecated] Create Purchase Order
Deprecated, please use POST /fulfillment-requests This endpoint creates a Purchase Order (PO)! Purchase Orders can be created by using an Account token. A `sourceId` is required to create a Purchase Order. PO Items are associated to `Order Items` by `orderItemId`. PO Items are associated to `Inventory` by `sku` or `inventoryVariantId`. For more information, see the `item` request details below. When an Purchase Order is created, it will : - Estimate Shipping Costs (via Workflow or Rate Shopping) - Estimate Dropship Fees (via Workflow) - Run `PO/FR Strategy` settings (Auto Processing, PO Workflow, PO # Utilities, etc.) For more information about Purchase Orders, see our docs : https://docs.flxpoint.com/flxpoint/purchase-orders-fulfillment-requests
**Deprecated.**
- Operation id: `createPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/createpurchaseorder
Request body (application/json), object:
- `purchaseOrderNumber` (string): A unique identifier that will be passed to your source to identify the PO. If one is not provided the default account &
- `purchaseOrderType` (string (PO | FR | TO | SPO | FO)): The type of PO : - Purchase Order (PO) - Fulfillment Request (FR) [Deprecated - use Fulfillment Order instead] - Transfe
- `purchaseOrderStatus` (string (unprocessed | processing | processed | acknowledged | voided | canceled | po_number_exceeds_max_length | duplicate)): Leave `null` to let Flxpoint handle via Workflow rules (PO Strategy settings). A `non-null` status will by-pass any PO S
- `orderId` (integer, required): The flxpoint ID of the order this PO is for
- `sourceId` (integer, required): The flxpoint source ID the PO should be fulfilled to
- `shippingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `billingAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `shippingText` (string): Deprecated
- `note` (string): A note that can optionally be passed through all the way to the source
- `totalCost` (number)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `suppressTracking` (boolean): If set to true shipments for this PO will not be propagated to the originating channel order via sync order operations i
- `fflInfoRequired` (boolean): Set to true to indicate that the PO contains items that are firearms and will require valid FFL license information befo
- `holdUntil` (string): If passed the PO will not be processed via automated flxpoint operations until a time older than the value passed
- `rateShoppedId` (string): Used by internal flxpoint processes to track third party rate shopping responses
- `packageDimensionUnit` (string (inch | centimeter)): used to specify the unit of measurement being used by packageLength, packageHeight, packageWidth. Currently our system s
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (string (pound | ounce | gram | kilogram)): used to specify the unit of measurement being used by packageWeight. Currently our system supports 'pound', 'ounce', 'gr
- `packageWeight` (number)
- `crossDockPurchaseOrderId` (integer): Establish this PO as part of a cross docking request by providing the cross dock PO ID
- `purchaseOrderItems` (array of object, required)
- `purchaseOrderAttributes` (array of object): if there is a requirement to associate some extra information with the purchase order, it can be done by passing an arra
- `sourceShippingMethodId` (integer): The ID of the method you intend for the source to ship the PO via. You are required to configure these yourself on your
- `shippingDistance` (number): Leave `null` for Flxpoint to calculate shipping distance. If a `non-null` value is passed, Flxpoint will not calculate s
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
Responses:
- `201`: Created
- `400`: Bad Request
- `401`: Unauthorized
- `409`: PO Number is already in use.
Success response body, object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### PATCH /purchase-orders/{purchaseOrderId}/processing-failed
[Deprecated] Fail Purchase Order
Update Purchase Order as failed during processing.
Only a purchase order in processing status `Processing` or `Processed` can be updated as `Failed`.
It will then transition into processing status `Processing Error`.
**Deprecated.**
- Operation id: `failPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/failpurchaseorder
Query parameters:
- `error` (query, string, required): reason why processing failed
Responses:
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### GET /purchase-orders/{purchaseOrderId}/committed-stock
[Deprecated] Get Committed Stock For Purchase Order
Get committed stock for a purchase order
**Deprecated.**
- Operation id: `getCommittedStockForPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/getcommittedstockforpurchaseorder
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `inventoryVariantId` (integer)
- `sourceId` (integer)
- `purchaseOrderId` (integer)
- `purchaseOrderItemId` (integer)
- `quantity` (integer)
- `purchaseOrderItemQuantity` (integer): this is set equal to purchase order item quantity. This is used to compare with purchase order item quantity and figure
- `committedAt` (string)
- `updatedAt` (string)
### GET /purchase-orders/count
[Deprecated] Get Count of Purchase Orders
This endpoint will get a count of Purchase Orders applicable to your filters
**Deprecated.**
- Operation id: `getPurchaseOrdersCount`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/getpurchaseorderscount
Query parameters:
- `findOrderId` (query, integer, optional): Filter Purchase Orders by Order ID.
- `sinceId` (query, integer, optional): If passed, returns results with an ID greater than this.
- `poNumbers` (query, array of string, optional): Finds elements matching these Purchase Order Numbers. Max 50
- `filterSourceId` (query, integer, optional): Filter Purchase Orders by Source ID.
- `filterFulfilmentStatus` (query, string (Awaiting Shipment | Shipped | Partially Shipped | Canceled), optional): Filter Purchase Orders by Fulfillment Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterInvoiced` (query, boolean, optional): Filter Purchase Orders that have source invoice available.
- `filterStatus` (query, string (Unprocessed | Processed | Acknowledged | Canceled | Failed | Voided | Processing | Additional Info Required), optional): Filter Purchase Orders by Purchase Order Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterIsAcknowledged` (query, boolean, optional): Filters Purchase Orders based on whether or they were acknowledged (true returns only acknowledged, false only those that are not acknowledged).
- `filterAcknowledgedAfter` (query, string, optional): Filter Purchase Orders that were acknowledged after this date-time.
- `filterIsSent` (query, boolean, optional): Filters Purchase Orders based on whether or they have been sent to the source (true returns only those that have been sent, false only those that have not yet been sent).
- `filterSentAfter` (query, string, optional): Filter Purchase Orders that were sent after this date-time.
- `filterGeneratedAfter` (query, string, optional): Filter Purchase Orders that were generated after this date-time.
- `filterIsCanceled` (query, boolean, optional): Filters Purchase Orders based on whether or they were canceled (true returns only canceled, false only those that are not canceled).
- `filterCanceledAfter` (query, string, optional): Filters Purchase Orders that were canceled after this date-time.
- `filterIsVoided` (query, boolean, optional): Filters Purchase Orders based on whether or they were voided (true returns only voided, false only those that are not voided).
- `filterVoidedAfter` (query, string, optional): Filters Purchase Orders that were voided after this date-time.
- `filterIsHeld` (query, boolean, optional): Filters Purchase Orders based on whether or they are being held (true returns only held, false only those that are not held).
- `filterHasError` (query, boolean, optional): Filters Purchase Orders based on whether or they have a processing error (true returns only those with errors, false only those without errors).
- `filterEligibleForProcessing` (query, boolean, optional): Filters Fulfillment Requests based on whether the order it related to is Open/Not Managed (true returns only if the order it is related to is Open/Not Managed, false does not filter PO based on order status).
- `filterPurchaseOrderTypeIds` (query, array of integer, optional): Filter Purchase Orders by type id, using ids from the PurchaseOrderType Enum.
- `isPurchaseOrderAccountingSynced` (query, boolean, optional): Filter to only include Purchase Orders that have been synced to an Accounting Integration.
- `isOrderAccountingSynced` (query, boolean, optional): Filter to only include those created for Orders that have been synced to an Accounting Integration. Does not relate to the whether or not the Purchase Order has been synced.
- `hasAccountingError` (query, boolean, optional): Filter to include Purchase Orders based on whether or not they have a previous error saved while sending to an Accounting Integration
- `filterOrderInvoiced` (query, boolean, optional): Filter to only include those created for Orders that have invoices. Does not relate to the whether or not the Purchase Order has been invoiced.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `count` (integer, required)
### GET /purchase-orders/{purchaseOrderId}
[Deprecated] Get Purchase Order
**Deprecated.**
- Operation id: `getPurchaseOrderById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/getpurchaseorderbyid
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### GET /purchase-orders/{sourceId}/{purchaseOrderNumber}
[Deprecated] Get Purchase Order By PO #
This endpoint is deprecated, please use `GET /purchase-orders` and pass `findByPONumber`
**Deprecated.**
- Operation id: `getPurchaseOrderByPurchaseOrderNumber`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/getpurchaseorderbypurchaseordernumber
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### GET /purchase-orders
[Deprecated] Get Purchase Orders
Deprecated, please use GET /fulfillment-requests (This endpoint will retrieve back Purchase Orders / Fulfillment Requests)
**Deprecated.**
- Operation id: `getPurchaseOrders`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/getpurchaseorders
Query parameters:
- `findOrderId` (query, integer, optional): Filter Purchase Orders by Order ID.
- `sinceId` (query, integer, optional): If passed, returns results with an ID greater than this.
- `poNumbers` (query, array of string, optional): Finds elements matching these Purchase Order Numbers. Max 50
- `filterSourceId` (query, integer, optional): Filter Purchase Orders by Source ID.
- `filterFulfilmentStatus` (query, string (Awaiting Shipment | Shipped | Partially Shipped | Canceled), optional): Filter Purchase Orders by Fulfillment Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterInvoiced` (query, boolean, optional): Filter Purchase Orders that have source invoice available.
- `filterPageNumber` (query, integer, optional): Current Page
- `filterPageSize` (query, integer, optional): Number of entries per page
- `filterStatus` (query, string (Unprocessed | Processed | Acknowledged | Canceled | Failed | Voided | Processing | Additional Info Required), optional): Filter Purchase Orders by Purchase Order Status. Accepts a comma-separated list to filter on multiple statuses at once.
- `filterIsAcknowledged` (query, boolean, optional): Filters Purchase Orders based on whether or they were acknowledged (true returns only acknowledged, false only those that are not acknowledged).
- `filterAcknowledgedAfter` (query, string, optional): Filter Purchase Orders that were acknowledged after this date-time.
- `filterIsSent` (query, boolean, optional): Filters Purchase Orders based on whether or they have been sent to the source (true returns only those that have been sent, false only those that have not yet been sent).
- `filterSentAfter` (query, string, optional): Filter Purchase Orders that were sent after this date-time.
- `filterGeneratedAfter` (query, string, optional): Filter Purchase Orders that were generated after this date-time.
- `filterIsCanceled` (query, boolean, optional): Filters Purchase Orders based on whether or they were canceled (true returns only canceled, false only those that are not canceled).
- `filterCanceledAfter` (query, string, optional): Filters Purchase Orders that were canceled after this date-time.
- `filterIsVoided` (query, boolean, optional): Filters Purchase Orders based on whether or they were voided (true returns only voided, false only those that are not voided).
- `filterVoidedAfter` (query, string, optional): Filters Purchase Orders that were voided after this date-time.
- `filterIsHeld` (query, boolean, optional): Filters Purchase Orders based on whether or they are being held (true returns only held, false only those that are not held).
- `filterHasError` (query, boolean, optional): Filters Purchase Orders based on whether or they have a processing error (true returns only those with errors, false only those without errors).
- `filterEligibleForProcessing` (query, boolean, optional): Filters Fulfillment Requests based on whether the order it related to is Open/Not Managed (true returns only if the order it is related to is Open/Not Managed, false does not filter PO based on order status).
- `filterPurchaseOrderTypeIds` (query, array of integer, optional): Filter Purchase Orders by type id, using ids from the PurchaseOrderType Enum.
- `isPurchaseOrderAccountingSynced` (query, boolean, optional): Filter to only include Purchase Orders that have been synced to an Accounting Integration.
- `isOrderAccountingSynced` (query, boolean, optional): Filter to only include those created for Orders that have been synced to an Accounting Integration. Does not relate to the whether or not the Purchase Order has been synced.
- `hasAccountingError` (query, boolean, optional): Filter to include Purchase Orders based on whether or not they have a previous error saved while sending to an Accounting Integration
- `filterOrderInvoiced` (query, boolean, optional): Filter to only include those created for Orders that have invoices. Does not relate to the whether or not the Purchase Order has been invoiced.
- `includeTags` (query, boolean, optional): Determines if "tags" are returned in the response
- `hasTag` (query, string, optional): Only returns Purchase Orders that have the matching tag
- `filterStockCommitted` (query, boolean, optional): Filter Purchase Orders that have stock committed.
- `filterOrderStatus` (query, string (Open | Closed | On Hold | Failed | No Shipping Method | Canceled | Not Managed), optional): Only returns Purchase Orders associated with orders that have the matching status.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, array of object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### GET /purchase-orders/processing
[Deprecated] Get Purchase Orders Processing
This endpoint will retrieve a list of Purchase Orders AND `Update the POs to Processed` NOTE : This means, if our API times out for you - those POs may transition into a "Processed" state despite you not receiving them. It's not recommended to use this endpoint, and it may be deprecated in the near future. We'd recommend using `GET /purchase-orders` to retrieve and `PATCH /purchase-orders/{purchaseOrderId}/acknowledge` to respond
**Deprecated.**
- Operation id: `getPurchaseOrdersInProcessingAndTransitionThemToProcessed`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/getpurchaseordersinprocessingandtransitionthemtoprocessed
Query parameters:
- `filterSourceId` (query, integer, optional): filter Purchase Orders by Source ID
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `purchaseOrderNumber` (string)
- `orderId` (integer)
- `sentAt` (string)
- `sourceId` (integer)
- `acknowledgedAt` (string)
- `secondaryAcknowledgedAt` (string)
- `canceledAt` (string)
- `shippingAddress` (object)
- `billingAddress` (object)
- `shippingText` (string)
- `note` (string): A note that can optionally be passed through all the way to the source
- `confirmationNumber` (string)
- `shippedStatus` (string (Not Started | Partially Completed | Completed))
- `purchaseOrderStatus` (object)
- `purchaseOrderFulfillmentStatus` (object)
- `generatedAt` (string)
- `voidedAt` (string)
- `accountId` (integer)
- `totalItems` (integer)
- `totalCost` (number)
- `totalQuantity` (integer)
- `shippedQuantity` (integer)
- `estimatedShippingCost` (number)
- `estimatedDropshipFee` (number)
- `sourceShippingMethod` (object): NOTE: The `shippingCarrier` and `shippingCarrierMethod` fields are now deprecated. To get the associated shipping
- `suppressTracking` (boolean)
- `beingProcessed` (boolean)
- `totalSourceInvoices` (integer)
- `fflInfoRequired` (boolean)
- `lastModifiedAt` (string)
- `accountingSynced` (boolean)
- `externalAccountingId` (string)
- `holdUntil` (string)
- `rateShoppedId` (string)
- `packageDimensionUnit` (object)
- `packageLength` (number)
- `packageWidth` (number)
- `packageHeight` (number)
- `packageWeightUnit` (object)
- ...and 27 more fields, see the docs page
### PATCH /purchase-orders/{purchaseOrderId}/processed
[Deprecated] Process Purchase Order
Update a Purchase Order as `Processed`.
Only Purchase Orders in `Processing` status can be transitioned to `Processed`. If the Purchase Order is already in `Processed` status, a 200 (OK) response will be returned.
**Deprecated.**
- Operation id: `processPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/processpurchaseorder
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### DELETE /purchase-orders/{purchaseOrderId}/committed-stock
[Deprecated] Release All Committed Stock For Purchase Order
Release committed stock for purchase order
**Deprecated.**
- Operation id: `releaseAllCommittedStockForPurchaseOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/purchase-order/releaseallcommittedstockforpurchaseorder
Request body (application/json), object:
- `onlyReleasePurchaseOrderItemIds` (array of integer): List of purchase order item IDs to release
- `onlyReleasePurchaseOrderItemSkus` (array of string): List of purchase order item SKUs to release
Responses:
- `200`: OK
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
---
## Resellers
3 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/resellers
### GET /reseller-channels/{channelId}/products/deleted
Get Reseller Deleted Parents
This endpoint will retrieve back Parents and Variants that have been Deleted recently As an integrating system, you should remove entries that appear here. - Params starting with **filter*** will filter the results down
- Operation id: `get-reseller-products-deleted`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/resellers/get-reseller-products-deleted
Query parameters:
- `filterDeletedAfter` (query, string, required): Filter narrowing down to records that have been deleted after this timestamp
- `filterPageSize` (query, integer, required): Number of entries per page
- `filterPageNumber` (query, integer, required): Current page
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `entire_product_deleted` (boolean): If this is TRUE then all variants & the parent have been deleted.
- `deleted_at` (string)
- `parent_id` (integer)
- `variant_ids` (array of integer)
### GET /reseller-channels/{channelId}/products/parents
Get Reseller Parents
This endpoint will retrieve back Parents - Params starting with **filter*** will filter the results down - Params starting with **include*** will determine the metadata returned
- Operation id: `get-reseller-products-parents`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/resellers/get-reseller-products-parents
Query parameters:
- `filterUpdatedAfter` (query, string, required): Filters down to Parents that have been updated after this timestamp. Note: If any "variant" static content (title, description, etc.) is updated then the "parent" updated flag will also be set.
- `filterPageSize` (query, integer, required): Number of entries per page
- `filterPageNumber` (query, integer, required): Current page
- `includeCategories` (query, boolean, optional): Determines if "category_one", "category_two", and "category_three" are returned in the response
- `includeOptions` (query, boolean, optional): Determines if "options" are returned in the response
- `includeImages` (query, boolean, optional): Determines if "images" are returned in the response
- `includeAttributes` (query, boolean, optional): Determines if "attributes" are returned in the response
- `includeVariants` (query, boolean, optional): Determines if "variants" are returned in the response. Variants will have a NULL "parent" object to prevent circular references.
- `includeVariantOptionValues` (query, boolean, optional): If "includeVariants" is "true" - Determines if "option_values" are included in the response for each Variant
- `includeVariantImages` (query, boolean, optional): If "includeVariants" is "true" - Determines if "images" are included in the response for each Variant
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `account_id` (integer, required)
- `channel_id` (integer, required)
- `sku` (string, required): Unique "Stock Keeping Unit" for the Parent. Although parents do not track "stock", they still have a unique identifier.
- `title` (string): Title of the parent. Titles may be further customized at the "variant" level if desired.
- `description` (string): The description. Longer, free-form, supports HTML
- `brand` (string): Brand of the parent
- `inserted_at` (string)
- `updated_at` (string)
- `images` (array of object)
- `options` (array of object)
- `attributes` (array of object)
- `variants` (array of object)
- `category_one` (object)
- `category_two` (object)
- `category_three` (object)
### GET /reseller-channels/{channelId}/products/variants
Get Reseller Variants
This endpoint will retrieve back Variants - Params starting with **filter*** will filter the results down - Params starting with **include*** will determine the metadata returned
- Operation id: `get-reseller-products-variants`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/resellers/get-reseller-products-variants
Query parameters:
- `filterUpdatedAfter` (query, string, required): Filters down to Variants that have been updated after this timestamp. (Timestamp in UTC)
- `filterPageSize` (query, integer, required): Number of entries per page
- `filterPageNumber` (query, integer, required): Current page
- `includeOptionValues` (query, boolean, optional): Determines if "option_values" are returned in the response
- `includeImages` (query, boolean, optional): Determines if "images" are returned in the response
- `includeParent` (query, boolean, optional): Determines if "parent" is returned in the response. If this is true - the parent will have EMPTY "variants" to prevent circular references
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer): ID for the Variant
- `account_id` (integer): ID for the Account
- `channel_id` (integer, required): ID for the Channel
- `reseller_product_parent_id` (integer, required): ID for the Parent
- `sku` (string, required): Unique Stock Keeping Unit for this Channel
- `price` (number): The "Price" of the Variant. When an order is placed, this field represents the price an item costs.
- `sale_price` (number): A "Sale Price" for the Variant
- `msrp` (number): Manufacturer Suggested Retail Price
- `map` (number): Minimum Advertised Price
- `estimated_shipping_cost` (number): Represents an Estimated Shipping Cost (if provided)
- `estimated_dropship_fee` (number): Represents an estimated dropship fee (if provided)
- `title` (string)
- `mpn` (string): Manufacturer Part Number
- `upc` (string): Universal Product Code
- `ean` (string): Global Trade Item Number
- `asin` (string): Amazon "ASIN" Identifier
- `weight` (number)
- `length` (number)
- `width` (number)
- `height` (number)
- `weight_unit` (string (pound | ounce | gram | kilogram)): The unit for "weight"
- `dimension_unit` (string (inch | centimeter)): The unit for "length", "width", and "height"
- `quantity` (integer): The amount of inventory available to purchase
- `dimensional_weight` (number): Calculated Dimensional Weight (USPS Formula). Only present if all dimensions are present with a dimension unit
- `inserted_at` (string)
- `updated_at` (string): Timestamp for the last time the variant had anything updated
- `option_values` (array of object)
- `images` (array of object)
- `parent` (object)
- `description` (string)
---
## Returns
6 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/returns
### POST /returns
Create Return
Create a Return
- Operation id: `createReturns`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/returns/createreturns
Request body (application/json), object:
- `orderId` (integer): orderId or orderNumber is mandatory.
- `orderNumber` (string): orderId or orderNumber is mandatory.
- `returnNumber` (string)
- `items` (array of object, required)
- `refundAdjustment` (number)
- `syncRefundChangesToOrder` (boolean)
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
- `409`: Conflict
Success response body, object:
- `warning` (string)
- `return` (object)
### GET /returns/{id}
Get Return by ID
Retrieves a `Return` by provided id
- Operation id: `getReturnById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/returns/getreturnbyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `orderId` (integer)
- `returnNumber` (string)
- `accountId` (integer)
- `totalReturnItems` (integer)
- `totalRmas` (integer)
- `channelId` (integer)
- `items` (array of object)
- `rmas` (array of object)
- `returnTotal` (number)
- `status` (string (open | closed | cancelled))
- `updatedAt` (string)
- `insertedAt` (string)
- `refundAdjustment` (number)
- `refundSubtotal` (number): sum of refunded_amount for all return_items on the return
- `refundTotal` (number): refundSubtotal + refundAdjustment
- `refundLastSyncedAt` (string)
- `syncRefundChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
### GET /returns
Get Returns
This endpoint will retrieve back Returns - Params starting with **include*** will determine the metadata returned
- Operation id: `getReturns`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/returns/getreturns
Query parameters:
- `orderId` (query, integer, optional): Retrieve returns of a specific order
- `channelId` (query, integer, optional): Retrieve returns of a specific channel
- `pageSize` (query, integer, optional): Number of entries per page
- `pageNumber` (query, integer, optional): Current Page
- `includeRmas` (query, boolean, optional): Use this to include Rmas associated with the return. By default they are not included.
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `orderId` (integer)
- `returnNumber` (string)
- `accountId` (integer)
- `totalReturnItems` (integer)
- `totalRmas` (integer)
- `channelId` (integer)
- `items` (array of object)
- `rmas` (array of object)
- `returnTotal` (number)
- `status` (string (open | closed | cancelled))
- `updatedAt` (string)
- `insertedAt` (string)
- `refundAdjustment` (number)
- `refundSubtotal` (number): sum of refunded_amount for all return_items on the return
- `refundTotal` (number): refundSubtotal + refundAdjustment
- `refundLastSyncedAt` (string)
- `syncRefundChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
### PUT /returns/{returnId}/sync-refund
Sync Return Refund to the Channel Invoice for the Order
Sync Refund to Order
- Operation id: `syncRefundToOrder`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/returns/syncrefundtoorder
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
### PATCH /returns/{id}
Update Return
Update a `Return`
- Operation id: `updateReturn`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/returns/updatereturn
Request body (application/json), object:
- `returnStatus` (string (open | closed | cancelled))
- `refundAdjustment` (number)
- `syncRefundChangesToOrder` (boolean)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `orderId` (integer)
- `returnNumber` (string)
- `accountId` (integer)
- `totalReturnItems` (integer)
- `totalRmas` (integer)
- `channelId` (integer)
- `items` (array of object)
- `rmas` (array of object)
- `returnTotal` (number)
- `status` (string (open | closed | cancelled))
- `updatedAt` (string)
- `insertedAt` (string)
- `refundAdjustment` (number)
- `refundSubtotal` (number): sum of refunded_amount for all return_items on the return
- `refundTotal` (number): refundSubtotal + refundAdjustment
- `refundLastSyncedAt` (string)
- `syncRefundChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
### PATCH /returns/{Id}/items
Update Return Item
Update Return Items
- Operation id: `updateReturnItems`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/returns/updatereturnitems
Request body (application/json), array of object:
- `id` (integer, required)
- `refundedAmount` (number)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `orderId` (integer)
- `returnNumber` (string)
- `accountId` (integer)
- `totalReturnItems` (integer)
- `totalRmas` (integer)
- `channelId` (integer)
- `items` (array of object)
- `rmas` (array of object)
- `returnTotal` (number)
- `status` (string (open | closed | cancelled))
- `updatedAt` (string)
- `insertedAt` (string)
- `refundAdjustment` (number)
- `refundSubtotal` (number): sum of refunded_amount for all return_items on the return
- `refundTotal` (number): refundSubtotal + refundAdjustment
- `refundLastSyncedAt` (string)
- `syncRefundChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
---
## RMA
11 operations. Reference: https://www.apihelpcenter.flxpoint.com/reference/rma
### PUT /rmas/{id}/sync-credit
Apply credit to a source invoice
- Operation id: `syncCreditToInvoice`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/synccredittoinvoice
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
- `500`: Internal Server Error
### POST /rma
Create RMA
Creates a RMA
- Operation id: `createRma`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/createrma
Request body (application/json), object:
- `returnId` (integer, required)
- `sourceId` (integer): When using tokens other than source token, this need to be in the request.
- `rmaNumber` (string, required)
- `returnToAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `items` (array of object)
- `creditAdjustment` (number)
- `autoApprove` (boolean): When `true`, the full quantity for each RMA item will be approved automatically upon creation.
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, object:
- `id` (integer)
- `returnId` (integer)
- `sourceId` (integer)
- `rmaNumber` (string)
- `accountId` (integer)
- `returnToAddress` (object)
- `items` (array of object)
- `totalRmaItems` (integer)
- `createdAt` (string)
- `updatedAt` (string)
- `rmaStatus` (string (Waiting | Approved | Voided | Denied | Partially Approved | Canceled))
- `rmaShipments` (array of object)
- `creditSubtotal` (number)
- `creditAdjustment` (number)
- `creditTotal` (number)
- `creditLastSyncedAt` (string)
- `syncCreditChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
- `accountingSyncedAt` (string)
- `accountingError` (string)
### POST /rma-shipments
Create RMA Shipment
Creates a RMA Shipment
- Operation id: `createRmaShipment`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/creatermashipment
Request body (application/json), object:
- `rmaId` (integer): Identify the RMA to associate the shipment to by providing the Flxpoint generated internal RMA ID.
- `rmaNumber` (string): Identify the RMA to associate the shipment to by providing the rma number. ACCOUNT tokens will also need to provide `sou
- `sourceId` (integer): SOURCE tokens are not required to supply a value here, if using a SOURCE token and a value is provided and it does not m
- `returnToAddress` (object, required): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `shipment` (object, required)
- `attachments` (array of object)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, object:
- `id` (integer)
- `rmaId` (integer)
- `accountId` (integer)
- `shipment` (object)
- `shippingAddress` (object)
- `attachments` (array of object)
- `createdAt` (string)
- `sentAt` (string)
- `rmaShipmentStatus` (string (Shipment Created | Shipment Sent | Shipment Received | Shipment Partially Received | Shipment Voided))
### GET /rma/{id}
Get Rma By ID
Retrives a `RMA` by provided id
- Operation id: `getRmaById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/getrmabyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `returnId` (integer)
- `sourceId` (integer)
- `rmaNumber` (string)
- `accountId` (integer)
- `returnToAddress` (object)
- `items` (array of object)
- `totalRmaItems` (integer)
- `createdAt` (string)
- `updatedAt` (string)
- `rmaStatus` (string (Waiting | Approved | Voided | Denied | Partially Approved | Canceled))
- `rmaShipments` (array of object)
- `creditSubtotal` (number)
- `creditAdjustment` (number)
- `creditTotal` (number)
- `creditLastSyncedAt` (string)
- `syncCreditChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
- `accountingSyncedAt` (string)
- `accountingError` (string)
### GET /rma-shipments/{id}
Get RMA Shipment By ID
- Operation id: `getRmaShipmentById`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/getrmashipmentbyid
Responses:
- `200`: OK
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `rmaId` (integer)
- `accountId` (integer)
- `shipment` (object)
- `shippingAddress` (object)
- `attachments` (array of object)
- `createdAt` (string)
- `sentAt` (string)
- `rmaShipmentStatus` (string (Shipment Created | Shipment Sent | Shipment Received | Shipment Partially Received | Shipment Voided))
### GET /rma-shipments
List RMA Shipments
- Operation id: `getRmaShipments`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/getrmashipments
Query parameters:
- `rmaNumbers` (query, string, optional): rma numbers separated by a comma
- `createdAfter` (query, string, optional): Filter shipments that were created after this date-time.
- `pageSize` (query, integer, optional): Number of entries per page
- `pageNumber` (query, integer, optional): Current Page
- `rmaId` (query, integer, optional): Retrieve shipments of a specific rma
- `includeAttachments` (query, boolean, optional): If true, it will fetch attachments associated with the RMA Shipment
- `includeReturnAddress` (query, boolean, optional): If true, it will fetch the return address associated with the RMA shipment
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `rmaId` (integer)
- `accountId` (integer)
- `shipment` (object)
- `shippingAddress` (object)
- `attachments` (array of object)
- `createdAt` (string)
- `sentAt` (string)
- `rmaShipmentStatus` (string (Shipment Created | Shipment Sent | Shipment Received | Shipment Partially Received | Shipment Voided))
### GET /rma
List Rmas
This endpoint will retrieve back Rmas - Params starting with **include*** will determine the metadata returned
- Operation id: `getRmas`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/getrmas
Query parameters:
- `returnId` (query, integer, optional): Retrieve rma of a specific return
- `sourceId` (query, integer, optional): Retrieve rma for the given sourceId
- `createdAfter` (query, string, optional): Filter rmas that were created after this date-time.
- `pageSize` (query, integer, optional): Number of entries per page
- `pageNumber` (query, integer, optional): Current Page
- `rmaNumbers` (query, string, optional): rma numbers separated by a comma
- `isAccountingSynced` (query, boolean, optional): Filter to only include or exclude rmas that have been synced to an Accounting Integration
Responses:
- `200`: OK
- `401`: Unauthorized
Success response body, array of object:
- `id` (integer)
- `returnId` (integer)
- `sourceId` (integer)
- `rmaNumber` (string)
- `accountId` (integer)
- `returnToAddress` (object)
- `items` (array of object)
- `totalRmaItems` (integer)
- `createdAt` (string)
- `updatedAt` (string)
- `rmaStatus` (string (Waiting | Approved | Voided | Denied | Partially Approved | Canceled))
- `rmaShipments` (array of object)
- `creditSubtotal` (number)
- `creditAdjustment` (number)
- `creditTotal` (number)
- `creditLastSyncedAt` (string)
- `syncCreditChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
- `accountingSyncedAt` (string)
- `accountingError` (string)
### PATCH /rma-shipments/{id}/receive
Receive RMA Shipment
- Operation id: `receiveRmaShipment`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/receivermashipment
Request body (application/json), array of object:
- `id` (integer, required): Id of rma shipment item
- `rmaItemId` (integer)
- `receivedQuantity` (integer)
- `voidedQuantity` (integer)
Responses:
- `204`: No Content
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
### PATCH /rma-shipments/{id}/sent
Set RMA Shipment as sent
update RMA shipment as sent
- Operation id: `updateRmaShipmentToSent`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/updatermashipmenttosent
Responses:
- `204`: No Content
- `401`: Unauthorized
- `404`: Not Found
### PATCH /rma/{id}
Update RMA
- Operation id: `updateRMA`
- Docs: https://www.apihelpcenter.flxpoint.com/reference/rma/updaterma
Request body (application/json), object:
- `rmaStatus` (string (Waiting | Approved | Voided | Denied | Partially Approved | Canceled))
- `rmaDestinationId` (integer)
- `returnToAddress` (object): Request to create a new address if it does not already exist. State/State Code and Country/Country Code can be populated
- `creditAdjustment` (number)
- `syncCreditChangesToOrder` (boolean)
- `accountingSynced` (boolean)
- `accountingError` (string)
Responses:
- `200`: OK
- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found
Success response body, object:
- `id` (integer)
- `returnId` (integer)
- `sourceId` (integer)
- `rmaNumber` (string)
- `accountId` (integer)
- `returnToAddress` (object)
- `items` (array of object)
- `totalRmaItems` (integer)
- `createdAt` (string)
- `updatedAt` (string)
- `rmaStatus` (string (Waiting | Approved | Voided | Denied | Partially Approved | Canceled))
- `rmaShipments` (array of object)
- `creditSubtotal` (number)
- `creditAdjustment` (number)
- `creditTotal` (number)
- `creditLastSyncedAt` (string)
- `syncCreditChangesToOrder` (boolean)
- `shipmentReceivedStatus` (string (not_received | partially_received | fully_received))
- `accountingSyncedAt` (string)
- `accountingError` (string)
### PATCH /rmas/{rmaId}/items
Update RMA Items
This endpoint will update any non-null fields for RMA Items passed in the request body. Please note: