Platitun · API · Listings · Create a listing
Create a listing
POST /api/v1/listingsKey scope: listings · changes data, the Idempotency-Key header is required
A new listing. It is born SWITCHED OFF — switching on stays a separate action because that is what turns your price into a public offer you are bound to honour. The allowed field values come from the catalogue position endpoint.
A self-employed seller may only sell a subscription issued TO THE BUYER’S OWN EMAIL: ready accounts and credits are resale, which the law forbids to the self-employed. The refusal code is self_employed_forbidden.
Contact details in the description do not pass: taking the deal off the marketplace strips the buyer of protection and the seller of the guarantee.
Request fields
| Field | Type | What it is |
|---|---|---|
service required | string | The service slug from the catalogue. |
tariff | string | The vendor plan slug. Required for a subscription and an account with a subscription. |
productType required | string | subscription, account, account_with_subscription or credits. |
deliveryMethod required | string | The delivery method. What fits what is in the catalogue position response. |
priceRub required | integer | The price in whole roubles. |
slaMinutes required | integer | How many minutes you promise to deliver within. Only from the allowed list. |
guaranteeDays required | integer | The guarantee period in days. Only from the allowed list. |
stock | integer | The stock limit. Empty — unlimited. |
description | string | Your own product description. It also puts the listing into the sitemap: a seller benefits from describing their product. |
confirmRequired | boolean | Whether your confirmation is required before payment. |
ratePer1000Rub | integer | For credits: the rate per thousand. |
amountMin | integer | For credits: the minimum amount. |
amountMax | integer | For credits: the maximum amount. |
Response fields
| Field | Type | What it is |
|---|---|---|
number | integer | The public number of the new listing. |
isActive | boolean | Always false: a listing is born switched off. |
isTest | boolean | A test seller’s listing is born as a test one. |
Refusal reasons
A rule refusal arrives as {"error":"rejected","refusal":{"kind":"…"}} with status 409. Refusals common to all endpoints are in the rules section.
| Code | What happened and what to do |
|---|---|
complaint | The listing rules did not match: for instance the delivery method does not fit the product type, or a period is outside the allowed list. The allowed values come from the catalogue position endpoint. |
contacts | Contact details were found in the text — an email, a phone number, a messenger link. Taking the deal off the marketplace strips the buyer of protection and the seller of the guarantee. Remove them and send again. |
no_service | There is no such position in the catalogue. Find it by searching the catalogue or file a request. |
type_not_available | This position does not have such a product type. The possible types are in the catalogue position response. |
no_tariff | A subscription and an account with a subscription need a vendor plan. The plan list is in the catalogue position response. |
self_employed_forbidden | A self-employed seller may only sell a subscription issued to the buyer’s own email: ready accounts and credits are resale, which the law forbids to the self-employed. |
Nearby in this section
GET /api/v1/listings— My listingsGET /api/v1/listings/{number}— One of my listingsPATCH /api/v1/listings/{number}— Update a listingDELETE /api/v1/listings/{number}— Remove a listingPOST /api/v1/listings/{number}/state— Switch on, switch off, auto-deliveryPOST /api/v1/listings/{number}/copy— Copy a listingPOST /api/v1/listings/{number}/test— Mark a listing as testPUT /api/v1/listings/{number}/image— The listing imageDELETE /api/v1/listings/{number}/image— Remove the imageGET /api/v1/questions— Questions about my listingsPOST /api/v1/questions/{id}/answer— Answer a question