---
title: "Get Product"
method: GET
path: "/api/v1/products/{product_id}"
tags: ["products"]
---

# Get Product

`GET /api/v1/products/{product_id}`

## Request

- Base URL: `https://api.food24.kz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.food24.kz/api/v1/products/{product_id}`
- Auth: OAuth 2
  - Password
  - Token URL: `/api/v1/auth/login`
- TypeScript: <https://skmtc.dev/food24/apis/goodfood/docs/api/v1/products/:product_id/get.ts> (a function with typed inputs; its response is checked against the schema)

## Path parameters

- `product_id` integer, required

## Response `200`

Successful Response

- ProductRead
  - `id` integer, required
  - `name` string, required
  - `sku` string, nullable
  - `category_id` integer, nullable
  - `category_name` string, nullable
  - `category` string, nullable
  - `subcategory` string, nullable
  - `brand_id` integer, nullable
  - `brand_name` string, nullable
  - `price` number, required
  - `cost` number, nullable
  - `discount` number
  - `price_with_discount` number, nullable
  - `unit` string
  - `weight` string, nullable
  - `tags` string, nullable
  - `description` string, nullable
  - `visible` boolean, required
  - `is_new` boolean, required
  - `recommended` boolean, required
  - `limited` boolean, required
  - `badge` string, nullable
  - `image` string, nullable
  - `sort_order` integer, nullable

## Other responses

- `422`: Validation Error

## Changes

- **2026-10-06** `932677784212`: 1 info
  - added the optional property `sort_order` to the response with the `200` status

[Operation history](https://skmtc.dev/food24/apis/goodfood/changes/api/v1/products/:product_id/get.md)

---

[API](https://skmtc.dev/food24/apis/goodfood.md) - [All operations](https://skmtc.dev/food24/apis/goodfood/llms.txt) - [OpenAPI document](https://skmtc.dev/food24/apis/goodfood/revisions/f75c731597d3?raw)
