Skip to main content

Style Data

The Style Data APIs let you browse brands, styles, colorways, sizes, decorator profiles, decoration regions, and points of measure.

Only approved, public, non-deleted styles are returned. Unknown or unpublished brand + number pairs return an empty list rather than an error.

Typical flow​

  1. List brands
  2. List styles (optionally filtered by brand)
  3. List colorways and sizes for a brand + number
  4. List profiles, then regions (and points of measure) for that style

Pagination​

brands, styles, colorways, and sizes are paginated.

FieldInTypeDefaultNotes
pagequeryinteger11-based
page_sizequeryinteger20Maximum 100
{
"data": [],
"meta": { "page": 1, "pageSize": 20 }
}

meta does not include a total count. Request the next page until data is shorter than pageSize.

profiles, regions, and points-of-measure return a plain array.

Base URL​

https://seddi-public-api-gateway-91po835h.uc.gateway.dev

List brands​

GET /data/v1/brands

Query parameters​

All parameters are optional.

ParameterTypeDefaultDescription
pageinteger11-based page
page_sizeinteger20Maximum 100
searchstring—Substring of the brand key

Response​

{
"data": [
{ "brand": "Gildan" },
{ "brand": "Bella + Canvas" },
{ "brand": "Comfort Colors" },
{ "brand": "Next Level" }
],
"meta": { "page": 1, "pageSize": 20 }
}

brand is the canonical key. Pass it as brand on the other Style Data endpoints.

curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/brands?page=1&page_size=20" \
-H "x-api-key: $SEDDI_API_KEY"

List styles​

GET /data/v1/styles

Query parameters​

ParameterTypeRequiredDescription
brandstringnoLimit to these brand keys. Repeat the param or pass a comma-separated list
searchstringnoSubstring of the brand key or the style number
pageintegernoDefault 1
page_sizeintegernoDefault 20, maximum 100

Response​

{
"data": [
{ "brand": "Gildan", "number": "64000" },
{ "brand": "Gildan", "number": "5000" },
{ "brand": "Gildan", "number": "18500" },
{ "brand": "Gildan", "number": "18000" }
],
"meta": { "page": 1, "pageSize": 20 }
}

Each entry is a brand + number pair. Pass both together on colorways, sizes, regions, and points of measure.

curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/styles?brand=Gildan&page=1&page_size=20" \
-H "x-api-key: $SEDDI_API_KEY"

List colorways​

GET /data/v1/colorways

Query parameters​

ParameterTypeRequired
brandstringyes
numberstringyes
pageintegerno
page_sizeintegerno

Response​

{
"data": [
{ "color": "Black" },
{ "color": "White" },
{ "color": "Navy" },
{ "color": "Sport Grey" },
{ "color": "Red" }
],
"meta": { "page": 1, "pageSize": 20 }
}
curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/colorways?brand=Gildan&number=64000" \
-H "x-api-key: $SEDDI_API_KEY"

List sizes​

GET /data/v1/sizes

Query parameters​

ParameterTypeRequired
brandstringyes
numberstringyes
pageintegerno
page_sizeintegerno

Response​

{
"data": [
{ "size": "S" },
{ "size": "M" },
{ "size": "L" },
{ "size": "XL" },
{ "size": "2XL" }
],
"meta": { "page": 1, "pageSize": 20 }
}
curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/sizes?brand=Gildan&number=64000" \
-H "x-api-key: $SEDDI_API_KEY"

List decorator profiles​

GET /data/v1/profiles

Returns decorator profile slugs plus default (the SEDDI profile — the style's own stored regions). Pass a slug as profile on regions.

Response​

[
{ "name": "default" },
]

default is always present. Any other slugs depend on the decorator profiles for your account.

curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/profiles" \
-H "x-api-key: $SEDDI_API_KEY"

List regions​

GET /data/v1/regions

Returns region names for the style. Send name as logos[].region. A caller who already has a region id may send that id instead. This response does not include ids.

Query parameters​

ParameterTypeRequiredDescription
brandstringyes
numberstringyes
profilestringnoFrom GET /data/v1/profiles. Omit or default for the style's own regions; any other slug uses that decorator profile

Response​

[
{ "name": "Chest" },
{ "name": "Back" },
{ "name": "Left Sleeve" },
{ "name": "Right Sleeve" }
]
curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/regions?brand=Gildan&number=64000&profile=default" \
-H "x-api-key: $SEDDI_API_KEY"

List points of measure​

GET /data/v1/points-of-measure

Each name is a valid placement.at.measure.from for Product Image Creation and Techpack Generation. Look points of measure up by that name. A caller who already has an id may send it; the generator matches name first, then id. This response does not include ids. An unknown name returns 400 with the names listed here.

Query parameters​

ParameterTypeRequired
brandstringyes
numberstringyes

Response​

[
{ "name": "Center Front Neck" },
{ "name": "Center Back Neck" },
{ "name": "Left Shoulder Seam" },
{ "name": "Right Shoulder Seam" },
{ "name": "Left Side Seam" }
]
curl "https://seddi-public-api-gateway-91po835h.uc.gateway.dev/data/v1/points-of-measure?brand=Gildan&number=64000" \
-H "x-api-key: $SEDDI_API_KEY"

Python example​

import os
import requests

BASE = "https://seddi-public-api-gateway-91po835h.uc.gateway.dev"
headers = {"x-api-key": os.environ["SEDDI_API_KEY"]}

brands = requests.get(f"{BASE}/data/v1/brands", params={"page": 1, "page_size": 20}, headers=headers)
brands.raise_for_status()
print(brands.json()["data"])

styles = requests.get(
f"{BASE}/data/v1/styles",
params={"brand": "Gildan", "page": 1, "page_size": 20},
headers=headers,
)
styles.raise_for_status()
print(styles.json()["data"])

Notes​

Extra fields

These endpoints reject unknown JSON fields with 400. Send only the fields documented above.

Image APIs

brand, number, color, and size from Style Data are the same identifiers used by Product Image Creation. Techpack Generation uses the same identifiers.