---
title: "Create a reservation"
method: POST
path: "/reservations"
tags: ["Reservations"]
---

# Create a reservation

`POST /reservations`

Create a reservation to hold inventory items in a fulfillment order.

## Request body

- ReservationRequest
  - `id` string — The unique identifier of the reservation.
  - `items` ReservationInventoryItem[], required
    - `inventoryItemId` string, nullable, required — The unique identifier of an inventory item.
    - `quantity` integer, nullable, required
    - `allowOversell` boolean, nullable — If true, customers are allowed to reserve inventory of the item when it is out of stock.
  - `shipTo` ReservationShipping, required — The customer's shipping information.
    - `address` ReservationAddress, required — The customer's shipping address.
      - `city` string, nullable
      - `postalCode` string, nullable
      - `state` string, nullable
      - `country` string, required
  - `shippingChoice` ReservationShippingChoice, nullable, required
    - `currency` string, required — A three-letter ISO currency code.
    - `amount` number, double, required — The shipping amount.
    - `serviceLevel` 'SG', required — The shipping method.
  - `expiresInSeconds` integer, nullable, required — A positive integer that specifies the number of seconds before the reservation expires and is deleted.

## Response `201`

201 Created

- Reservation
  - `id` string — The unique identifier of the reservation.
  - `createdTime` string, date-time — The time when the reservation was created.
  - `shipTo` ReservationShipping — The customer's shipping information.
    - `address` ReservationAddress, required — The customer's shipping address.
      - `city` string, nullable
      - `postalCode` string, nullable
      - `state` string, nullable
      - `country` string, required
  - `shippingChoice` ReservationShippingChoice, nullable
    - `currency` string, required — A three-letter ISO currency code.
    - `amount` number, double, required — The shipping amount.
    - `serviceLevel` 'SG', required — The shipping method.
  - `items` ReservationInventoryItem[]
    - `inventoryItemId` string, nullable, required — The unique identifier of an inventory item.
    - `quantity` integer, nullable, required
    - `allowOversell` boolean, nullable — If true, customers are allowed to reserve inventory of the item when it is out of stock.
  - `expiresInSeconds` integer — A positive integer that specifies the number of seconds before the reservation expires and is deleted.
  - `liveMode` boolean — Has the value true if the object exists in live mode or the value false if the object exists in test mode.

## Other responses

- `400` — 400 Bad Request
- `401` — 401 Unauthorized
- `403` — 403 Forbidden
- `405` — 405 Method Not Allowed
- `406` — 406 Not Acceptable
- `408` — 408 Request Timeout
- `409` — 409 Conflict
- `429` — 429 Too Many Requests
- `500` — 500 Internal Server Error
- `502` — 502 Bad Gateway Error
- `503` — 503 Service Unavailable Error
- `504` — 504 Gateway Timeout Error

---

[API](https://skmtc.net/digitalriver/apis/digital-river-api-reference.md) · [All operations](https://skmtc.net/digitalriver/apis/digital-river-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/digitalriver/digital-river-api-reference/revisions/f21981db32be/schema)
