> For the complete documentation index, see [llms.txt](https://developer.singular.live/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.singular.live/rest-api/how-to-guides/get-a-compositions-sub-composition-ids-and-names-and-their-payload-structures.md).

# Get a composition's sub-composition IDs and names and their payload structures

To update graphics in a control app, you need their sub-composition IDs and payload structures.

There are two ways to get them:

* [In Composer](#to-get-a-sub-composition-id-from-composer)
* [Using the API](#to-get-a-sub-composition-id-from-the-api)&#x20;

### Get a composition's sub-composition IDs and names and their payload structures i**n Composer**

1. Open the app's composition in Composer. If the app is from a template and doesn't have an associated composition, you'll need to [extract a composition from the app](/singular-basics/managing-overlays-in-the-dashboard/how-to-extract-a-composition-from-an-app.md).
2. Navigate to the composition tree and click into each sub-composition you'd like to update.
3. In the lower right quadrant of Composer, click on the wrench icon to open a pop-up that shows the sub-composition's ID and payload structure.

   <figure><img src="/files/rCGCn2cthUzIC1wZuTm4" alt=""><figcaption><p>Getting a sub-composition ID in Composer</p></figcaption></figure>

### Get a composition's sub-composition IDs and names and their payload structures using the API

1. [Get the API token ](/rest-api/how-to-guides/get-a-control-apps-api-token.md)for the particular app instance that contains the sub-composition ID and payload structure you're looking for.
2. Send a `GET` request to the endpoint for [Get a control app's control data](/rest-api/api-reference/get-control-app-details/get-a-control-apps-control-data.md) `https://app.singular.live/apiv2/controlapps/:appToken/control` replacing `:appToken` with the actual app token for the app instance.
3. In the response, locate `subCompositionId` and `subCompositionName` and the payload structure of each sub-composition you'd like to update.


---

# 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://developer.singular.live/rest-api/how-to-guides/get-a-compositions-sub-composition-ids-and-names-and-their-payload-structures.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.
