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://docs.fluid.app/_mock/docs/apis/swagger/
Production server with company subdomain
https://{company}.fluid.app/
Local development server
http://fluid.lvh.me:{port}/

Agreements

Operations

ApplePay

Operations

Application Themes

Operations

ApplicationThemeTemplates

Operations

Authentication

Operations

Callback Definitions

Operations

Callback Registrations

Operations

Carts

Operations

Company Custom Catch Ups

Operations

Company Discounts

Operations

Company Droplets

Operations

Company 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

Contacts

Operations

Currencies

Operations

Customer Orders

Operations

CustomerNotes

Operations

Customers

Operations

Domains

Operations

Drop Zones

Operations

Droplets

Operations

Enrollment Packs

Operations

Enrollments

Operations

Fantasy Points

Operations

Fluid Pay

Operations

Retrieves payment methods for a customer

Request

Query
jwtstringrequired

JWT token containing customer authentication

pageinteger

Page number

per_pageinteger

Number of items per page

curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/payment_methods?jwt=string&page=0&per_page=0'

Responses

payment methods retrieved

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 123
fluid_pay_account.​default_payment_method_idintegerrequired
Example: 456
payment_methodsArray of objectsrequired
payment_methods[].​idinteger
Example: 123
payment_methods[].​sourcestring
Example: "card"
payment_methods[].​defaultboolean
Example: true
payment_methods[].​payment_typestring
Example: "Credit Card"
payment_methods[].​detailsobject
payment_methods[].​created_atstring(date-time)
Example: "2021-01-01T00:00:00Z"
payment_methods[].​updated_atstring(date-time)
Example: "2021-01-01T00:00:00Z"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring(date-time)
Example: "2021-01-01T00:00:00Z"
meta.​paginationobject
Response
application/json
{ "fluid_pay_account": { "id": 123, "default_payment_method_id": 456 }, "payment_methods": [ {} ], "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2021-01-01T00:00:00Z", "pagination": {} } }

Retrieves addresses for a customer

Request

Query
jwtstringrequired

JWT token containing customer authentication

pageinteger

Page number

per_pageinteger

Number of items per page

curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/addresses?jwt=string&page=0&per_page=0'

Responses

addresses retrieved

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 123
fluid_pay_account.​default_address_idintegerrequired
Example: 456
addressesArray of objectsrequired
addresses[].​idinteger
Example: 123
addresses[].​namestring
Example: "My Home Address"
addresses[].​first_namestring
Example: "My"
addresses[].​last_namestring
Example: "Address"
addresses[].​address1string
Example: "123 Main St"
addresses[].​address2string or null
Example: "Apt 1"
addresses[].​address3string or null
Example: "Block 123"
addresses[].​citystring
Example: "Carrollton"
addresses[].​statestring
Example: "TX"
addresses[].​postal_codestring
Example: "75007"
addresses[].​subdivision_codestring or null
Example: "TX"
addresses[].​country_codestring
Example: "US"
addresses[].​defaultboolean
Example: false
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring(date-time)
Example: "2021-01-01T00:00:00Z"
meta.​paginationobject
Response
application/json
{ "fluid_pay_account": { "id": 123, "default_address_id": 456 }, "addresses": [ {} ], "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2021-01-01T00:00:00Z", "pagination": {} } }

Creates a new address for fluid pay account

Request

Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
Bodyapplication/jsonrequired
addressobject
curl -i -X POST \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/create_address?jwt=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "address": {
      "first_name": "John",
      "last_name": "Doe",
      "address1": "123 Main St",
      "address2": "Apt 4B",
      "city": "Boise",
      "state": "ID",
      "postal_code": "83702",
      "country_code": "US",
      "default": false
    }
  }'

Responses

address created

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 1
addressobjectrequired
address.​idintegerrequired
Example: 980190974
address.​address1string
Example: "5833 Dottie Rapids"
address.​address2string or nullrequired
Example: "521 Lupine Dr"
address.​address3string or null
Example: "84555 Christiansen Grove"
address.​citystringrequired
Example: "San Jose"
address.​country_codestring or null
Example: "US"
address.​defaultboolean
Example: false
address.​namestring or null
Example: "Mitchell Stream"
address.​postal_codestring
Example: ""
address.​statestringrequired
Example: "Rancho Palos Verdes"
address.​subdivision_codestring or null
Example: 1231
address.​first_namestring or null
Example: "Mitchell"
address.​last_namestring or null
Example: "Stream"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2024-12-10T08:04:10Z"
Response
application/json
{ "fluid_pay_account": { "id": 1 }, "address": { "id": 980190974, "address1": "5833 Dottie Rapids", "address2": "521 Lupine Dr", "address3": "84555 Christiansen Grove", "city": "San Jose", "country_code": "US", "default": false, "name": "Mitchell Stream", "postal_code": "", "state": "Rancho Palos Verdes", "subdivision_code": 1231, "first_name": "Mitchell", "last_name": "Stream" }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2024-12-10T08:04:10Z" } }

Updates an existing address

Request

Path
address_idintegerrequired

ID of the existing address to update

Example: 123
Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
Bodyapplication/jsonrequired
addressobject
curl -i -X PATCH \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/update_address/{address_id}?jwt=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "address": {
      "address1": "123 Main St",
      "address2": "Apt 4B",
      "city": "Kathmandu",
      "state": "Bagmati",
      "postal_code": "44600",
      "country_id": 1,
      "country_code": "NP",
      "first_name": "John",
      "last_name": "Doe",
      "default": false
    }
  }'

Responses

address updated with existing id

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 1
addressobjectrequired
address.​idintegerrequired
Example: 980190974
address.​address1string
Example: "5833 Dottie Rapids"
address.​address2string or nullrequired
Example: "521 Lupine Dr"
address.​address3string or null
Example: "84555 Christiansen Grove"
address.​citystringrequired
Example: "San Jose"
address.​country_codestring or null
Example: "US"
address.​defaultboolean
Example: false
address.​namestring or null
Example: "Mitchell Stream"
address.​postal_codestring
Example: ""
address.​statestringrequired
Example: "Rancho Palos Verdes"
address.​subdivision_codestring or null
Example: 1231
address.​first_namestring or null
Example: "Mitchell"
address.​last_namestring or null
Example: "Stream"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2024-12-10T08:04:10Z"
Response
application/json
{ "fluid_pay_account": { "id": 1 }, "address": { "id": 980190974, "address1": "5833 Dottie Rapids", "address2": "521 Lupine Dr", "address3": "84555 Christiansen Grove", "city": "San Jose", "country_code": "US", "default": false, "name": "Mitchell Stream", "postal_code": "", "state": "Rancho Palos Verdes", "subdivision_code": 1231, "first_name": "Mitchell", "last_name": "Stream" }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2024-12-10T08:04:10Z" } }

Deletes an existing address

Request

Path
address_idintegerrequired

ID of the existing address to delete

Example: 123
Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
curl -i -X DELETE \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/delete_address/{address_id}?jwt=string'

Responses

address deleted

Bodyapplication/json
messagestringrequired
Example: "Address removed"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2025-02-03T08:04:10Z"
Response
application/json
{ "message": "Address removed", "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2025-02-03T08:04:10Z" } }

Creates a new payment method

Request

Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
typestringrequired

Type of payment method

Enum"credit_card""paypal"
country_codestringrequired

Country ISO code

Example: country_code=US
payment_tokenstringrequired

Payment method token from Spreedly

Example: payment_token=SPREEDLY_TOKEN
default_payment_methodboolean

Set default payment method

Example: default_payment_method=true
curl -i -X POST \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/create_payment_method?country_code=string&default_payment_method=true&jwt=string&payment_token=string&type=credit_card'

Responses

payment method created

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 123
fluid_pay_account.​default_payment_method_idintegerrequired
Example: 456
cardobject
payment_methodobjectrequired
payment_method.​idinteger
Example: 123
payment_method.​sourcestring
Example: "card"
payment_method.​defaultboolean
Example: true
payment_method.​payment_typestring
Example: "Credit Card"
payment_method.​detailsobject
payment_method.​created_atstring(date-time)
Example: "2021-01-01T00:00:00Z"
payment_method.​updated_atstring(date-time)
Example: "2021-01-01T00:00:00Z"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring(date-time)
Example: "2021-01-01T00:00:00Z"
Response
application/json
{ "fluid_pay_account": { "id": 123, "default_payment_method_id": 456 }, "card": {}, "payment_method": { "id": 123, "source": "card", "default": true, "payment_type": "Credit Card", "details": {}, "created_at": "2021-01-01T00:00:00Z", "updated_at": "2021-01-01T00:00:00Z" }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2021-01-01T00:00:00Z" } }

Deletes an existing payment method

Request

Path
payment_method_idintegerrequired

ID of the existing payment method to delete

Example: 123
Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
curl -i -X DELETE \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/delete_payment_method/{payment_method_id}?jwt=string'

Responses

payment_method deleted

Bodyapplication/json
messagestringrequired
Example: "Payment Method removed"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2025-02-03T08:04:10Z"
Response
application/json
{ "message": "Payment Method removed", "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2025-02-03T08:04:10Z" } }

Update default payment method

Request

Path
payment_method_idintegerrequired

ID of the existing payment method to set as default

Example: 123
Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
curl -i -X PATCH \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/update_payment_method/{payment_method_id}?jwt=string'

Responses

payment_method setted as default

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 1
default_payment_methodobjectrequired
default_payment_method.​idinteger
Example: 123
default_payment_method.​sourcestring
Example: "card"
default_payment_method.​defaultboolean
Example: true
default_payment_method.​payment_typestring
Example: "Credit Card"
default_payment_method.​detailsobject
default_payment_method.​created_atstring(date-time)
Example: "2021-01-01T00:00:00Z"
default_payment_method.​updated_atstring(date-time)
Example: "2021-01-01T00:00:00Z"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2024-12-10T08:04:10Z"
Response
application/json
{ "fluid_pay_account": { "id": 1 }, "default_payment_method": { "id": 123, "source": "card", "default": true, "payment_type": "Credit Card", "details": {}, "created_at": "2021-01-01T00:00:00Z", "updated_at": "2021-01-01T00:00:00Z" }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2024-12-10T08:04:10Z" } }

Retrieves fluid pay account and its customer using jwt token

Request

Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/me?jwt=string'

Responses

fluid pay account with customer retrieved

Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​idintegerrequired
Example: 1
fluid_pay_account.​emailstring(email)required
Example: "dipen@gmail.com"
fluid_pay_account.​address_countintegerrequired
Example: 17
fluid_pay_account.​payment_methods_countintegerrequired
Example: 2
customerobjectrequired
customer.​idinteger
Example: 10
customer.​user_company_idinteger or null
customer.​account_idstring
Example: "AU11V9IT8XV1RXYT"
customer.​activeboolean
Example: false
customer.​active_subscriptions_countinteger
Example: 0
customer.​addressesArray of objects
Example: []
customer.​created_atstring(date-time)
Example: "2025-01-28T11:24:32Z"
customer.​customer_notesArray of objects
Example: []
customer.​default_addressobject or null
Example: null
customer.​display_total_spentstring
Example: "$0.00 (USD)"
customer.​emailstring(email)
Example: "test@gmail.com"
customer.​first_namestring or null
Example: null
customer.​full_namestring
Example: "test@gmail.com"
customer.​inactive_subscriptions_countinteger
Example: 0
customer.​last_namestring or null
Example: null
customer.​last_order_idstring or null
Example: null
customer.​metadataobject
Example: {}
customer.​notesstring or null
Example: null
customer.​orders_countinteger
Example: 0
customer.​phonestring or null
Example: null
customer.​total_spentnumber or string
Example: 0
customer.​verified_emailboolean
Example: false
customer.​is_repboolean
Example: true
customer.​jwtstring
Example: "eyJhbGciO1NiJ9.eyJhdXcyNjN9.AZ-4PAgFwVyGp"
metaobjectrequired
meta.​request_idstring
Example: "f5473a8c-8a86-4e0e-b3e8-95392003921b"
meta.​timestampstring
Example: "2025-02-03T08:04:10Z"
Response
application/json
{ "fluid_pay_account": { "id": 1, "email": "dipen@gmail.com", "address_count": 17, "payment_methods_count": 2 }, "customer": { "id": 10, "user_company_id": 0, "account_id": "AU11V9IT8XV1RXYT", "active": false, "active_subscriptions_count": 0, "addresses": [], "created_at": "2025-01-28T11:24:32Z", "customer_notes": [], "default_address": null, "display_total_spent": "$0.00 (USD)", "email": "test@gmail.com", "first_name": null, "full_name": "test@gmail.com", "inactive_subscriptions_count": 0, "last_name": null, "last_order_id": null, "metadata": {}, "notes": null, "orders_count": 0, "phone": null, "total_spent": 0, "verified_email": false, "is_rep": true, "jwt": "eyJhbGciO1NiJ9.eyJhdXcyNjN9.AZ-4PAgFwVyGp" }, "meta": { "request_id": "f5473a8c-8a86-4e0e-b3e8-95392003921b", "timestamp": "2025-02-03T08:04:10Z" } }

Update current customer

Request

Update current customer

Query
jwtstringrequired

JWT token containing customer authentication

Example: jwt=eyJhbGciOiJIUzI1NiJ9.eyJhdXRoX3R5cGUiOiJjdX...
Bodyapplication/json
fluid_pay_accountobjectrequired
fluid_pay_account.​first_namestringnon-empty
fluid_pay_account.​last_namestringnon-empty
fluid_pay_account.​emailstringnon-empty
fluid_pay_account.​phonestringnon-empty
fluid_pay_account.​language_idinteger
curl -i -X PATCH \
  'https://docs.fluid.app/_mock/docs/apis/swagger/api/fluid_pay/update_me?jwt=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "fluid_pay_account": {
      "first_name": "string",
      "last_name": "string",
      "email": "string",
      "phone": "string",
      "language_id": 0
    }
  }'

Responses

success

Bodyapplication/json
fluid_pay_accountobject(Commerce::FluidPayAccount)required
fluid_pay_account.​idintegerrequired
fluid_pay_account.​first_namestring or null
Example: "John"
fluid_pay_account.​last_namestring or null
Example: "Doe"
fluid_pay_account.​emailstringrequired
Example: "john_doe@example.com"
fluid_pay_account.​phonestring or null
Example: "+1234567890"
fluid_pay_account.​created_atstring(date-time)required
Example: "2025-03-10T00:00:00Z"
fluid_pay_account.​updated_atstring(date-time)required
Example: "2025-03-10T00:00:00Z"
fluid_pay_account.​settingsobject or null
Example: {}
fluid_pay_account.​slugstringrequired
Example: "john-doe"
fluid_pay_account.​languageobject or null(Language)
fluid_pay_account.​default_addressobject or null(Address)
fluid_pay_account.​default_payment_methodobject or null(Commerce::PaymentMethod)
metaobjectrequired
meta.​request_idstring
Example: "123e4567-e89b-12d3-a456-426614174000"
meta.​timestampstring
Example: "2021-01-01T00:00:00Z"
Response
application/json
{ "fluid_pay_account": { "id": 0, "first_name": "John", "last_name": "Doe", "email": "john_doe@example.com", "phone": "+1234567890", "created_at": "2025-03-10T00:00:00Z", "updated_at": "2025-03-10T00:00:00Z", "settings": {}, "slug": "john-doe", "language": {}, "default_address": {}, "default_payment_method": {} }, "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }

GlobalEmbeds

Operations

Inventory Levels

Operations

Multi-Factor Authentications

Operations

Notifications

Operations

Order Fulfillments

Operations

Orders

Operations

Pages

Operations

Payment

Operations

Payment Accounts

Operations

Payments

Operations

Paypal

Operations

Products

Operations

Public Companies

Operations

Redirects

Operations

Refunds

Operations

Roles

Operations

Shares

Operations

Subscription Orders

Operations

Subscription Plans

Operations

Subscriptions

Operations

Tracking Informations

Operations

Tree Nodes

Operations

Trees

Operations

Users

Operations

Variant Countries

Operations

Webhooks

Operations

returns a list of all droplet categories

Request

curl -i -X GET \
  https://docs.fluid.app/_mock/docs/apis/swagger/api/droplet_categories \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

returns a list of droplet categories

Bodyapplication/json
droplet_categoriesArray of objects(DropletCategory)
metaobject
Response
application/json
{ "droplet_categories": [ {} ], "meta": { "request_id": "123e4567-e89b-12d3-a456-426614174000", "timestamp": "2021-01-01T00:00:00Z" } }