Skip to content

E-Commerce · Beta

Faire
API integration

Ship E-Commerce features without building the integration. Full Faire API access via Proxy and 40+ MCP-ready tools for AI agents — extend models and mappings to fit your product.

Built for specific customer use cases. Issues are resolved quickly.

Talk to us
Faire

Use Cases

Why integrate with Faire

Common scenarios for SaaS companies building Faire integrations for their customers.

01

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.

02

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.

03

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.

04

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.

05

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

Ship these features with Truto + Faire

Concrete product features your team can ship faster by leveraging Truto’s Faire integration instead of building from scratch.

01

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.

02

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.

03

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.

04

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.

05

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.

06

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.

SuperAI

Faire AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

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.

Why Truto

Why use Truto’s MCP server for Faire

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 800+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

How It Works

From zero to integrated

Go live with Faire in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s Faire account

Use Truto’s frontend SDK to connect your customer’s Faire account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call Faire

Truto’s Proxy API is a 1-to-1 mapping of the Faire API. You call us, we call Faire, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate Faire’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about Faire on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

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.

Faire

Get Faire integrated into your app

Our team understands what it takes to make a Faire integration successful. A short, crisp 30 minute call with folks who understand the problem.