# Inspect a draft menu item for editing

Source: https://docs.fiest.io/api/reference/get-draft-menu-item-edit-target
Canonical sandbox contract: https://docs.fiest.io/openapi.yaml

## GET /v1/restaurants/{restaurantId}/menus/{menuPublicId}/items/{menuItemPublicId}

Returns the exact editable state and opaque version for one item in one explicitly selected menu. The item can be edited only when the menu is inactive and the canonical item is not shared with another menu. Organization-boundary tokens also require fiest.organization.read.

## Authentication

Send an OAuth access token in the `Authorization` header as
`Bearer $FIEST_ACCESS_TOKEN`.

Required scopes: `fiest.restaurant.read`, `fiest.menu.read`, `fiest.menu.structure.write`

## Quick request

```bash
curl --request GET \
  --url 'https://api-sandbox.fiest.io/v1/restaurants/11111111-1111-4111-8111-111111111111/menus/43f64da8-4ec2-4900-b137-1c0927c975d2/items/67fb6fb2-0f46-455b-934e-25707b77be08' \
  --header 'Authorization: Bearer $FIEST_ACCESS_TOKEN'
```

## Parameters

| Name | In | Required | Type | Description |
| --- | --- | --- | --- | --- |
| `restaurantId` | path | Yes | string (uuid) | A restaurant identifier returned by the authorized restaurant list. |
| `menuPublicId` | path | Yes | string (uuid) | The stable menu UUID returned by the menu list. |
| `menuItemPublicId` | path | Yes | string (uuid) | The stable item UUID returned by the menu-item search. |

## Success response

### 200 — The exact reviewed draft-menu item state.

```json
{
  "data": {
    "restaurantId": "11111111-1111-4111-8111-111111111111",
    "menu": {
      "menuPublicId": "43f64da8-4ec2-4900-b137-1c0927c975d2",
      "name": "Lunch menu",
      "activeForPos": false,
      "onlineOrdering": false,
      "categoryCount": 2,
      "itemCount": 8
    },
    "item": {
      "menuItemPublicId": "67fb6fb2-0f46-455b-934e-25707b77be08",
      "categoryPublicId": "af16a392-f8a1-47b4-849f-4d707001e9b1",
      "name": "Margherita",
      "priceMinor": 1350,
      "description": "Tomato, mozzarella and basil",
      "visible": true,
      "showInKitchen": true
    },
    "sharedMenuCount": 1,
    "canEdit": true,
    "version": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"
  }
}
```

## Error responses

### 400 — The request parameters are invalid.

```json
{
  "error": "invalid_request",
  "message": "The requested date range is invalid.",
  "request_id": "req_sandbox_invalid_request"
}
```

### 401 — The access token is missing, invalid, or expired.

```json
{
  "error": "invalid_token",
  "error_description": "The access token is invalid.",
  "request_id": "req_sandbox_invalid_token"
}
```

### 403 — The authorization has expired or does not include the required scope.

```json
{
  "error": "insufficient_scope",
  "error_description": "The operation requires an OAuth scope that is not granted.",
  "request_id": "req_sandbox_insufficient_scope"
}
```

### 404 — The restaurant or requested resource does not exist or is outside the authorization.

```json
{
  "error": "not_found",
  "request_id": "req_sandbox_not_found"
}
```

### 429 — The partner request limit has been exceeded.

```json
{
  "error": "rate_limited",
  "request_id": "req_sandbox_rate_limited"
}
```

### 503 — The API or one of its required services is unavailable.

```json
{
  "error": "service_unavailable",
  "request_id": "req_sandbox_service_unavailable"
}
```

## Related

- [Quick start](https://docs.fiest.io/api/quickstart)
- [Stable API errors](https://docs.fiest.io/api/reference/errors)
- [OpenAPI 3.1 contract, YAML](https://docs.fiest.io/openapi.yaml)
- [OpenAPI 3.1 contract, JSON](https://docs.fiest.io/openapi.json)
- [Authorize and call the Fiest Partner API](https://docs.fiest.io/api/quickstart)