Feeds API

Learn about data feeds and how to make effective use of them.

Jungle provides data feeds as a first-class concept through the Feeds API.

Feeds are a way to export data in bulk. They are typically used by integrations with other systems, such as ERPs, ETL based systems, or for reporting purposes.

A feed is a GET request to a specific endpoint. E.g /v202403/feed/product.jsonl. The response is a stream of JSONL data that can be saved and processed by the client.

Schema

Each feed endpoint publishes a JSON schema that describes the data that will be returned per JSONL line. The schema is available at the feed endpoint, however with a .schema.json suffix. E.g /v202403/feed/product.schema.json.

It is important to note that each feed returns data aligned with the Jungle GraphQL API schema. The schema of a particular feed is the same as a query that could be requested against the Jungle GraphQL API. The difference is that the feed schema is a highly curated subset of the GraphQL schema.

Rate Limit

Each account has a rate limit of 1 concurrent feed request. This is to ensure that the server can handle the load of generating feeds for all accounts. If you exceed this limit, you will receive a 429 Too Many Requests response.

There are no limits on the number of requests that can be made to a feed endpoint. However, if you make too many requests in a short period of time, you may receive a 429 Too Many Requests response. This is to ensure that the server can handle the load of generating feeds for all accounts.

Compression

As the feeds are large streams of JSONL data, they benefit dramatically from compression.

Feeds support gzip and zstd compression. To make use of compression, set the Accept-Encoding header in your request to zstd, or gzip depending on what your systems can support.

Zstandard zstd is the recommended compression algorithm. It can reduce the download size up to 20 times or more.

Available Feeds

The Jungle Platform has the following feeds available. They are accessed through ape.cafe by appending the given URL path and sending a GET request.

CategoryFile/Endpoint
Allocations/v202403/feed/allocation.jsonl
/v202403/feed/allocation.schema.json
/v202403/feed/allocation-line-item.jsonl
/v202403/feed/allocation-line-item.schema.json
Channels/v202403/feed/channel/:channelId/inventory.jsonl
/v202403/feed/channel-inventory.schema.json
Inventory/v202403/feed/inventory.jsonl
/v202403/feed/inventory.schema.json
/v202403/feed/inventory-movement.jsonl
/v202403/feed/inventory-movement.schema.json
Locations/v202403/feed/location.jsonl
/v202403/feed/location.schema.json
Transfers/v202403/feed/transfer.jsonl
/v202403/feed/transfer.schema.json
Products/v202403/feed/product.jsonl
/v202403/feed/product.schema.json
Can't find what you're looking for? Contact us