---
title: Faire API Integration on Truto
slug: faire
category: E-Commerce
canonical: "https://truto.one/integrations/detail/faire/"
---

# Faire API Integration on Truto



**Category:** E-Commerce  
**Status:** Beta

## MCP-ready AI tools

Truto exposes 40 tools for Faire that AI agents can call directly.

- **list_all_faire_brands_profiles** — Get the Faire brand profile associated with the current session. Returns: brand_id, name, currency, locale. No caller-supplied parameters are required — the brand is determined by the authenticated session.
- **list_all_faire_orders** — List Faire orders ordered ascending by updated_at. Returns: id, display_id, created_at, updated_at, state, items, shipments, address, ship_after, payout_costs, payment_initiated_at, original_order_id, retailer_id, source, expected_ship_date, customer, brand_discounts, requested_ship_date, processing_at, is_free_shipping, free_shipping_reason, faire_covered_shipping_cost, estimated_payout_at,…
- **get_single_faire_order_by_id** — Get a single Faire order by id. Returns: id, display_id, created_at, updated_at, state, items, shipments, address, ship_after, payout_costs, payment_initiated_at, original_order_id, retailer_id, source, expected_ship_date, customer, brand_discounts, requested_ship_date, processing_at, is_free_shipping, free_shipping_reason, faire_covered_shipping_cost, estimated_payout_at, is_fulfilled_by_faire,…. Required: id.
- **faire_orders_cancel** — Cancel a Faire order, moving it to CANCELED state. The order can be canceled only if its current state is NEW, PROCESSING, PENDING_RETAILER_CONFIRMATION, or BACKORDERED. Returns: id, display_id, created_at, updated_at, state, items, shipments, address, ship_after, payout_costs, payment_initiated_at, original_order_id, retailer_id, source, expected_ship_date, customer, brand_discounts,…. Required: order_id.
- **create_a_faire_items_availability** — Edit item availability for items in a Faire order. Returns the updated order object (ExternalOrderV2) including its id and additional order attributes. Required: order_id.
- **get_single_faire_order_packing_slip_pdf_by_id** — Download the PDF packing slip for a Faire brand order. Returns the packing slip as a PDF binary download. For Upmarket Plus retailers, include a printed copy in every shipping package. Required: id.
- **faire_order_processings_bulk_update** — Accept a Faire order and move it to the PROCESSING state. Returns the full order object (ExternalOrderV2) including its id and additional order attributes. Required: order_id.
- **create_a_faire_order_shipment** — Add shipments to a Faire order, moving its state to PRE_TRANSIT. Returns the updated order including id, state, created_at, and updated_at. For Upmarket Plus retailers, include a packing slip in every shipping package. Required: order_id.
- **faire_available_by_product_variant_ids_bulk_update** — Update available inventory levels for product variants in Faire identified by their product variant IDs. Returns the updated available inventory response as defined by the Faire API's UpdateAvailableInventoryResponseV2 schema. Requires a request body containing the inventory level updates.
- **faire_available_by_skus_bulk_update** — Update available inventory levels for product variants in Faire identified by their variant SKUs. Returns the updated inventory response confirming the available inventory levels.
- **list_all_faire_product_inventory_by_product_variant_ids** — List Faire product inventory levels by product variant IDs. Returns the inventory response object as defined by the upstream GetInventoryResponseV2 schema.
- **faire_product_inventory_by_product_variant_ids_bulk_update** — Update on-hand inventory levels for Faire product variants by their product variant IDs. Returns the updated on-hand inventory response object.
- **list_all_faire_product_inventory_by_skus** — Fetch on-hand inventory levels for Faire product variants identified by their SKUs. Returns: inventories. Optional: skus.
- **faire_product_inventory_by_skus_bulk_update** — Update on-hand inventory levels for Faire product variants identified by their SKUs. Returns: inventories.
- **faire_product_prices_by_product_variant_ids_bulk_update** — Update prices for multiple Faire product variants in a single batch request, identified by their product variant IDs. Returns the batch price update response.
- **faire_product_prices_by_skus_bulk_update** — Update prices for multiple Faire product variants in a single batch request, identified by their SKUs. Returns a successful response confirming the applied price changes.
- **list_all_faire_products** — List Faire products ordered ascending by updated_at. Returns: id, created_at, updated_at, brand_id, name, description, short_description, sale_state, lifecycle_state, variants, idempotence_token, unit_multiplier, minimum_order_quantity, per_style_minimum_order_quantity, allow_sales_when_out_of_stock, images, variant_option_sets, taxonomy_type, preorderable, preorder_details, product_attributes,…
- **create_a_faire_product** — Create a single Faire product in the specified lifecycle_state. Returns: id, created_at, updated_at, brand_id, name, description, short_description, sale_state, lifecycle_state, variants, idempotence_token, unit_multiplier, minimum_order_quantity, per_style_minimum_order_quantity, allow_sales_when_out_of_stock, images, variant_option_sets, taxonomy_type, preorderable, preorder_details,…
- **get_single_faire_product_by_id** — Get a single Faire product by id, regardless of state (active or deleted). Returns: id, created_at, updated_at, brand_id, name, description, short_description, sale_state, lifecycle_state, variants, idempotence_token, unit_multiplier, minimum_order_quantity, per_style_minimum_order_quantity, allow_sales_when_out_of_stock, images, variant_option_sets, taxonomy_type, preorderable, preorder_details,…. Required: id.
- **update_a_faire_product_by_id** — Update a single Faire product by id. Variants can be updated or created, but prepacks must use the prepack APIs. Returns: id, created_at, updated_at, brand_id, name, description, short_description, sale_state, lifecycle_state, variants, idempotence_token, unit_multiplier, minimum_order_quantity, per_style_minimum_order_quantity, allow_sales_when_out_of_stock, images, variant_option_sets,…. Required: id.
- **delete_a_faire_product_by_id** — Delete a single Faire product by id, setting its lifecycle_state to DELETED so it is no longer visible on Faire. Returns an empty response on success. Required: id.
- **list_all_faire_products_reviews** — List Faire product reviews. Returns: id, created_at, updated_at, attributes.
- **list_all_faire_products_types** — List all Faire taxonomy types (also called product types) used to categorize brands and products in the Faire marketplace. Returns: id, name.
- **create_a_faire_products_upload_image** — Upload an image to Faire before using it on a product or variant. Returns a response confirming the image is valid and accessible. Faire recommends calling this before creating or updating products to get immediate validation feedback.
- **list_all_faire_product_custom_tags** — List brand-defined product organization tags for a Faire product. Tags are identified by name, not by ID, and are returned in alphabetical order using the stored spelling. Returns: custom_tags. Required: product_id.
- **faire_product_custom_tags_bulk_update** — Replace all brand-defined product organization tags on a Faire product by submitting the full list of tag names; tags absent from the list are removed and an empty list clears all tags. Returns: custom_tags. Each name must be at most 20 characters; at most 250 tags per product; names must be unique including case differences. Required: product_id.
- **faire_product_geo_restrictions_bulk_update** — Replace the full list of countries and states where a Faire product is NOT available for sale. Submit the complete list; entries absent are removed and an empty list makes the product available everywhere the brand ships. Returns the stored restrictions sorted by country then state, each entry with country and state_or_province. Duplicate entries are rejected. Required: product_id.
- **delete_a_faire_product_image_by_id** — Delete an image from a Faire product. Returns an empty response on success. Published products need at least one image; attempting to remove the last image returns 400 Bad Request. Required: id, product_id.
- **faire_product_lead_times_bulk_delete** — Clear the product-level custom lead time override for a Faire product, restoring the brand-level lead time fallback. Idempotent when no override exists; Returns an empty 204 response on success. Returns an empty 204 response on success. Required: product_id.
- **list_all_faire_product_prepacks** — List all active prepacks for a Faire product. Returns each prepack with its id, name, description, created_at, and updated_at. Required: product_id.
- **create_a_faire_product_prepack** — Create a prepack for a Faire product. Returns the created prepack object including its id, name, description, created_at, and updated_at. Required: product_id.
- **delete_a_faire_product_prepack_by_id** — Delete a Faire prepack by id. Deleted prepacks cannot be re-activated. Returns an empty 200 response on success. Required: id, product_id.
- **get_single_faire_product_prepack_by_id** — Get a single Faire prepack by id. Returns: id, idempotence_token, created_at, updated_at, name, description, items, lifecycle_state. Required: id, product_id.
- **create_a_faire_prepacks_batch** — Create multiple prepacks for a Faire product in a single batch request. Returns the created prepacks response object. Required: product_id.
- **faire_product_variant_option_sets_bulk_update** — Replace the variant option sets of a Faire product with the given new sets. Returns: variant_option_sets. Options currently in use by variants cannot be removed; for prepack products, size options cannot be reorganized or have new values inserted mid-sequence. Required: product_id.
- **create_a_faire_product_variant** — POST /products/{product_id}/variants. Returns: id, created_at, updated_at, product_id, name, sale_state, lifecycle_state, idempotence_token. Required: product_id.
- **update_a_faire_product_variant_by_id** — Update a Faire product variant by id, sending only the fields you want to modify. A variant's options cannot be updated; to change options, delete the variant and create a new one. Returns: id, created_at, updated_at, product_id, name, sale_state, lifecycle_state, idempotence_token, sku, available_quantity, backordered_until, wholesale_price_cents, retail_price_cents, tariff_code, images,…. Required: id, product_id.
- **delete_a_faire_product_variant_by_id** — Delete a Faire product variant by id. The variant's lifecycle_state is set to DELETED and it is no longer visible on Faire. A product must have at least one non-deleted variant; to remove the last variant, delete the product instead. Returns an empty 200 response on success. Required: id, product_id.
- **delete_a_faire_variant_image_by_id** — Delete an image from a Faire product variant. Returns an empty 204 response on success. Required: id, product_id, variant_id.
- **get_single_faire_retailers_public_by_id** — Get a Faire retailer's public profile by id, including whether the retailer requires a packing slip in every shipping package when fulfilling orders. Returns: retailer_id, name, is_insider, is_upmarket_plus_retailer, business_identifiers. Required: id.

## How it works

1. **Link your customer's Faire account.** Use Truto's frontend SDK; we handle every OAuth and API key flow so you don't need to create the OAuth app.
2. **Authentication is automatic.** Truto refreshes tokens, stores credentials securely, and injects them into every API request.
3. **Call Truto's API to reach Faire.** The Proxy API is a 1-to-1 mapping of the Faire API.
4. **Get a unified response format.** Every response uses a single shape, with cursor-based pagination and data in the `result` field.

## Use cases

- **Omnichannel Inventory Sync for IMS Platforms** — Let your users keep Faire stock levels in lockstep with their DTC channels and central inventory. Prevent wholesale overselling by pushing bulk SKU-level availability updates the moment stock moves anywhere in their system.
- **Warehouse & Shipping Automation for WMS Products** — Pull new Faire orders into your fulfillment queue, generate the required Faire packing slip PDFs, and write tracking data back automatically. Eliminate the manual portal work that slows down pick-and-pack teams.
- **Wholesale Catalog Publishing for PIM Tools** — Give brands a way to launch seasonal Faire catalogs from your PIM — including products, variants, images, prepacks, and geo-restrictions — without recreating hundreds of listings inside Faire's UI.
- **Accounts Receivable Reconciliation for Accounting & ERP Apps** — Ingest completed Faire orders with their full payout breakdown — commissions, brand discounts, Faire-covered shipping — so your users can forecast Net-60 cash flow and reconcile receivables accurately.
- **Order Lifecycle Management for OMS Platforms** — Move Faire orders through PROCESSING, PRE_TRANSIT, and cancellation states directly from your OMS. Give operations teams a single pane of glass across all their B2B and DTC sales channels.

## What you can build

- **Bulk SKU Inventory Sync** — Update thousands of Faire SKUs at once using bulk inventory endpoints keyed by SKU or product variant ID, triggered whenever central stock changes.
- **New Order Ingestion with State Transitions** — Poll Faire for NEW orders, hydrate them into your app, and push them into PROCESSING via bulk order processing updates once they hit the warehouse.
- **Packing Slip & Shipment Automation** — Fetch mandatory Faire packing slip PDFs per order and write carrier tracking back via shipment creation to move orders into PRE_TRANSIT.
- **Prepack & Wholesale Catalog Builder** — Create Faire products, variants, and multi-size prepacks (single or batch) directly from your PIM, plus upload product images from your DAM.
- **Bulk Pricing & Geo-Restriction Manager** — Push wholesale price updates across SKUs and set per-product territorial restrictions to protect brick-and-mortar exclusivity deals — all via batch endpoints.
- **Retailer-Aware Fulfillment Rules** — Look up individual retailer profiles to branch fulfillment logic (e.g., auto-print packing slips for Upmarket Plus buyers) before shipping.

## FAQs

### How do end users authenticate their Faire account?

Faire uses API key-based authentication scoped to a brand account. Through Truto, your users complete a connection flow once and Truto securely stores and injects their credentials on every API call, so you never handle the key directly.

### Can we sync inventory in bulk instead of one SKU at a time?

Yes. Faire prioritizes batch operations, and Truto exposes bulk endpoints for inventory by SKU and by product variant ID, as well as bulk price updates. This is the recommended pattern for high-volume catalogs.

### Does the integration support Faire's prepack (wholesale bundle) model?

Yes. You can list, create, retrieve, and delete individual prepacks, and use the batch prepack creation endpoint to publish entire seasonal bundle sets in one call.

### How fresh is order data — is there webhook support?

The current toolset is polling-based: use list_all_faire_orders on a schedule to pick up NEW orders, then get_single_faire_order_by_id to hydrate details. Poll frequency is up to your product; most fulfillment use cases poll every 1–5 minutes.

### Can we retrieve the packing slip PDFs Faire requires for certain retailers?

Yes. get_single_faire_order_packing_slip_pdf_by_id returns the official Faire packing slip, which is mandatory for Upmarket Plus retailers. You can pair it with get_single_faire_retailers_public_by_id to conditionally trigger printing.

### What order lifecycle actions are supported?

You can transition orders to PROCESSING via bulk order processing updates, create shipments with tracking (moving orders to PRE_TRANSIT), and cancel orders. Full financial fields like payout_costs and estimated_payout_at are available on the order payload for reconciliation.

## Related reading

- [Connect Faire to Claude: Manage Product Catalogs & Shipments](https://truto.one/blog/connect-faire-to-claude-manage-product-catalogs-shipments/) — Learn how to connect Claude to Faire using a managed MCP server to automate wholesale orders, inventory syncing, and shipment tracking via natural language.
- [Connect Faire to ChatGPT: Sync Inventory & Process Orders](https://truto.one/blog/connect-faire-to-chatgpt-sync-inventory-process-orders/) — Learn how to connect Faire to ChatGPT using Truto's auto-generated MCP server. Automate order processing, sync wholesale inventory, and manage variants.
- [Connect Faire to AI Agents: Automate Wholesale Supply Chains](https://truto.one/blog/connect-faire-to-ai-agents-automate-wholesale-supply-chains/) — Learn how to connect Faire to AI agents using Truto's /tools endpoint. Build autonomous supply chain workflows to manage orders, SKUs, and inventory.
