List publish attempts
Every attempt to publish or remove the offer.
Lists the attempts to publish or remove the offer, newest first. Each entry is a Job item that touched the offer (listing.publish or listing.remove). Use it when the offer is failed or stuck: the error of the failed item says why.
curl "$BACKEND_URL/v1/listings/<listingId>/publish-attempts" \
-H "Authorization: Bearer mk_your_api_key"One attempt that failed, shortened:
{
"jobId": "7c6b5a49-3827-4615-a0b9-c8d7e6f5a4b3",
"jobItemId": "b4a39281-7065-4f43-9e21-0d1c2b3a4f5e",
"type": "listing.publish",
"status": "failed",
"mode": "auto",
"error": "The marketplace refused the price.",
"result": null
}statusispending,succeededorfailed.finishedAtisnullwhile pending.modeis the mode that was asked for (auto,create,updateorrecreate). On a removal it isnull.resultis the item's summary. It isnullwhile pending and after a failure.jobIdleads to the Job, andjobItemIdto the item.
Fix what the error points at and publish again. Full flow: Publish listings.
api_keyAuthorizationBearer <token>API key (mk_...)
listingId*string^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$uuidpage?integerPage number, starting at 1. Defaults to 1. A page beyond pagination.totalPages is not an error: it returns empty data.
1 <= value <= 90071992547409911pageSize?integerItems per page, from 1 to 100. Defaults to 20.
1 <= value <= 10020One page of attempts, newest first. A page beyond pagination.totalPages returns empty data, not 404.
application/json- response
One page of the publication attempts of an offer.
data*array<>The attempts of this page, newest first.
pagination*Where this page sits in the whole listing: the totals and whether there are pages before and after it.
curl -X GET "https://example.com/v1/listings/497f6eca-6276-4993-bfeb-53cbbbba6f08/publish-attempts"{ "data": [ { "jobId": "7c6b5a49-3827-4615-a0b9-c8d7e6f5a4b3", "jobItemId": "b4a39281-7065-4f43-9e21-0d1c2b3a4f5e", "type": "listing.publish", "status": "failed", "mode": "auto", "requestedAt": "2026-10-19T12:00:00.000Z", "finishedAt": "2026-10-19T12:00:03.000Z", "error": "The marketplace refused the price.", "result": null } ], "pagination": { "page": 1, "pageSize": 20, "totalItems": 1, "totalPages": 1, "hasNext": false, "hasPrev": false }}