> 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 %}
