Batch full offer rows by SKU
POST
/v1/catalog/rows
const url = 'https://api.oldsteelarsenal.com/v1/catalog/rows';const options = { method: 'POST', headers: { 'x-client-id': '<x-client-id>', 'x-signature': '<x-signature>', 'x-timestamp': '<x-timestamp>', 'Content-Type': 'application/json' }, body: '{"distributor":"example","skus":["example"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.oldsteelarsenal.com/v1/catalog/rows \ --header 'Content-Type: application/json' \ --header 'x-client-id: <x-client-id>' \ --header 'x-signature: <x-signature>' \ --header 'x-timestamp: <x-timestamp>' \ --data '{ "distributor": "example", "skus": [ "example" ] }'Up to 200 SKUs per call; unknown SKUs are simply absent from the response. The POS thin client prefetches its sync batches here. Scope: catalog:read.
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Header Parameters
Section titled “Header Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
RowsRequest
object
distributor
required
Distributor
string
skus
required
Skus
Array<string>
Examplegenerated
{ "distributor": "example", "skus": [ "example" ]}Responses
Section titled “ Responses ”Successful Response
Media typeapplication/json
RowsResponse
object
rows
required
Rows
Array<object>
OfferFullobject
caliber
required
Caliber
string
cost
required
Cost
number
department
required
Department
string
discontinued
required
Discontinued
boolean
distributor
required
Distributor
string
dropship_blocked
required
Dropship Blocked
boolean
ffl_required
required
Ffl Required
boolean
image_name
required
Image Name
string
image_url
required
Image Url
string
image_url_hires
required
Image Url Hires
string
long_description
required
Long Description
string
manufacturer
required
Manufacturer
string
map
required
Map
number
map_policy
Map Policy
Manufacturer price-policy mark when the distributor ships one (ss: ‘M’ = enforceable MAP, ‘U’ = suggested MSRP, ‘’ = no policy — render ‘’ as ‘no policy’, never as MAP $0). Always ‘’ for rsr.
string
mfg_number
required
Mfg Number
string
model
required
Model
string
msrp
required
Msrp
number
product_class
required
Product Class
Handgun / Long Gun / Other Firearm / Ammunition / Accessory, from this distributor’s own department code — the one class table; a client keeps none of its own.
string
prop65
required
Prop65
boolean
qty
required
Qty
integer
ships_ground_only
required
Ships Ground Only
boolean
short_description
required
Short Description
string
signature_required
required
Signature Required
boolean
sku
required
Sku
string
status_flag
required
Status Flag
string
vendor_approval_required
required
Vendor Approval Required
boolean
weight_lb
required
Weight Lb
number
Example
{ "rows": [ { "map_policy": "" } ]}Validation Error
Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationErrorobject
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string
Examplegenerated
{ "detail": [ { "ctx": {}, "input": "example", "loc": [ "example" ], "msg": "example", "type": "example" } ]}