---
title: "Create a new listing"
method: POST
path: "/selling/listings"
tags: ["Listings"]
---

# Create a new listing

`POST /selling/listings`

Create listings API allows you to create new listings.
The listings correspond to an ask in the StockX UI. The listings can be for the same variant ID.

## Request body

- CreateListingInput
  - `amount` string, required — The amount this product is being listed for
  - `variantId` string, required — Unique StockX variant ID that this listing is being created for
  - `currencyCode` string — The currency code this product is being listed in. If not provided, it will default to USD. Only valid currencies supported on stockx.com are supported via API<br><br>Available values: "AUD", "CAD", "CHF", "EUR", "GBP", "HKD", "JPY", "KRW", "MXN", "NZD", "SGD", "USD"
  - `expiresAt` string — UTC timestamp representing when this Ask should auto-expire. If not provided, it will default to 999 days from today. Represented as ISO 8601 format like 2021-11-09T12:44:31.000Z
  - `active` boolean — A flag that defaults to true, activating the listing on the StockX marketplace
  - `inventoryType` string — The inventory this product is being listed in. If not provided, it will default to STANDARD.<br><br>Available values: "STANDARD", "DIRECT"

## Response `201`

Created

- ListingAsyncOperationResponse
  - `listingId` string, required — Unique ID for this listing
  - `operationId` string, required — Unique ID for this operation
  - `operationType` 'CREATE' | 'UPDATE' | 'DELETE' | 'ACTIVATE' | 'DEACTIVATE' | 'CANCEL_ORDER' | 'RECLAIM' | 'CANCEL_RECLAIM' | 'TPS_CHECK', required
  - `operationStatus` 'PENDING' | 'SUCCEEDED' | 'FAILED', required
  - `operationUrl` string, nullable, required — The URL used for to poll the status of the operation.
  - `operationInitiatedBy` 'USER' | 'SYSTEM', required
  - `operationInitiatedVia` 'IOS' | 'ANDROID' | 'WEB' | 'STOCKX-PRO' | 'SCOUT' | 'SHOPIFY' | 'PUBLIC-API' | 'INTERNAL-SYSTEM', required
  - `createdAt` string, required — When the listing was created in UTC. Represented as ISO 8601 format like 2021-11-09T12:44:31.000Z
  - `updatedAt` string, required — When this listing was last updated in UTC. Represented as ISO 8601 format like 2021-11-09T12:44:31.000Z
  - `changes` ListingOperationsChangesDiff, required — JSON metadata object which include the changes of current listing
    - `additions` AdditionsRecursivePartialListingChangeableFields, required — The additions of current listing
    - `updates` UpdatesRecursivePartialListingChangeableFields, required — The updates of current listing
    - `removals` RemovalsRecursivePartialListingChangeableFields, required — The removals of current listing
  - `error` string, nullable — Error message if the creation failed

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `500` — Internal Server Error

---

[API](https://skmtc.net/stockx/apis/stockx-public-api.md) · [All operations](https://skmtc.net/stockx/apis/stockx-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/stockx/stockx-public-api/revisions/5b4ba84182d7/schema)
