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 usUse Cases
Why integrate with Faire
Common scenarios for SaaS companies building Faire integrations for their customers.
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
From the Blog
Faire integration guides
Deep dives, architecture guides, and practical tutorials for building Faire integrations.
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.