> For the complete documentation index, see [llms.txt](https://help.blings.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.blings.io/role-guides/developer/getting-started/how-to-connect-my-data-to-the-sdk.md).

# How to connect my data to the video

Blings MP5 experiences render in real time from the data you provide. The same project can be delivered through a CRM link, spreadsheet batch, hosted landing page, custom web page, SDK call, API-backed app, or mobile WebView as long as the data keys match the project's Dynamic Data schema.

Start in Platform Integration when you need project-specific delivery instructions:

{% content-ref url="/pages/x3JPpFV8w1i0Dwwm10bj" %}
[Integration](/apps/blings-platform/integration.md)
{% endcontent-ref %}

Use Platform Simulation separately to validate representative viewer profiles and rendered personalization.

{% content-ref url="/pages/VkH17x1J2SH1VmvzEgwU" %}
[Simulation](/apps/blings-platform/simulation.md)
{% endcontent-ref %}

Use this page to choose the integration pattern and open the correct implementation guide.

## Integration Options

| Option                             | Best for                                                                                                                                                          | How data reaches the MP5                                                                                           |
| ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ |
| CRM merge fields in URL parameters | Email, SMS, push, and lifecycle campaigns managed in tools such as Salesforce, Braze, HubSpot, Klaviyo, Marketo, Iterable, Mailchimp, or Adobe Journey Optimizer. | The generated video URL contains query parameters whose values are CRM merge tags.                                 |
| Dynamic thumbnail                  | Email or messaging campaigns that need a personalized preview image or GIF.                                                                                       | The thumbnail URL uses the same or related parameters as the video link.                                           |
| Spreadsheet or CSV                 | Manual campaigns, demos, controlled test batches, and one-time sends.                                                                                             | A CSV row provides the values for a viewer or record.                                                              |
| CRM-hosted landing page            | CRM or ESP teams that need the page to live on their domain or inside their landing-page system.                                                                  | The CRM injects merge-tag values into JavaScript or page variables before the player loads.                        |
| Custom HTML page                   | Web teams that want to host the MP5 player inside their own web property without relying on a CRM page.                                                           | The page initializes the Blings SDK and passes data from the page, URL, or web app.                                |
| SDK with custom API                | Product, authenticated web, CDP, warehouse, or backend-driven flows.                                                                                              | Your code fetches or assembles JSON data, then passes it into `BlingsPlayer.create`.                               |
| Mobile WebView                     | Native iOS or Android apps.                                                                                                                                       | The app opens a Blings-hosted or custom MP5 page and passes data through URL parameters, page state, or SDK logic. |

## How to Choose

| Requirement                                                                                        | Choose                                                             |
| -------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| You need the fastest no-code campaign launch from a CRM or ESP.                                    | CRM merge fields in URL parameters.                                |
| The message should show a personalized thumbnail before the click.                                 | CRM merge fields plus Dynamic Thumbnail.                           |
| You are testing, running a proof of concept, or sending to a fixed list.                           | Spreadsheet or CSV.                                                |
| The CRM must own the page URL, consent layer, template, or analytics wrapper.                      | CRM-hosted landing page.                                           |
| Data should not appear in the URL.                                                                 | CRM-hosted landing page, custom HTML page, or SDK with custom API. |
| Personalization depends on backend logic, authentication, product state, or multiple data sources. | SDK with custom API.                                               |
| The MP5 is part of an app experience instead of a campaign click.                                  | SDK with custom API or Mobile WebView.                             |
| You need custom JavaScript on the hosted page.                                                     | Platform Integration custom code or a custom HTML page.            |

{% hint style="info" %}
The integration method can change by channel. A project can use CRM URLs for email, SDK/API for an authenticated web app, and a WebView URL for mobile as long as each path provides the same expected data fields.
{% endhint %}

## Get the Correct Project Instructions

Before building the integration, collect these values from Platform:

1. **Project and environment**: Confirm you are using the correct project, account, and published or draft state.
2. **Dynamic Data schema**: Open **Settings -> Dynamic Data** and record the exact field names, types, and required values.
3. **Simulation profiles**: Create representative profiles and confirm the MP5 renders correctly before copying delivery instructions.
4. **Landing page settings**: Open **Integration -> Landing Page**, confirm the selected lineup, URL alias, page metadata, and social thumbnail, then save.
5. **Integration method output**: Open the correct Integration Methods tab and copy the generated CRM, Spreadsheet, or SDK instructions.
6. **Thumbnail output**: If email needs a dynamic thumbnail, copy the thumbnail URL after the video URL and parameter mapping are stable.
7. **Fallback rules**: Document what should happen when fields are missing, invalid, too long, or unavailable.
8. **End-to-end test path**: Test from the CRM, CSV upload, web app, API page, or mobile app using values that match a Simulation profile.

Do not copy example code or URLs from another project. Platform-generated outputs include project-specific URLs, IDs, lineup references, and field names.

## Data Shape

The MP5 data keys must match the project schema. Values can come from CRM merge tags, query parameters, CSV columns, JavaScript variables, or a JSON payload.

```json
{
  "first_name": "Jordan",
  "plan": "Premium",
  "account_balance": 1250,
  "profile_image": "https://example.com/jordan.jpg",
  "renewal_date": "2026-12-31"
}
```

Common field types include text, numbers, dates, image URLs, audio URLs, colors, booleans, category values, catalog IDs, CTA links, and internal routing values.

## Open the Relevant Guide

{% content-ref url="/pages/rTytoLcUpSsZ4sN3AAYj" %}
[CRM data integration](/role-guides/developer/getting-started/how-to-connect-my-data-to-the-sdk/crm-data-integration.md)
{% endcontent-ref %}

{% content-ref url="/pages/loJIHwXPyPoCln6Pnd6E" %}
[Embedding GIF with Blings Dynamic Thumbnail](/role-guides/developer/getting-started/how-to-connect-my-data-to-the-sdk/crm-data-integration/embedding-gif-with-blings-dynamic-thumbnail.md)
{% endcontent-ref %}

{% content-ref url="/pages/My29SqNA82DcTfUwatk3" %}
[Spreadsheet Data Integration](/role-guides/developer/getting-started/how-to-connect-my-data-to-the-sdk/spreadsheet-data-integration.md)
{% endcontent-ref %}

{% content-ref url="/pages/thSNEDOdBjolOX03iees" %}
[Custom API Integration](/role-guides/developer/getting-started/how-to-connect-my-data-to-the-sdk/custom-api-integration.md)
{% endcontent-ref %}

{% content-ref url="/pages/oNeRtfOObG8V08dUeRby" %}
[Getting Started with Blings.io Dynamic Video SDK](/role-guides/developer/getting-started/getting-started-with-blings.io-dynamic-video-sdk.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://help.blings.io/role-guides/developer/getting-started/how-to-connect-my-data-to-the-sdk.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
