---
title: "How to retrieve product data using Flowbox's API"
url: "https://kb.getflowbox.com/en/article/how-to-retrieve-product-data-using-flowboxs-api"
language: "en"
last_updated: "2026-06-03T12:53:30.818Z"
---

# How to retrieve product data using Flowbox's API

This guide will show you how to retrieve product data from Flowbox’s API

## Prerequisites

Before you start, ensure you have the following:

-   **API key**: Your unique API authentication key. If you don't have it yet, please contact your CSM and they'll provide it to you.

## API Endpoint

To retrieve product data from Flowbox, use the following 'GET' request:

```
https://external-api.getflowbox.com/v2/products/{productKeys}
```

| You can find more information and make test calls in our [Swaggerhub page](https://app.swaggerhub.com/apis-docs/FlowboxAB/External-API/v1#/External%20API/GetPostsByFlowKey).

## Purpose

This endpoint is used to return a data object containing product information. The `'productKeys'` parameter is required and specifies which products to retrieve. You can provide one or more 'productKeys', separated by commas, to retrieve multiple products in a single request.

## Required Parameters

| Parameter | Type | Location | Description |
| --- | --- | --- | --- |
| `api-key` | string | header | Your API authentication key. Must be included in every request. |
| `productKeys` | string | path | Comma-separated list of product keys to retrieve. Can be one or more. Product keys can be obtained from the `/posts` endpoint. Format: `"{companyId}_{productId}_{catalogId}"`, e.g. `"2553_712400_bEgYqAhMMhmO3tzsSOkteg"` where `2553` is your Flowbox company ID, `712400` is the product ID, and `bEgYqAhMMhmO3tzsSOkteg` is the ID of the catalog containing the product. |
| `locale` | string | query | Locale of the products to be returned. Must match the locale of one of your catalogs. Use lowercase format, e.g. `"en-gb"`. |

## Example API Request

```
curl -X 'GET' \   
'https://external-api.getflowbox.com/v2/products/2553_712400_bEgYqAhMMhmO3tzsSOkteg%2C2553_10102952_bEgYqAhMMhmO3tzsSOkteg?locale=en-us' \   
-H 'accept: application/json' \   
-H 'api-key: YOUR_API_KEY_HERE'
```

In this example, the request would retrieve data for two products: '2553\_712400\_bEgYqAhMMhmO3tzsSOkteg' and '2553\_10102952\_bEgYqAhMMhmO3tzsSOkteg'.

## Response

The API will return a data object containing a product array, with the details of each product as retrieved from your account's Catalog:

### **Root**:

| Field | Type | Description |
| --- | --- | --- |
| `status` | string | Request status. One of: `"success"`, `"error"`. |
| `data.products` | array | List of product objects. See *Product object* table below. |
| `data.cta_button_text` | string | CTA button label configured in the Flowbox Catalog. |
| `data.cta_title_text` | string | CTA title text configured in the Flowbox Catalog. |
| `data.locale` | string | Locale of the returned products, e.g. `"en-gb"`. |

### **Product** (object):

| Field | Type | Description |
| --- | --- | --- |
| `key` | string | Product key for this specific product. Format: `"companyId}_{productId}_{catalogId}"`. |
| `product_id` | string | Product identifier used to process the product in Flowbox. |
| `rating` | object | Product rating data (stars). Returns `{}` if the Ratings & Reviews feature is not enabled. |
| `details` | object | Product details as provided in your product feed. See *Details object* table below. |

### **Details** (object):

| Field | Type | Description |
| --- | --- | --- |
| `id` | string | Product ID as provided in your product feed. |
| `mpn` | string | Manufacturer Part Number. `null` if not provided. |
| `url` | string | URL to the product's page. |
| `gtin` | string | Global Trade Item Number. `null` if not provided. |
| `name` | string | Display name of the product. |
| `size` | string | Size of the product, e.g. `"M"`, `"XL"`. `null` if not applicable/set. |
| `brand` | string | Brand or manufacturer name. `null` if not provided. |
| `color` | string | Color of the product. `null` if not provided. |
| `price` | string | Base price of the product as a string, without currency symbol. |
| `gender` | string | Target gender, e.g. `"male"`, `"female"`, `"unisex"`. `null` if not specified. |
| `img_url` | string | Direct URL to the product's main image. |
| `pattern` | string | Pattern or print of the product, e.g. `"striped"`, `"floral"`. `null` if not applicable. |
| `category` | string | Flowbox-specific category field. Equal to either `product_type` or `google_product_category`. Use those fields directly instead. |
| `currency` | string | ISO 4217 currency code, e.g. `"eur"`, `"usd"`, as configured in the Flowbox Catalog. |
| `material` | string | Material composition, e.g. `"cotton"`. `null` if not provided. |
| `age_group` | string | Target age group, e.g. `"adult"`, `"kids"`. `null` if not specified. |
| `sale_price` | string | Discounted sale price as a string. `null` if no active sale. |
| `availability` | string | Stock status. One of: `"in stock"`, `"out of stock"`. |
| `product_type` | string | Category path as defined in the merchant's taxonomy, in breadcrumb-style format. |
| `item_group_id` | string | Identifier grouping product variants (e.g. different colors or sizes) under the same parent product. `null` if not provided. |
| `google_product_category` | string | Google-defined product category ID or path, used for Google Shopping feeds. `null` if not provided. |
| `sale_price_effective_date` | string | Date range during which `sale_price` is active, in ISO 8601 interval format. `null` if not provided. |
| `price_tag` | string | Pre-formatted string combining price and currency code, e.g. `"45 eur".` |
| `sale_price_tag` | string | Pre-formatted string combining sale price and currency code. Returns`""` if no active sale. |

  

> You can find more information and make test calls in our [Swaggerhub page](https://app.swaggerhub.com/apis-docs/FlowboxAB/External-API/v2#/External%20API/GetProductByProductkey).
