---
title: "Create an offer"
method: POST
path: "/offers/create-offer/v1"
tags: ["Offers"]
---

# Create an offer

`POST /offers/create-offer/v1`

Create a new orderbook offer (bid) for the authenticated organization.

**Rate limit:** 120 requests burst, 60 requests/minute sustained.

## Request body

- object
  - `productId` string, uuid, required
  - `variantId` string, uuid, required
  - `quantity` integer, required
  - `type` 'fixed_pricing' | 'premium_percentage_pricing' | 'premium_dollar_pricing', required
  - `price` integer, nullable — Price in cents. Required for fixed_pricing type
  - `premiumPercent` number
  - `premiumDollar` integer — Premium in cents
  - `buyerNotes` string
  - `active` boolean
  - `expiresAt` string, date-time, required
  - `maxSpotPrice` integer, nullable — Max spot price in cents
  - `minSpotPrice` integer, nullable — Min spot price in cents

## Response `200`

Default Response

- object
  - `success` boolean, required
  - `data` object, required
    - `id` string, uuid, required
    - `productId` string, uuid, required
    - `variantId` string, uuid, required
    - `price` integer, nullable, required
    - `updatedAt` string, required
    - `expiresAt` string, required
    - `quantity` integer, required
    - `buyerNotes` string, nullable, required
    - `createdAt` string, required
    - `premiumPercent` number, required
    - `type` 'fixed_pricing' | 'premium_percentage_pricing' | 'premium_dollar_pricing', required
    - `premiumDollar` integer, required
    - `spotPremium` number, nullable, required
    - `active` boolean, required
    - `spotPremiumDollar` integer, required
    - `maxSpotPrice` integer, nullable, required
    - `minSpotPrice` integer, nullable, required

---

[API](https://skmtc.dev/collectpure/apis/pure-public-api.md) · [All operations](https://skmtc.dev/collectpure/apis/pure-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/collectpure/pure-public-api/revisions/ed6a1fe27572/schema)
