---
title: "Get one 7NOW product's full reference record"
method: GET
path: "/7now/product"
tags: ["7NOW"]
---

# Get one 7NOW product's full reference record

`GET /7now/product`

## Request

- Base URL: `https://api.crawlora.net/api/v1`
- URL: `https://api.crawlora.net/api/v1/7now/product`
- Auth: API key in header `x-api-key`

Returns one product's complete reference record: description, the full nutrition panel (serving size, calories, fat, cholesterol, sodium, carbohydrates, protein, vitamins and allergen "contains" list), the declared ingredient list, the allergen statement, size and flavor variants, related products, and any attached promotions. product_id comes from GET /7now/search, /7now/catalog or /7now/category. This record is store-independent and deliberately carries no price, availability or stock -- use those three endpoints for per-store pricing and availability. An unknown product_id returns a 404.

## Query parameters

- `product_id` string, required

## Headers

- `x-api-key` string, required

## Response `200`

OK

- SevennowProductResponseDoc
  - `code` integer: Code is the HTTP status code or a custom code used to indicate the result of the request @example 200
  - `data` SevennowProductResponse
    - `age_restricted` boolean
    - `allergens` string: Allergens is upstream's allergen statement, e.g. "CONTAINS MILK, SOY, WHEAT." Absent on products with no declared allergens.
    - `brand` string
    - `calories` string
    - `category` string
    - `category_id` string
    - `description` string
    - `fetched_at` string
    - `flavor_choices` string[]
    - `flavor_name` string
    - `images` string[]
    - `ingredients` string[]: Ingredients is the declared ingredient list. Upstream splits it on commas, so a parenthesised sub-list arrives as several entries.
    - `limit_per_order` integer
    - `name` string
    - `nutrition` SevennowNutritionGroup[]
      - `entries` SevennowNutritionEntry[]
        - `name` string
        - `value` string
      - `group` string
    - `nutrition_disclaimers` string[]: NutritionDisclaimers carries upstream's own RDI/daily-value notices.
    - `product_id` string
    - `promos` SevennowProductPromo[]
      - `expiration_date` string
      - `id` string
      - `long_description` string
      - `promo_price_cents` integer
      - `short_description` string
      - `start_date` string
    - `related_items` SevennowRelatedProduct[]
      - `brand` string
      - `calories` string
      - `category` string
      - `flavor_name` string
      - `image_url` string
      - `name` string
      - `product_id` string
      - `size_value` string
    - `size_choices` string[]
    - `size_value` string
    - `slin` string
    - `source_url` string
    - `tags` string[]
    - `upc` string
  - `msg` unknown

## Other responses

- `400`: Bad Request
- `404`: Not Found
- `429`: Too Many Requests
- `503`: Service Unavailable

---

[API](https://skmtc.dev/crawlora/apis/crawlora-api.md) · [All operations](https://skmtc.dev/crawlora/apis/crawlora-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlora/apis/crawlora-api/revisions/028417aa35bb?raw)
