CoinManagerPro API

A REST API for CoinManagerPro. Read and update your coin inventory with value, cost basis, grading, and location, and read AI valuations, consignments, and sales invoices. Use it to sync inventory with your own website, accounting, or point of sale. The API is part of the Business and Enterprise plans.

Quick start

  1. Put your workspace on the Business or Enterprise plan.
  2. As an owner or admin, create a key in Settings, API keys. Copy it; it is shown once.
  3. Send it as a bearer token:
curl "https://api.flowauctions.com/inventory/v1/items?q=morgan&limit=5" \
  -H "Authorization: Bearer cmp_live_..."

Authentication

Every request needs Authorization: Bearer <key>. Keys start with cmp_live_ and belong to your workspace. A key acts as the owner or admin who created it, so it stops working if that person leaves or is no longer an owner or admin. Revoke a key from the settings page at any time. Keep keys on your server; do not put them in a web page or mobile app.

Requests and limits

  • Base URL: https://api.flowauctions.com/inventory/v1
  • Each key allows 120 requests per 60 seconds. Over the limit, the API returns 429 with a Retry-After header.
  • Send JSON bodies with Content-Type: application/json.
  • Money is in integer cents (USD). Timestamps are ISO 8601 in UTC.
  • Lists take page and limit (1 to 100) and return hasMore.

Errors

Errors return { code, message }, plus issues for validation errors.

StatusCodeMeaning
400BAD_REQUESTThe request failed validation. `issues` lists each field.
401UNAUTHORIZEDThe key is missing, unknown, expired, or revoked.
403FORBIDDENThe plan no longer includes the API, or the key's creator is no longer an owner or admin.
404NOT_FOUNDNo such resource, or it belongs to another organization.
429TOO_MANY_REQUESTSRate limit reached. Wait for the seconds in `Retry-After`.
500INTERNAL_SERVER_ERRORSomething failed on our side. Retry, or email us.

Endpoints

The full machine-readable reference is the OpenAPI 3.1 document. Load it into Postman, Insomnia, or a code generator.

Account

get/me

Check your API key

Returns the organization and key that the request is authenticated as.

Returns object.

Items

get/items

List your inventory

Your workspace's inventory items, with value, cost, grading, and images.

Parameters

FieldTypeNotes
qstring
status"in_stock" | "out_of_stock" | "sold" | "at_auction"
categoryIduuid
gradingServicestring
gradestring
skustring
sort"newest" | "oldest" | "title" | "value_desc" | "value_asc" | "sku"Default "newest".
pageintegerPage number, starting at 1. Default 1.
limitintegerResults per page, 1 to 100. Default 20.

Returns a page of Item[].

post/items

Add an item

Adds an item to your inventory. Without warehouseId and zoneId it goes to your default warehouse. Returns 409 when the SKU is already used. Photos are added in the CoinManagerPro app.

JSON body

FieldTypeNotes
sku*stringUnique within your workspace.
title*string
descriptionstring
quantityintegerUnits available. Default 1.
valueInCentsintegerDefault 0.
acquisitionPriceInCentsinteger
acquisitionDatedate-time
acquiredFromstring
acquisitionNotesstring
gradingServicestring
gradestring
certificateNumberstring
gradingNotesstring
categoryIduuid
attributesobject
warehouseIduuidDefaults to your default warehouse.
zoneIduuidDefaults to the first zone of the warehouse.
locationDetailsstring

Returns Item.

get/items/{id}

Get an item

Parameters

FieldTypeNotes
{id}*uuid

Returns Item.

patch/items/{id}

Update an item

Changes only the fields you send. Changing quantity also updates a linked Flow Dealers listing.

Parameters

FieldTypeNotes
{id}*uuid

JSON body

FieldTypeNotes
skustringUnique within your workspace.
titlestring
descriptionstring
quantityintegerUnits available. Default 1.
valueInCentsintegerDefault 0.
acquisitionPriceInCentsinteger
acquisitionDatedate-time
acquiredFromstring
acquisitionNotesstring
gradingServicestring
gradestring
certificateNumberstring
gradingNotesstring
categoryIduuid
attributesobject
warehouseIduuidDefaults to your default warehouse.
zoneIduuidDefaults to the first zone of the warehouse.
locationDetailsstring

Returns Item.

delete/items/{id}

Delete an item

Removes the item and any Flow Dealers listing made from it.

Parameters

FieldTypeNotes
{id}*uuid

Returns object.

get/items/{id}/valuations

List an item's valuations

AI valuations of the item, newest first, with the comparable sales they used.

Parameters

FieldTypeNotes
{id}*uuid
limitintegerMost recent first, 1 to 50. Default 10.

Returns a page of Valuation[].

Consignments

get/consignments

List consignments

Consignments in your workspace, newest first, with totals and the consignor.

Parameters

FieldTypeNotes
qstring
status"intake" | "cataloging" | "listed" | "partially_sold" | "sold" | "settled" | "withdrawn" | "returned"
consignorIduuid
pageintegerPage number, starting at 1. Default 1.
limitintegerResults per page, 1 to 100. Default 20.

Returns a page of Consignment[].

get/consignments/{id}

Get a consignment

Parameters

FieldTypeNotes
{id}*uuid

Returns Consignment.

Invoices

get/invoices

List sales invoices

Sales invoices in your workspace, with lines and payments.

Parameters

FieldTypeNotes
qstring
status"draft" | "sent" | "paid" | "partially_paid" | "overdue" | "void" | "cancelled"
sort"newest" | "oldest"Default "newest".
pageintegerPage number, starting at 1. Default 1.
limitintegerResults per page, 1 to 100. Default 20.

Returns a page of Invoice[].

get/invoices/{id}

Get a sales invoice

Parameters

FieldTypeNotes
{id}*uuid

Returns Invoice.

Help

Questions about the API: email support@coinmanagerpro.com.