Fluid Company APIs (1.0)

The Fluid Company APIs provide a comprehensive set of APIs designed to integrate Fluid's powerful services into your applications seamlessly. These APIs use Company API tokens for authentication and provide full access to manage your company's resources including users, orders, products, media, and more.

For APIs that authenticate with User tokens, see the Rep APIs documentation.

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

Activities

Operations

Admins

Operations

Agreements

Operations

Announcements

Operations

ApplePay

Operations

Application Theme Resources

Operations

Application Theme Templates

Operations

Application Themes

Operations

Authentication

Operations

Bank Accounts

Operations

Brand Guidelines

Operations

Business Types

Operations

Callback Definitions

Operations

Callback Registrations

Operations

Callback Schemas

Operations

Carts

Operations

Catch Ups

Operations

Categories

Operations

Checkout

Operations

Collections

Operations

Companies

Operations

Company Countries

Operations

Contacts

Operations

Conversations

Operations

Countries

Operations

Currencies

Operations

Customer Notes

Operations

Customer Orders

Operations

Customers

Operations

DAM Query

Operations

Dam

Operations

Default MySites

Operations

Devices

Operations

Discounts

Operations

Display Settings

Operations

Domains

Operations

Drop Zones

Operations

Droplet Categories

Operations

Droplet Installations

Operations

Droplets

Operations

Enrollment Packs

Operations

Enrollments

Operations

Entities

Operations

Events

Operations

FairShare Order Journey

Operations

Feature Flags

Operations

File Resources

Operations

Fluid Pay

Operations

Form Elements

Operations

Forms

Operations

Global Embeds

Operations

Inventory Levels

Operations

Labels

Operations

Languages

Operations

Libraries

Operations

MCC Codes

Operations

Media

Operations

Delete company media

Request

Delete a media item (soft delete)

Path
idintegerrequired

Media ID

Example: 1
curl -i -X DELETE \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Media deleted successfully

Bodyapplication/json
string
Response
application/json
"string"

Get company media

Request

Get a specific media item by ID

Path
idintegerrequired

Media ID

Example: 1
Query
language_isostring

Language code for translations (e.g., 'en', 'es', 'de')

curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media/{id}?language_iso=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Media retrieved successfully

Bodyapplication/json
idintegerrequired
user_idinteger or null
titlestringrequired
descriptionobject or null
strippedstring or null
media_typestringrequired
Enum"share""update""training""upload"
media_formatstring or null
image_urlstring or null
video_urlstring or null
pdf_urlstring or null
kindstring or null
activebooleanrequired
visibilityinteger or null
share_linkstring or null
preview_linkstring or null
viewsintegerrequired
leadsintegerrequired
watchobject or null
video_statusstring or null
durationinteger or null
cta_urlstring or null
cta_button_textstring or null
cta_enabledbooleanrequired
cta_action_typestring or null
video_shopping_enabledbooleanrequired
prompts_enabledbooleanrequired
ranksArray of strings
settingsobject or null
application_theme_template_idinteger or null
created_atstring(date-time)required
subtitlesobject or null

Hash of language ISO codes to subtitle text

countriesArray of objects
tagsArray of objects
promptsArray of objects

Only included if media_type is 'share' or 'upload'

attached_shareablesArray of objects
commentsArray of objects

Only included if video_shopping_enabled is true and display_comments is true

labelobject or null

Label object from LabelConcern

display_tagstring or null

Display tag from LabelConcern

Response
application/json
{ "id": 0, "user_id": 0, "title": "string", "description": {}, "stripped": "string", "media_type": "share", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "kind": "string", "active": true, "visibility": 0, "share_link": "string", "preview_link": "string", "views": 0, "leads": 0, "watch": {}, "video_status": "string", "duration": 0, "cta_url": "string", "cta_button_text": "string", "cta_enabled": true, "cta_action_type": "string", "video_shopping_enabled": true, "prompts_enabled": true, "ranks": [ "string" ], "settings": {}, "application_theme_template_id": 0, "created_at": "2019-08-24T14:15:22Z", "subtitles": { "property1": "string", "property2": "string" }, "countries": [ {} ], "tags": [ {} ], "prompts": [ {} ], "attached_shareables": [ {} ], "comments": [ {} ], "label": {}, "display_tag": "string" }

Update company media

Request

Update an existing media item

Path
idintegerrequired

Media ID

Example: 1
Bodyapplication/json
idintegerrequired
mediumobjectrequired
medium.​user_idinteger
medium.​media_typestringnon-empty
medium.​image_urlnull or string
medium.​video_urlnull or string
medium.​pdf_urlnull or string
medium.​powerpoint_urlstringnon-empty
medium.​titlestringnon-empty
medium.​descriptionnull or string
medium.​activeboolean
medium.​compressed_image_urlstringnon-empty
medium.​prompts_enabledboolean
medium.​kindstringnon-empty
medium.​visibilitystringnon-empty
medium.​cta_enabledboolean
medium.​cta_action_typestringnon-empty
medium.​cta_urlnull or string
medium.​cta_button_textstringnon-empty
medium.​no_indexboolean
medium.​display_commentsboolean
medium.​categorystringnon-empty
medium.​display_shopboolean
medium.​dam_asset_idinteger
medium.​dam_asset_codestringnon-empty
medium.​lead_captureboolean
medium.​video_shopping_enabledboolean
medium.​application_theme_template_idinteger
medium.​settingsobject
medium.​labelobject
medium.​subtitlesArray of objects
medium.​available_countriesArray of strings
medium.​tags_attributesArray of objects
medium.​prompts_attributesArray of objects
medium.​attached_shareables_attributesArray of objects
curl -i -X PUT \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": 0,
    "medium": {
      "user_id": 0,
      "media_type": "string",
      "image_url": null,
      "video_url": null,
      "pdf_url": null,
      "powerpoint_url": "string",
      "title": "string",
      "description": null,
      "active": true,
      "compressed_image_url": "string",
      "prompts_enabled": true,
      "kind": "string",
      "visibility": "string",
      "cta_enabled": true,
      "cta_action_type": "string",
      "cta_url": null,
      "cta_button_text": "string",
      "no_index": true,
      "display_comments": true,
      "category": "string",
      "display_shop": true,
      "dam_asset_id": 0,
      "dam_asset_code": "string",
      "lead_capture": true,
      "video_shopping_enabled": true,
      "application_theme_template_id": 0,
      "settings": {
        "player": {
          "primary_color": "string",
          "button_border_radius": "string",
          "control_bar_height": "string",
          "progress_color": "string",
          "volume_color": "string",
          "show_controls": true,
          "autoplay": true,
          "loop": true,
          "muted": true,
          "preload": "string",
          "playback_rates": "string",
          "show_remaining_time": true,
          "responsive": true,
          "fluid": true
        },
        "embed": {
          "behavior": "string",
          "responsive": true,
          "width": "string",
          "height": "string",
          "show_controls": true,
          "autoplay": true,
          "loop": true
        },
        "cta": {
          "enabled": true,
          "type": "string",
          "url": null,
          "button_description": null,
          "button_text": "string",
          "button_color": "string"
        },
        "fair_share": {
          "bg_color": "string",
          "rep_name": "string",
          "rep_avatar": "string",
          "message": "string"
        },
        "live_chat": {
          "enabled": true,
          "color": "string",
          "welcome_message": "string"
        },
        "thumbnail": {
          "show_title": true,
          "show_description": true
        },
        "seo": {
          "title": "string",
          "description": "string",
          "image_url": "string",
          "image_path": "string",
          "block_crawler": true
        }
      },
      "label": {
        "id": 0,
        "title": "string"
      },
      "subtitles": [
        {
          "lang": "string",
          "src": "string"
        }
      ],
      "available_countries": [
        "string"
      ],
      "tags_attributes": [
        {
          "id": 0,
          "_destroy": true,
          "name": "string"
        }
      ],
      "prompts_attributes": [
        {
          "id": 0,
          "title": "string",
          "content": "string",
          "_destroy": true
        }
      ],
      "attached_shareables_attributes": [
        {
          "id": 0,
          "attachment_type": "string",
          "attachment_id": 0,
          "timestamp": "string",
          "_destroy": true
        }
      ]
    }
  }'

Responses

Media updated successfully

Bodyapplication/json
mediumobject(MediumSerializer)

Media resource with user-specific data and associations

metaobject(Meta)

Standard response metadata

Response
application/json
{ "medium": { "id": 0, "user_id": 0, "title": "string", "description": {}, "stripped": "string", "media_type": "share", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "kind": "string", "active": true, "visibility": 0, "share_link": "string", "preview_link": "string", "views": 0, "leads": 0, "watch": {}, "video_status": "string", "duration": 0, "cta_url": "string", "cta_button_text": "string", "cta_enabled": true, "cta_action_type": "string", "video_shopping_enabled": true, "prompts_enabled": true, "ranks": [], "settings": {}, "application_theme_template_id": 0, "created_at": "2019-08-24T14:15:22Z", "subtitles": {}, "countries": [], "tags": [], "prompts": [], "attached_shareables": [], "comments": [], "label": {}, "display_tag": "string" }, "meta": { "request_id": "02368efa-fda5-4c51-a6f4-75e351796526", "timestamp": "2025-06-30T16:17:59Z" } }

List company media

Request

Get all company media with pagination and filtering. Only returns 'share' type media by default.

Query
pageinteger

Page number for pagination

Default 1
per_pageinteger

Number of records per page

Default 10
search_querystring

Search by title

sorted_bystring

Sort order (title_desc, created_at_desc, etc)

statusstring

Filter by status (active/inactive)

Enum"active""inactive"
language_isostring

Language code for translations (e.g., 'en', 'es', 'de')

curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media?language_iso=string&page=1&per_page=10&search_query=string&sorted_by=string&status=active' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Company media retrieved successfully

Bodyapplication/jsonArray [
One of:
paginationobject
]
Response
application/json
[ { "pagination": {} } ]

Create company media

Request

Create a new media item for the company

Bodyapplication/json
mediumobjectrequired
medium.​user_idinteger
medium.​languagestringnon-empty
medium.​media_typestringnon-empty
medium.​image_urlstringnon-empty
medium.​video_urlstringnon-empty
medium.​pdf_urlstringnon-empty
medium.​powerpoint_urlstringnon-empty
medium.​titlestringnon-empty
medium.​descriptionstringnon-empty
medium.​activeboolean
medium.​compressed_image_urlstringnon-empty
medium.​prompts_enabledboolean
medium.​kindstringnon-empty
medium.​visibilitystringnon-empty
medium.​cta_enabledboolean
medium.​cta_action_typestringnon-empty
medium.​cta_urlstringnon-empty
medium.​cta_button_textstringnon-empty
medium.​no_indexboolean
medium.​display_commentsboolean
medium.​categorystringnon-empty
medium.​display_shopboolean
medium.​dam_asset_idinteger
medium.​dam_asset_codestringnon-empty
medium.​lead_captureboolean
medium.​video_shopping_enabledboolean
medium.​application_theme_template_idinteger
medium.​settingsobject
medium.​labelobject
medium.​subtitlesArray of objects
medium.​available_countriesArray of strings
medium.​tags_attributesArray of objects
medium.​prompts_attributesArray of objects
medium.​attached_shareables_attributesArray of objects
curl -i -X POST \
  https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "medium": {
      "user_id": 0,
      "language": "string",
      "media_type": "string",
      "image_url": "string",
      "video_url": "string",
      "pdf_url": "string",
      "powerpoint_url": "string",
      "title": "string",
      "description": "string",
      "active": true,
      "compressed_image_url": "string",
      "prompts_enabled": true,
      "kind": "string",
      "visibility": "string",
      "cta_enabled": true,
      "cta_action_type": "string",
      "cta_url": "string",
      "cta_button_text": "string",
      "no_index": true,
      "display_comments": true,
      "category": "string",
      "display_shop": true,
      "dam_asset_id": 0,
      "dam_asset_code": "string",
      "lead_capture": true,
      "video_shopping_enabled": true,
      "application_theme_template_id": 0,
      "settings": {},
      "label": {
        "id": 0,
        "title": "string"
      },
      "subtitles": [
        {
          "lang": "string",
          "src": "string"
        }
      ],
      "available_countries": [
        "string"
      ],
      "tags_attributes": [
        {
          "id": 0,
          "_destroy": true,
          "name": "string"
        }
      ],
      "prompts_attributes": [
        {
          "id": 0,
          "title": "string",
          "content": "string",
          "_destroy": true
        }
      ],
      "attached_shareables_attributes": [
        {
          "id": 0,
          "attachment_type": "string",
          "attachment_id": 0,
          "timestamp": "string",
          "_destroy": true
        }
      ]
    }
  }'

Responses

Media created successfully

Bodyapplication/json
mediumobject(MediumSerializer)

Media resource with user-specific data and associations

metaobject(Meta)

Standard response metadata

Response
application/json
{ "medium": { "id": 0, "user_id": 0, "title": "string", "description": {}, "stripped": "string", "media_type": "share", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "kind": "string", "active": true, "visibility": 0, "share_link": "string", "preview_link": "string", "views": 0, "leads": 0, "watch": {}, "video_status": "string", "duration": 0, "cta_url": "string", "cta_button_text": "string", "cta_enabled": true, "cta_action_type": "string", "video_shopping_enabled": true, "prompts_enabled": true, "ranks": [], "settings": {}, "application_theme_template_id": 0, "created_at": "2019-08-24T14:15:22Z", "subtitles": {}, "countries": [], "tags": [], "prompts": [], "attached_shareables": [], "comments": [], "label": {}, "display_tag": "string" }, "meta": { "request_id": "02368efa-fda5-4c51-a6f4-75e351796526", "timestamp": "2025-06-30T16:17:59Z" } }

Send media to top

Request

Move a media item to the top of the list by updating its created_at timestamp

Path
idintegerrequired

Media ID

Example: 1
curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media/{id}/send_to_top' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Media sent to top successfully

Bodyapplication/json
idintegerrequired
user_idinteger or null
titlestringrequired
descriptionobject or null
strippedstring or null
media_typestringrequired
Enum"share""update""training""upload"
media_formatstring or null
image_urlstring or null
video_urlstring or null
pdf_urlstring or null
kindstring or null
activebooleanrequired
visibilityinteger or null
share_linkstring or null
preview_linkstring or null
viewsintegerrequired
leadsintegerrequired
watchobject or null
video_statusstring or null
durationinteger or null
cta_urlstring or null
cta_button_textstring or null
cta_enabledbooleanrequired
cta_action_typestring or null
video_shopping_enabledbooleanrequired
prompts_enabledbooleanrequired
ranksArray of strings
settingsobject or null
application_theme_template_idinteger or null
created_atstring(date-time)required
subtitlesobject or null

Hash of language ISO codes to subtitle text

countriesArray of objects
tagsArray of objects
promptsArray of objects

Only included if media_type is 'share' or 'upload'

attached_shareablesArray of objects
commentsArray of objects

Only included if video_shopping_enabled is true and display_comments is true

labelobject or null

Label object from LabelConcern

display_tagstring or null

Display tag from LabelConcern

Response
application/json
{ "id": 0, "user_id": 0, "title": "string", "description": {}, "stripped": "string", "media_type": "share", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "kind": "string", "active": true, "visibility": 0, "share_link": "string", "preview_link": "string", "views": 0, "leads": 0, "watch": {}, "video_status": "string", "duration": 0, "cta_url": "string", "cta_button_text": "string", "cta_enabled": true, "cta_action_type": "string", "video_shopping_enabled": true, "prompts_enabled": true, "ranks": [ "string" ], "settings": {}, "application_theme_template_id": 0, "created_at": "2019-08-24T14:15:22Z", "subtitles": { "property1": "string", "property2": "string" }, "countries": [ {} ], "tags": [ {} ], "prompts": [ {} ], "attached_shareables": [ {} ], "comments": [ {} ], "label": {}, "display_tag": "string" }

List media

Request

Get all media with pagination and filtering

Query
pageinteger

Page number for pagination

Default 1
per_pageinteger

Number of records per page

Default 10
search_querystring

Search by title

sorted_bystring

Sort order (title_desc, created_at_desc, etc)

Default "title_desc"
statusstring

Filter by status (active/inactive)

language_isostring

Language code for translations (e.g., 'en', 'es', 'de')

curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/media?language_iso=string&page=1&per_page=10&search_query=string&sorted_by=title_desc&status=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Media retrieved successfully

Bodyapplication/jsonArray [
idintegerrequired
user_idinteger or null
titlestringrequired
descriptionobject or null
strippedstring or null
media_typestringrequired
Enum"share""update""training""upload"
media_formatstring or null
image_urlstring or null
video_urlstring or null
pdf_urlstring or null
kindstring or null
activebooleanrequired
visibilityinteger or null
share_linkstring or null
preview_linkstring or null
viewsintegerrequired
leadsintegerrequired
watchobject or null
video_statusstring or null
durationinteger or null
cta_urlstring or null
cta_button_textstring or null
cta_enabledbooleanrequired
cta_action_typestring or null
video_shopping_enabledbooleanrequired
prompts_enabledbooleanrequired
ranksArray of strings
settingsobject or null
application_theme_template_idinteger or null
created_atstring(date-time)required
subtitlesobject or null

Hash of language ISO codes to subtitle text

countriesArray of objects
tagsArray of objects
promptsArray of objects

Only included if media_type is 'share' or 'upload'

attached_shareablesArray of objects
commentsArray of objects

Only included if video_shopping_enabled is true and display_comments is true

labelobject or null

Label object from LabelConcern

display_tagstring or null

Display tag from LabelConcern

]
Response
application/json
[ { "id": 0, "user_id": 0, "title": "string", "description": {}, "stripped": "string", "media_type": "share", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "kind": "string", "active": true, "visibility": 0, "share_link": "string", "preview_link": "string", "views": 0, "leads": 0, "watch": {}, "video_status": "string", "duration": 0, "cta_url": "string", "cta_button_text": "string", "cta_enabled": true, "cta_action_type": "string", "video_shopping_enabled": true, "prompts_enabled": true, "ranks": [], "settings": {}, "application_theme_template_id": 0, "created_at": "2019-08-24T14:15:22Z", "subtitles": {}, "countries": [], "tags": [], "prompts": [], "attached_shareables": [], "comments": [], "label": {}, "display_tag": "string" } ]

Create Media Content

Request

Creates a new media content item with specified details including title, type, description and optional attributes like images, videos, PDFs, or presentations. Supports various media types and configurations including CTA actions, video shopping features, and subtitle options.

Query
titlestringrequired

Title of the media content

media_typestringrequired

Type of media content

Enum"share""training""update""upload"
descriptionstringrequired

Detailed description of the media content

languagestring

ISO language code for the media content

Bodyapplication/jsonrequired
mediumobject(Medium)required
Example: {"title":"Subtitles Test","language":"en","media_type":"share","description":"This is the body text of the medium","video_url":"https://videos.pexels.com/video-files/20576968/20576968-hd_1920_1080_25fps.mp4","available_countries":["npl","us","ind","fi"],"tags_attributes":[{"name":"meds"}],"label":{"title":"AD"},"category":"media_category","cta_enabled":true,"cta_action_type":"visit_on_click","cta_button_text":"Learn More","cta_url":"https://google.com","display_shop":true,"video_shopping_enabled":true,"attached_shareables_attributes":[{"attachment_type":"Product","timestamp":"00:00:05"},{"attachment_type":"Product","attachment_id":7}],"subtitles":[{"lang":"en"},{"lang":"de","src":"https://raw.githubusercontent.com/andreyvit/subtitle-tools/master/sample.srt"}],"prompts_attributes":[{"title":"This is a Prompt","content":"This is an example content of a prompt."}]}
medium.​titlestringrequired
Example: "Subtitles Test"
medium.​languagestringrequired
Example: "en"
medium.​media_typestringrequired
Example: "share"
medium.​descriptionstringrequired
Example: "This is the body text of the medium"
medium.​video_urlstringrequired
Example: "https://videos.pexels.com/video-files/20576968/20576968-hd_1920_1080_25fps.mp4"
medium.​available_countriesArray of stringsrequired
Example: ["npl","us","ind","fi"]
medium.​tags_attributesArray of objects(TagsAttribute)required
Example: [{"name":"meds"}]
medium.​tags_attributes[].​namestringrequired
Example: "meds"
medium.​labelobject(Label2)required
Example: {"title":"AD"}
medium.​label.​titlestringrequired
Example: "AD"
medium.​categorystringrequired
Example: "media_category"
medium.​cta_enabledbooleanrequired
Example: true
medium.​cta_action_typestringrequired
Example: "visit_on_click"
medium.​cta_button_textstringrequired
Example: "Learn More"
medium.​cta_urlstringrequired
Example: "https://google.com"
medium.​display_shopbooleanrequired
Example: true
medium.​video_shopping_enabledbooleanrequired
Example: true
medium.​attached_shareables_attributesArray of objects(AttachedShareablesAttribute)required
Example: [{"attachment_type":"Product","timestamp":"00:00:05"},{"attachment_type":"Product","attachment_id":7}]
medium.​attached_shareables_attributes[].​attachment_typestringrequired
Example: "Product"
medium.​attached_shareables_attributes[].​timestampstring
Example: "00:00:05"
medium.​attached_shareables_attributes[].​attachment_idinteger(int32)
medium.​subtitlesArray of objects(Subtitles1)required
Example: [{"lang":"en"},{"lang":"de","src":"https://raw.githubusercontent.com/andreyvit/subtitle-tools/master/sample.srt"}]
medium.​subtitles[].​langstringrequired
Example: "en"
medium.​subtitles[].​srcstring
medium.​prompts_attributesArray of objects(PromptsAttribute)required
Example: [{"title":"This is a Prompt","content":"This is an example content of a prompt."}]
medium.​prompts_attributes[].​titlestringrequired
Example: "This is a Prompt"
medium.​prompts_attributes[].​contentstringrequired
Example: "This is an example content of a prompt."
curl -i -X POST \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media/create?description=string&language=string&media_type=share&title=string' \
  -H 'Content-Type: application/json' \
  -d '{
    "medium": {
      "title": "Subtitles Test",
      "language": "en",
      "media_type": "share",
      "description": "This is the body text of the medium",
      "video_url": "https://videos.pexels.com/video-files/20576968/20576968-hd_1920_1080_25fps.mp4",
      "available_countries": [
        "npl",
        "us",
        "ind",
        "fi"
      ],
      "tags_attributes": [
        {
          "name": "meds"
        }
      ],
      "label": {
        "title": "AD"
      },
      "category": "media_category",
      "cta_enabled": true,
      "cta_action_type": "visit_on_click",
      "cta_button_text": "Learn More",
      "cta_url": "https://google.com",
      "display_shop": true,
      "video_shopping_enabled": true,
      "attached_shareables_attributes": [
        {
          "attachment_type": "Product",
          "timestamp": "00:00:05"
        },
        {
          "attachment_type": "Product",
          "attachment_id": 7
        }
      ],
      "subtitles": [
        {
          "lang": "en"
        },
        {
          "lang": "de",
          "src": "https://raw.githubusercontent.com/andreyvit/subtitle-tools/master/sample.srt"
        }
      ],
      "prompts_attributes": [
        {
          "title": "This is a Prompt",
          "content": "This is an example content of a prompt."
        }
      ]
    }
  }'

Responses

Headers
Content-Typestring

The content type of the response

Example: "application/json"
Content-Lengthstring

The length of the response content in bytes

Example: "981"
X-Request-Idstring

A unique identifier for the request

Example: "b1b7bf86-146e-4c66-b4c6-ac6f0f9ddafa"

Send Media Notifications to Affiliates

Request

Sends notifications about media content to affiliates in specified countries.

Path
idintegerrequired

The ID of the media content

Query
available_countriesstringrequired

Comma-separated list of country ISO codes whose affiliates should be notified

curl -i -X GET \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/company/media/{id}/send_notifications?available_countries=string'

Responses

Headers
Content-Typestring

The content type of the response

Example: "application/json"
Content-Lengthstring

The length of the response content in bytes

Example: "981"
X-Request-Idstring

A unique identifier for the request

Example: "b1b7bf86-146e-4c66-b4c6-ac6f0f9ddafa"

Messages

Operations

Metafield Definitions

Operations

Metafields

Operations

Mobile Widgets

Operations

Multi-Factor Authentications

Operations

Notifications

Operations

Onboarding

Operations

Onboarding Info

Operations

Order Fulfillments

Operations

Orders

Operations

Owners

Operations

Pages

Operations

Payment

Operations

Payment Accounts

Operations

Payment Integrations

Operations

Payments

Operations

Paypal

Operations

Points

Operations

Points Ledgers

Operations

Points Values

Operations

Posts

Operations

Product Bundles

Operations

Product Images

Operations

Product Subscription Plans

Operations

Products

Operations

Prompts

Operations

Public Assets

Operations

Public Companies

Operations

Public Drop Zones

Operations

Ranks

Operations

Recipients

Operations

Redirects

Operations

Refunds

Operations

Reps

Operations

Roles

Operations

Root Themes

Operations

Shares

Operations

Shop

Operations

Sitemap

Operations

Social Media

Operations

Subscription Plans

Operations

Subscriptions

Operations

System Monitoring

Operations

Tags

Operations

Tax Categories

Operations

Theme Region Rules

Operations

Tiles

Operations

Tracking Informations

Operations

Tree Nodes

Operations

Trees

Operations

Users

Operations

Variant Countries

Operations

Variant Images

Operations

Variant Inventory Levels

Operations

Variants

Operations

Warehouses

Operations

Webhook Events

Operations

Webhook Schemas

Operations

Webhooks

Operations

Webhooks Resources

Operations

affiliate

Operations

carts

Operations

checkout

Operations

enrollment-packs

Operations

events

Operations

fingerprint

Operations

lead

Operations

media

Operations

Get media by slug

Request

Path
slugstringrequired

Media slug

Example: media-slug
Bodyapplication/json
metadataobject(RequestMetadata)required
metadata.​fluid_shopstringrequired
Example: "myshop"
metadata.​fluid_sessionstring(/\Afs_[0-9A-Za-z&&[^0OIl]]{22}\z/)required
Example: "fs_szwdDuRbqEe7AV7sXk7vVq"
metadata.​fluid_localestring(/\A[a-z]{2}_[A-Z]{2}\z/)
Example: "en_US"
metadata.​fluid_journeystring
metadata.​attributionAttributionEmail (object) or AttributionUsername (object) or AttributionSharedGuid (object) or AttributionFluidRepId (object) or AttributionExternalId (object)(Attribution)
Any of:
curl -i -X POST \
  'https://docs.fluid.app/_mock/docs/apis/company.api/api/public/v2025-06/media/{slug}' \
  -H 'Content-Type: application/json' \
  -d '{
    "metadata": {
      "fluid_shop": "myshop",
      "fluid_session": "fs_szwdDuRbqEe7AV7sXk7vVq",
      "fluid_locale": "en_US",
      "fluid_journey": "string",
      "attribution": {
        "email": "salesrep@example.com"
      }
    }
  }'

Responses

media retrieved successfully

Bodyapplication/json
statusnumberrequired
Example: 200
mediaobject(Media)required
media.​idintegerrequired
media.​slugstring or null
media.​custom_slugbooleanrequired
Default false
media.​titlestringrequired
media.​kindstring or null
media.​media_typestringrequired
media.​media_formatstringrequired
media.​image_urlstring or null
media.​video_urlstring or null
media.​pdf_urlstring or null
media.​powerpoint_urlstring or null
media.​durationinteger or null
Default 0
media.​activeboolean or null
Default true
media.​descriptionstringrequired
media.​subtitlesobject or null
Default "{}"
media.​comments_countintegerrequired
media.​settingsobject or null
media.​productsArray of objects(Product)required
media.​products[].​idintegerrequired
media.​products[].​titlestringrequired
media.​products[].​image_urlstring or null
media.​products[].​image_pathstring or null
media.​products[].​cvinteger or null
Default 0
media.​products[].​taxnumber or string or null
Default "0.0"
media.​products[].​skustring or null
media.​products[].​metadataobjectrequired
Default "{}"
media.​products[].​external_idstring or null
media.​products[].​pricenumber or string or null[ 0 .. 99999999 ]
Default "0.0"
media.​products[].​introductionstring or null
media.​products[].​price_in_currencystringrequired
media.​products[].​tax_in_currencystringrequired
media.​products[].​cv_in_currencystringrequired
media.​products[].​metafieldsArray of objects(LegacyMetafield)required
media.​products[].​metafields[].​idintegerrequired
media.​products[].​metafields[].​namespacestring<= 20 characters^[a-zA-Z0-9_]+$required

A container for related metafields. Commonly used to group metafields by app or functionality.

Example: "custom"
media.​products[].​metafields[].​keystring<= 30 characters^[a-zA-Z0-9_]+$required

The unique identifier for the metafield within its namespace. Must be unique per namespace and owner.

Example: "material"
media.​products[].​metafields[].​valuestring or objectrequired

The actual data stored in the metafield. Type depends on value_type.

Example: "cotton"
media.​products[].​metafields[].​value_typestringrequired

The data type that defines how the value should be interpreted and validated.

Example: "single_line_text_field"
media.​products[].​metafields[].​descriptionstring or null

Optional human-readable description explaining the purpose of this metafield.

Example: "The primary material used in this product"
media.​products[].​metafields[].​owner_typestringrequired

The type of resource that this metafield belongs to (polymorphic association).

Example: "Product"
media.​products[].​metafields[].​owner_idintegerrequired

The ID of the specific resource that this metafield belongs to.

Example: 12345
media.​products[].​metafields[].​created_atstring(date-time)required

Timestamp when the metafield was created.

Example: "2021-01-01T00:00:00Z"
media.​products[].​metafields[].​updated_atstring(date-time)required

Timestamp when the metafield was last updated.

Example: "2021-01-01T00:00:00Z"
media.​products[].​metafields[].​metafield_definitionobject or null(MetafieldDefinition)
media.​products[].​variantsArray of objects(Variant)required
media.​products[].​variants[].​idintegerrequired
media.​products[].​variants[].​titlestring or null
Example: "Variant 1"
media.​products[].​variants[].​image_urlstring or null
Example: "https://via.placeholder.com/150"
media.​products[].​variants[].​image_pathstring or null
Example: "https://via.placeholder.com/150"
media.​products[].​variants[].​skustring or null
Example: "SKU-123456"
media.​products[].​variants[].​primary_imagestring or null
Example: "https://via.placeholder.com/150"
media.​products[].​variants[].​pricenumber or string or null
Example: 100
media.​products[].​variants[].​price_in_currencystringrequired
Example: "USD 100.00"
media.​products[].​variants[].​optionsArray of objectsrequired
media.​products[].​variants[].​options[].​titlestring
Example: "Size"
media.​products[].​variants[].​options[].​valuestring
Example: "XL"
media.​enrollment_packsArray of objects(EnrollmentPack)required
media.​enrollment_packs[].​idintegerrequired
media.​enrollment_packs[].​titlestringrequired
media.​enrollment_packs[].​statusstringrequired
media.​enrollment_packs[].​image_urlstringrequired
metadataobject(ResponseMetadata)required
metadata.​fluid_shopstringrequired
metadata.​fluid_sessionstringrequired
metadata.​fluid_localestring or null(/\A[a-z]{2}_[A-Z]{2}\z/)
Example: "en_US"
metadata.​request_uuidstring(uuid)required
metadata.​timestampstringrequired
Response
application/json
{ "status": 200, "media": { "id": 0, "slug": "string", "custom_slug": false, "title": "string", "kind": "string", "media_type": "string", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "powerpoint_url": "string", "duration": 0, "active": true, "description": "string", "subtitles": "{}", "comments_count": 0, "settings": {}, "products": [], "enrollment_packs": [] }, "metadata": { "fluid_shop": "string", "fluid_session": "string", "fluid_locale": "en_US", "request_uuid": "a699086b-c336-457e-9191-0c825d6efbc8", "timestamp": "string" } }

Create video analytics event

Request

Bodyapplication/json
video_analyticsobjectrequired
video_analytics.​event_typestringrequired
Enum"video.started""video.paused""video.resumed""video.completed""video.dismissed"
video_analytics.​media_idintegerrequired
video_analytics.​occurred_atnumberrequired
video_analytics.​position_in_secondsnumber
video_analytics.​screenshotstring
metadataobject
curl -i -X POST \
  https://docs.fluid.app/_mock/docs/apis/company.api/api/public/v2025-06/events/media/video_analytics \
  -H 'Content-Type: application/json' \
  -d '{
    "video_analytics": {
      "event_type": "video.started",
      "media_id": 0,
      "occurred_at": 0,
      "position_in_seconds": 0,
      "screenshot": "string"
    },
    "metadata": {}
  }'

Responses

video analytics event created successfully

Bodyapplication/json
metaobjectrequired
meta.​request_idstring or nullrequired
meta.​timestampstringrequired
Response
application/json
{ "meta": { "request_id": "string", "timestamp": "string" } }

Get media by slug (deprecated)Deprecated

Request

Bodyapplication/json
mediaobjectrequired
media.​idstring

Media slug

Example: "test-media-slug"
metadataobject(RequestMetadata)required
metadata.​fluid_shopstringrequired
Example: "myshop"
metadata.​fluid_sessionstring(/\Afs_[0-9A-Za-z&&[^0OIl]]{22}\z/)required
Example: "fs_szwdDuRbqEe7AV7sXk7vVq"
metadata.​fluid_localestring(/\A[a-z]{2}_[A-Z]{2}\z/)
Example: "en_US"
metadata.​fluid_journeystring
metadata.​attributionAttributionEmail (object) or AttributionUsername (object) or AttributionSharedGuid (object) or AttributionFluidRepId (object) or AttributionExternalId (object)(Attribution)
Any of:
curl -i -X POST \
  https://docs.fluid.app/_mock/docs/apis/company.api/api/public/v2025-06/media \
  -H 'Content-Type: application/json' \
  -d '{
    "media": {
      "id": "test-media-slug"
    },
    "metadata": {
      "fluid_shop": "myshop",
      "fluid_session": "fs_szwdDuRbqEe7AV7sXk7vVq",
      "fluid_locale": "en_US",
      "fluid_journey": "string",
      "attribution": {
        "email": "salesrep@example.com"
      }
    }
  }'

Responses

media retrieved successfully

Bodyapplication/json
statusnumberrequired
Example: 200
mediaobject(Media)required
media.​idintegerrequired
media.​slugstring or null
media.​custom_slugbooleanrequired
Default false
media.​titlestringrequired
media.​kindstring or null
media.​media_typestringrequired
media.​media_formatstringrequired
media.​image_urlstring or null
media.​video_urlstring or null
media.​pdf_urlstring or null
media.​powerpoint_urlstring or null
media.​durationinteger or null
Default 0
media.​activeboolean or null
Default true
media.​descriptionstringrequired
media.​subtitlesobject or null
Default "{}"
media.​comments_countintegerrequired
media.​settingsobject or null
media.​productsArray of objects(Product)required
media.​products[].​idintegerrequired
media.​products[].​titlestringrequired
media.​products[].​image_urlstring or null
media.​products[].​image_pathstring or null
media.​products[].​cvinteger or null
Default 0
media.​products[].​taxnumber or string or null
Default "0.0"
media.​products[].​skustring or null
media.​products[].​metadataobjectrequired
Default "{}"
media.​products[].​external_idstring or null
media.​products[].​pricenumber or string or null[ 0 .. 99999999 ]
Default "0.0"
media.​products[].​introductionstring or null
media.​products[].​price_in_currencystringrequired
media.​products[].​tax_in_currencystringrequired
media.​products[].​cv_in_currencystringrequired
media.​products[].​metafieldsArray of objects(LegacyMetafield)required
media.​products[].​metafields[].​idintegerrequired
media.​products[].​metafields[].​namespacestring<= 20 characters^[a-zA-Z0-9_]+$required

A container for related metafields. Commonly used to group metafields by app or functionality.

Example: "custom"
media.​products[].​metafields[].​keystring<= 30 characters^[a-zA-Z0-9_]+$required

The unique identifier for the metafield within its namespace. Must be unique per namespace and owner.

Example: "material"
media.​products[].​metafields[].​valuestring or objectrequired

The actual data stored in the metafield. Type depends on value_type.

Example: "cotton"
media.​products[].​metafields[].​value_typestringrequired

The data type that defines how the value should be interpreted and validated.

Example: "single_line_text_field"
media.​products[].​metafields[].​descriptionstring or null

Optional human-readable description explaining the purpose of this metafield.

Example: "The primary material used in this product"
media.​products[].​metafields[].​owner_typestringrequired

The type of resource that this metafield belongs to (polymorphic association).

Example: "Product"
media.​products[].​metafields[].​owner_idintegerrequired

The ID of the specific resource that this metafield belongs to.

Example: 12345
media.​products[].​metafields[].​created_atstring(date-time)required

Timestamp when the metafield was created.

Example: "2021-01-01T00:00:00Z"
media.​products[].​metafields[].​updated_atstring(date-time)required

Timestamp when the metafield was last updated.

Example: "2021-01-01T00:00:00Z"
media.​products[].​metafields[].​metafield_definitionobject or null(MetafieldDefinition)
media.​products[].​variantsArray of objects(Variant)required
media.​products[].​variants[].​idintegerrequired
media.​products[].​variants[].​titlestring or null
Example: "Variant 1"
media.​products[].​variants[].​image_urlstring or null
Example: "https://via.placeholder.com/150"
media.​products[].​variants[].​image_pathstring or null
Example: "https://via.placeholder.com/150"
media.​products[].​variants[].​skustring or null
Example: "SKU-123456"
media.​products[].​variants[].​primary_imagestring or null
Example: "https://via.placeholder.com/150"
media.​products[].​variants[].​pricenumber or string or null
Example: 100
media.​products[].​variants[].​price_in_currencystringrequired
Example: "USD 100.00"
media.​products[].​variants[].​optionsArray of objectsrequired
media.​products[].​variants[].​options[].​titlestring
Example: "Size"
media.​products[].​variants[].​options[].​valuestring
Example: "XL"
media.​enrollment_packsArray of objects(EnrollmentPack)required
media.​enrollment_packs[].​idintegerrequired
media.​enrollment_packs[].​titlestringrequired
media.​enrollment_packs[].​statusstringrequired
media.​enrollment_packs[].​image_urlstringrequired
metadataobject(ResponseMetadata)required
metadata.​fluid_shopstringrequired
metadata.​fluid_sessionstringrequired
metadata.​fluid_localestring or null(/\A[a-z]{2}_[A-Z]{2}\z/)
Example: "en_US"
metadata.​request_uuidstring(uuid)required
metadata.​timestampstringrequired
Response
application/json
{ "status": 200, "media": { "id": 0, "slug": "string", "custom_slug": false, "title": "string", "kind": "string", "media_type": "string", "media_format": "string", "image_url": "string", "video_url": "string", "pdf_url": "string", "powerpoint_url": "string", "duration": 0, "active": true, "description": "string", "subtitles": "{}", "comments_count": 0, "settings": {}, "products": [], "enrollment_packs": [] }, "metadata": { "fluid_shop": "string", "fluid_session": "string", "fluid_locale": "en_US", "request_uuid": "a699086b-c336-457e-9191-0c825d6efbc8", "timestamp": "string" } }

page

Operations

playlist

Operations

product

Operations

session

Operations

settings

Operations

url

Operations

widgets

Operations