> For the complete documentation index, see [llms.txt](https://developer.younium.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developer.younium.com/documentation/developer-resources/api-v3-name.md).

# Data export API

### Fetching Nested Records

V3 is designed for retrieving larger datasets but limits the nested entities in the response. Related entities with a 1-to-1 relationship are generally included with basic details, while 1-to-many relationships are excluded and require separate fetches.

**Nested Query URLs**\
To obtain related entities, use the nested URL paths in the response. For example, a subscription response provides paths to fetch metrics, products, discounts and milestones for the subscription in separate requests. This is useful when records related to a specific entity are needed, such as:

```json
{
    "id": "af2d33b1-a614-556a-9cd3-08dd4760a5c7",
    "created": "2025-02-08T17:00:14",
    ...
    "products": "/subscriptions/af2d33b1-a614-556a-9cd3-08dd4760a5c7/subscription-products",
    "discounts": "/subscriptions/af2d33b1-a614-556a-9cd3-08dd4760a5c7/discounts",
    "milestones": "/subscriptions/af2d33b1-a614-556a-9cd3-08dd4760a5c7/milestones",
    "metrics": "/subscriptions/af2d33b1-a614-556a-9cd3-08dd4760a5c7/metrics"
}
```

**Fetching Entities in Separate Queries**\
When syncing data to a data warehouse or BI systems, it can be more effective to fetch data in bulk, entity by entity. For example, use the /subscription endpoint to fetch all subscriptions, then a separate call to /Subscription-product-charges to fetch subscription charges. The relationship in this case is defined by the `orderId` In the subscription-charge response, a reference to the subscription's `id`.

### Pagination

Pagination can be managed using the `pageNumber` and `pageSize` query parameters.

* Some endpoints may have a maximum `pageSize` limit of 5000 records per request.
* If not specified, the default `pageSize` is 100.

```
https://api.younium.com/v3/Subscriptions?pageSize=5000&pageNumber=2
```

When retrieving multiple records, the response includes an `items` property with the records and a `nextPage` property indicating if more records are available. If the `nextPage` is absent, there are no more records to fetch. If no records exist, an empty list of items will be returned.

```json
{
    "items": [ {...} ],
    "nextPage": "/subscriptions?pageNumber=2&pagesize=200"
}
```

### Filters

#### Filter Application in API Queries

Filters are applied as query parameters. The API reference documentation lists the available filters for each endpoint.

#### **Modified After and Before Filters**

Some endpoints support `modifiedAfter` and `modifiedBefore` filters to fetch records from a specific time span. The `modifiedAfter` filter defaults to the previous month if not specified.

### NULL values <a href="#zlqpf" id="zlqpf"></a>

In the response schema, only fields with values are included in the JSON response body. Fields with null values are omitted.


---

# 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.younium.com/documentation/developer-resources/api-v3-name.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.
