# Developer Portal

## **Welcome to Batch's developer portal!**

Here, you’ll find everything you need to integrate with Batch—whether you’re working on the client side using our SDKs, or on the server side with our APIs.

Our resources include high-level usage guides, sample code, and detailed API references to help you get started quickly.

<figure><img src="/files/CiibvidL3Wm3Gwk4vBdC" alt=""><figcaption></figcaption></figure>

## Customer Engagement Platform APIs

Batch’s Customer Engagement Platform APIs give you server-side access to our new, profile-oriented data model—making it easy to manage and act on user data at scale.

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td>Profiles</td><td>Update or export profile attributes &#x26; events</td><td><a href="/pages/GRdHjcVRrRA3EE9cT1zP">/pages/GRdHjcVRrRA3EE9cT1zP</a></td><td><a href="/files/6zWbDvm9O3Z32xAgaF75">/files/6zWbDvm9O3Z32xAgaF75</a></td></tr><tr><td>Audiences</td><td>Manage and populate audiences</td><td><a href="/pages/XmXR7cK93oE085AlYxLn">/pages/XmXR7cK93oE085AlYxLn</a></td><td><a href="/files/ZRGIgllibho22JHsJdWC">/files/ZRGIgllibho22JHsJdWC</a></td></tr><tr><td>Campaigns</td><td>Create omnichannel campaigns</td><td><a href="/pages/Ad9Szaerg57YVZIw2S1K">/pages/Ad9Szaerg57YVZIw2S1K</a></td><td><a href="/files/kTEQDCPJKrx64ogzga7D">/files/kTEQDCPJKrx64ogzga7D</a></td></tr><tr><td>Exports</td><td>Manage requested exports</td><td><a href="/pages/XY7Yw9vxxtuMA3n8p6Uf">/pages/XY7Yw9vxxtuMA3n8p6Uf</a></td><td><a href="/files/PnXNQbyvS2CA3onLhuuu">/files/PnXNQbyvS2CA3onLhuuu</a></td></tr><tr><td>Orchestrations </td><td>List orchestration &#x26; analytics</td><td><a href="/pages/pENndnsJrCHDZ3us4sal">/pages/pENndnsJrCHDZ3us4sal</a></td><td><a href="/files/Gw8Ff7koWbxkL927L83T">/files/Gw8Ff7koWbxkL927L83T</a></td></tr><tr><td>Segments</td><td>List segments</td><td></td><td data-object-fit="cover"><a href="/files/mRZA5xJPwl5ekKyBB5E6">/files/mRZA5xJPwl5ekKyBB5E6</a></td></tr></tbody></table>

{% content-ref url="/pages/WmXAhadgMMN7Qbxq1vSL" %}
[API Changelog](/developer/api/cep/api-changelog.md)
{% endcontent-ref %}

## SDKs

Batch's SDKs bring our features to your app in a developer-friendly API.

### What is an SDK? <a href="#what-is-an-sdk" id="what-is-an-sdk"></a>

"SDK" stands for Software Development Kit.

An SDK is a set of tools developers can use to create apps for a specific platform or to add features to their apps without having to redevelop them from scratch. Apps usually integrate a wide variety of third-party analytics and marketing SDKs.

<figure><img src="/files/5dk56RFlSkEn3pEUklRr" alt=""><figcaption></figcaption></figure>

Here is a non-exhaustive list of the purposes the SDK serves:

* Analytics: registers new installs, sends app usage data and feedback on push and In-App interactions (e.g. push displayed, opened, In-App message dismissed, etc).
* Data collection: collects and sends Profile data (attributes, events) to Batch servers to improve your segmentation and personalization.
* Push notifications: collects and sends the push token to Batch servers, required to deliver a push to your users' devices. On Android, the receiver included in the SDK is in charge of receiving and displaying the notifications.
* In-App messaging: pulls the list of In-app campaigns matching your users' install from Batch servers and displays the In-app messages.
* Inbox: Provides the history of push notifications sent to the install or the user ID attached to the install. This is useful if you want to add a notification centre to your app.

### Available SDKs and Plugins

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>iOS</td><td><a href="/pages/6p8qVyO9OWfbgrcpdJHu">/pages/6p8qVyO9OWfbgrcpdJHu</a></td></tr><tr><td>Android</td><td><a href="/pages/ZttQSyuuvhAb3I7lNUdG">/pages/ZttQSyuuvhAb3I7lNUdG</a></td></tr><tr><td>Web</td><td><a href="/pages/TgR6VYSpF1mKVKZki9Nx">/pages/TgR6VYSpF1mKVKZki9Nx</a></td></tr><tr><td>Flutter</td><td><a href="/pages/rbgjE7xbEVVoFY3jWfT6">/pages/rbgjE7xbEVVoFY3jWfT6</a></td></tr><tr><td>React Native</td><td><a href="/pages/F848cc0jtwE2KhJlAXtv">/pages/F848cc0jtwE2KhJlAXtv</a></td></tr><tr><td>Cordova</td><td><a href="/pages/NIgOgu3TAngR3QumSAPo">/pages/NIgOgu3TAngR3QumSAPo</a></td></tr></tbody></table>

### SDK Downloads

Most SDKs and Plugins are not to be downloaded directly but integrated by using a package manager: the ones Batch support and how to use the SDK with them is detailed in the "SDK Integration" pages.

You can also find us on [GitHub](https://github.com/BatchLabs) where you will find our SDKs & Plugins source code and sample apps you can use to test our features with.

## Mobile Engagement Platform APIs

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Transactional</td><td><a href="/pages/5m1jPJSKo4pnYyYycDF0">/pages/5m1jPJSKo4pnYyYycDF0</a></td></tr><tr><td>Campaigns</td><td><a href="/pages/2UFx5L7YmHUYdxSkRXvp">/pages/2UFx5L7YmHUYdxSkRXvp</a></td></tr><tr><td>In-app Campaigns</td><td><a href="/pages/r41AUj2YlG5L6QdKX5zg">/pages/r41AUj2YlG5L6QdKX5zg</a></td></tr><tr><td>Custom Audience</td><td><a href="/pages/DdTagP1nGChzIW2PEo6P">/pages/DdTagP1nGChzIW2PEo6P</a></td></tr><tr><td>Custom Data</td><td><a href="/pages/YLCuM6eJ7R0oko2lpvDC">/pages/YLCuM6eJ7R0oko2lpvDC</a></td></tr><tr><td>App Data</td><td><a href="/pages/D0s3wIgipJP4lIa9olAs">/pages/D0s3wIgipJP4lIa9olAs</a></td></tr><tr><td>GDPR</td><td><a href="/pages/KBVlmbyMuRi5xpebk5Wh">/pages/KBVlmbyMuRi5xpebk5Wh</a></td></tr><tr><td>Export</td><td><a href="/pages/kiOlsc145Mg0YMxZEEIE">/pages/kiOlsc145Mg0YMxZEEIE</a></td></tr><tr><td>Webhooks</td><td><a href="/pages/FHc99r07PseqDtGNs2ba">/pages/FHc99r07PseqDtGNs2ba</a></td></tr><tr><td>Trigger Events</td><td><a href="/pages/rnNG6io1vrI2Rib8H9jY">/pages/rnNG6io1vrI2Rib8H9jY</a></td></tr></tbody></table>


---

# Agent Instructions: 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:

```
GET https://doc.batch.com/developer/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
