Fluid Commerce APIs (1.0)

The Fluid Commerce APIs provides a comprehensive set of APIs designed to integrate Fluid's powerful services into your applications seamlessly. This bundle offers robust functionality for enhancing messaging solutions, streamlining data management, and improving customer interactions. With detailed documentation, secure authentication, and flexible integration options, the Fluid Public API Bundle is engineered to help you leverage our services efficiently and effectively, unlocking new potentials and achieving greater connectivity within your systems.

Download OpenAPI description
Overview
E-mail support@fluid.app
License MIT
Languages
Servers
Mock server
https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/
Production server with company subdomain
https://{company}.fluid.app/
Local development server
http://fluid.lvh.me:{port}/

Admins

Operations

Agreements

Operations

ApplePay

Operations

Application Themes

Operations

ApplicationThemeTemplates

Operations

Authentication

Operations

Send MFA Passcode

Request

Send MFA Passcode via email

Query
emailstringrequired

Email address of the user

fluid_shopstring

Shop name, eg: company.fluid.app

curl -i -X POST \
  'https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/authentication/send_mfa?email=string&fluid_shop=string'

Responses

generic success response

Bodyapplication/json
multi_factor_authenticationobject(MultiFactorAuthentication)required
multi_factor_authentication.​uuidstringrequired
multi_factor_authentication.​authenticatedbooleanrequired
multi_factor_authentication.​verification_channelstringrequired
multi_factor_authentication.​verification_code_expires_atstring
metaobject
Response
application/json
{ "multi_factor_authentication": { "uuid": "string", "authenticated": true, "verification_channel": "string", "verification_code_expires_at": "string" }, "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

Confirm MFA passcode

Request

Confirm MFA Passcode

Bodyapplication/json
uuidstringrequired
Example: "drp_p4r9jsl305iduqrsl0ujdth35jhuy2al"
multi_factor_authenticationobjectrequired
multi_factor_authentication.​verification_codestringrequired
Example: "543432"
curl -i -X POST \
  https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/authentication/confirm_mfa \
  -H 'Content-Type: application/json' \
  -d '{
    "uuid": "drp_p4r9jsl305iduqrsl0ujdth35jhuy2al",
    "multi_factor_authentication": {
      "verification_code": "543432"
    }
  }'

Responses

MFA code confirmed

Bodyapplication/json
authenticatedbooleanrequired
Example: true
auth_typestringrequired
Example: "rep"
companiesArray of objectsrequired
companies[].​idintegerrequired
Example: 1
companies[].​namestringrequired
Example: "John Doe"
companies[].​shop_namestringrequired
Example: "myco.fluid.app"
companies[].​logo_urlstring or null
Example: "https://example.com/logo.png"
companies[].​jwtstringrequired
Example: "eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX..."
companies[].​primary_domain_hostnamestring
Example: "myco.fluid.app"
metaobject
Response
application/json
{ "authenticated": true, "auth_type": "rep", "companies": [ {} ], "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2025-02-03T08:04:10Z" } }

Fetch user details from JWT

Request

Query
jwtstringrequired
curl -i -X GET \
  'https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/authentication/me?jwt=string'

Responses

user details given

Bodyapplication/json
userobject
user_companyobject
metaobject
Response
application/json
{ "user": { "id": 1, "first_name": "Mike", "last_name": "Tingey", "email": "mike@example.com", "avatar_url": "https://d1r16g5m5p3ba7.cloudfront.net/uploads/user/avatar/980190962/avatar.png", "root_admin": true }, "user_company": { "id": 1, "company_id": 226157151, "company_name": "Fluid", "roles": "[\"admin\", \"developer\"]", "user_type": "admin", "logo_url": "https://cdn.filestackcontent.com/1Rnqia44T2mLcXuFZCTV", "icon_url": "https://cdn.filestackcontent.com/1Rnqia44T2mLcXuFZCTV", "fluid_shop": "myco.fluid.app", "company_colors": {} }, "meta": { "request_id": "72591788-c981-47d1-8dd5-1cc0e1612815", "timestamp": "2025-05-08T06:18:09Z" } }

Resend code via email

Request

Query
uuidstringrequired

Current MFA uuid

curl -i -X POST \
  'https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/authentication/resend_mfa?uuid=string'

Responses

verification code resent

Bodyapplication/json
multi_factor_authenticationobject(MultiFactorAuthentication)required
multi_factor_authentication.​uuidstringrequired
multi_factor_authentication.​verification_channelstringrequired
Example: "test@example.com"
multi_factor_authentication.​verification_code_expires_atstring or null(date-time)
Example: "2025-02-17T08:00:01Z"
multi_factor_authentication.​authenticatedbooleanrequired
Default false
Example: "false"
metaobject
Response
application/json
{ "multi_factor_authentication": { "uuid": "string", "verification_channel": "test@example.com", "verification_code_expires_at": "2025-02-17T08:00:01Z", "authenticated": "false" }, "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

Fetch company details from Fluid Shop name

Request

Path
fluid_shopstringrequired

Fluid shop name

Example: myco
curl -i -X GET \
  'https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/authentication/company/{fluid_shop}'

Responses

company details given

Bodyapplication/json
companyobject
metaobject
Response
application/json
{ "company": { "name": "string", "logo_url": "https://example.com/logo.png", "color": "#000000", "fluid_shop": "myco.fluid.app", "primary_domain_hostname": "myco.com" }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2025-02-03T08:04:10Z" } }

Switch company

Request

Path
company_idintegerrequired

Company id

Example: 980190965
curl -i -X PUT \
  'https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/authentication/company/{company_id}/switch' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

New company details with jwt given

Bodyapplication/json
companyobjectrequired
company.​idintegerrequired
Example: 1
company.​namestringrequired
Example: "fluid"
company.​fluid_shopstringrequired
Example: "myco.fluid.app"
company.​logo_urlstring or nullrequired
Example: "https://example.com/logo.png"
company.​jwtstringrequired
Example: "eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX..."
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2025-02-03T08:04:10Z"
Response
application/json
{ "company": { "id": 1, "name": "fluid", "fluid_shop": "myco.fluid.app", "logo_url": "https://example.com/logo.png", "jwt": "eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX..." }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2025-02-03T08:04:10Z" } }

Exchange user company token for customer JWT

Request

Exchange user_company_token for customer JWT

Bodyapplication/json
user_company_tokenstringnon-emptyrequired
curl -i -X PUT \
  https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/user_companies/customer_token_exchange \
  -H 'Content-Type: application/json' \
  -d '{
    "user_company_token": "string"
  }'

Responses

Exchange successful with valid user_company_token and email

Bodyapplication/json
jwtstringrequired
metaobjectrequired
meta.​request_idstring
Example: "123e4567-e89b-12d3-a456-426614174000"
meta.​timestampstring
Example: "2021-01-01T00:00:00Z"
Response
application/json
{ "jwt": "string", "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

Exchange JWT for user company token

Request

Exchange JWT for user_company_token

Bodyapplication/json
jwtstringnon-emptyrequired
curl -i -X PUT \
  https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/user_companies/jwt_exchange \
  -H 'Content-Type: application/json' \
  -d '{
    "jwt": "string"
  }'

Responses

Exchange successful

Bodyapplication/json
user_company_tokenstringrequired
metaobjectrequired
meta.​request_idstring
Example: "123e4567-e89b-12d3-a456-426614174000"
meta.​timestampstring
Example: "2021-01-01T00:00:00Z"
Response
application/json
{ "user_company_token": "string", "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

Refresh JWT token

Request

Refresh an existing JWT token to extend its validity

Bodyapplication/json
jwtstringnon-emptyrequired
curl -i -X PUT \
  https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/user_companies/jwt_refresh \
  -H 'Content-Type: application/json' \
  -d '{
    "jwt": "string"
  }'

Responses

JWT refresh successful

Bodyapplication/json
jwtstringrequired
metaobjectrequired
meta.​request_idstring
Example: "123e4567-e89b-12d3-a456-426614174000"
meta.​timestampstring
Example: "2021-01-01T00:00:00Z"
Response
application/json
{ "jwt": "string", "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

Exchange user company token for JWT

Request

Exchange user_company_token for JWT

Bodyapplication/json
user_company_tokenstringnon-emptyrequired
curl -i -X PUT \
  https://fluid-commerce.redocly.app/_mock/docs/apis/swagger/api/user_companies/token_exchange \
  -H 'Content-Type: application/json' \
  -d '{
    "user_company_token": "string"
  }'

Responses

Exchange successful with user_company_token input

Bodyapplication/json
jwtstringrequired
metaobjectrequired
meta.​request_idstring
Example: "123e4567-e89b-12d3-a456-426614174000"
meta.​timestampstring
Example: "2021-01-01T00:00:00Z"
Response
application/json
{ "jwt": "string", "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

Callback Definitions

Operations

Callback Registrations

Operations

Carts

Operations

Commerce Orders

Operations

Companies

Operations

Company Custom Catch Ups

Operations

Company Discounts

Operations

Company Mobile Widgets

Operations

Company Pages

Operations

Pages

Operations

Company Popups

Operations

Company Settings - Checkout

Operations

Company Settings - Countries

Operations

Company Settings - Languages

Operations

Company Settings - Social Media

Operations

Company Settings - Warehouses

Operations

Company Webhook Events

Operations

Contacts

Operations

Currencies

Operations

Customer Orders

Operations

CustomerNotes

Operations

Customers

Operations

Domains

Operations

Drop Zones

Operations

Droplet Categories

Operations

Droplet Installations

Operations

Droplets

Operations

Enrollment Packs

Operations

Enrollments

Operations

Fantasy Points

Operations

File Resources

Operations

Fluid Pay

Operations

Form Elements

Operations

Forms

Operations

GlobalEmbeds

Operations

Inventory Levels

Operations

Labels

Operations

Multi Factor Authentications

Operations

Multi-Factor Authentications

Operations

Notifications

Operations

Onboarding

Operations

Order Fulfillments

Operations

Orders

Operations

Payment

Operations

Payment Accounts

Operations

Payment Integrations

Operations

Payments

Operations

Paypal

Operations

Products

Operations

Prompts

Operations

Public Companies

Operations

Public Drop Zones

Operations

Ranks

Operations

Redirects

Operations

Refunds

Operations

Reps

Operations

Roles

Operations

Settings

Operations

Shares

Operations

Subscription Orders

Operations

Subscription Plans

Operations

Subscriptions

Operations

Tags

Operations

Tax Categories

Operations

Tracking Informations

Operations

Tree Nodes

Operations

Trees

Operations

Users

Operations

Variant Countries

Operations

Variants

Operations

Webhooks

Operations