Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.skynetparts.com/llms.txt

Use this file to discover all available pages before exploring further.

Send a list of part numbers or part names, get back stock, our catalog price, and an ID you can use to order each one. Up to 50 parts per request.
POST https://api.skynetparts.com/api/b2b/catalog
Requires an API key. See Authentication for how to get one.

Headers

HeaderRequiredValue
AuthorizationYesBearer sk_live_...
Content-TypeYesapplication/json

Body

part_numbers
string[]
List of manufacturer part numbers most reliable.
part_names
string[]
List of part names or descriptions use when you don’t have the exact number.
Send at least one of the two arrays. You may send both results merge. Maximum 50 entries total.
curl -X POST https://api.skynetparts.com/api/b2b/catalog \
  -H "Authorization: Bearer $SKYNET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "part_numbers": ["MS21042L3", "AN3-5A"] }'
curl -X POST https://api.skynetparts.com/api/b2b/catalog \
  -H "Authorization: Bearer $SKYNET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "part_names": ["Self-Locking Nut", "Cotter Pin"] }'
curl -X POST https://api.skynetparts.com/api/b2b/catalog \
  -H "Authorization: Bearer $SKYNET_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "part_numbers": ["MS21042L3"], "part_names": ["Cotter Pin"] }'
{
  "success": true,
  "found_parts": [
    {
      "part_id": "skynet_part_BWxLDSfV6dFV5o40VwVTV0arE-5dVB7VE22Jd1bb40zYqKv2eI7lRPsBJGk0JleZRO1NI5VQz6qe7KifEy24PQGAL0bZbcE",
      "part_number": "MS21042L3",
      "title": "Self-Locking Nut, MS21042L3",
      "vendor": "Aerospace Hardware Co",
      "available_stock": 87,
      "price": { "amount": "12.40", "currency": "USD" },
      "status": "ACTIVE"
    }
  ],
  "not_found": ["AN3-5A"],
  "summary": { "total_requested": 2, "found": 1, "not_found": 1 }
}

Response fields

success
boolean
true for any 200 response including responses where every part landed in not_found.
found_parts
object[]
One entry per part that matched. Empty array if nothing matched.
found_parts[].part_id
string
An opaque ID for the part. Use it when placing an order. Safe to log. Look up the part again if you haven’t ordered within an hour.
found_parts[].part_number
string
The manufacturer part number.
found_parts[].title
string
Human-readable name for the part.
found_parts[].vendor
string
The manufacturer or supplier.
found_parts[].available_stock
integer
Units currently on hand.
found_parts[].price
object
Our list catalog price for this part. Your account may have a negotiated B2B price that’s different the order response always shows your actual unit_price. Contains amount (string, decimal) and currency (string, ISO code).
found_parts[].status
string
Lifecycle marker for the part. ACTIVE means it can be ordered.
not_found
string[]
The exact part numbers or part names from your request that didn’t match anything in our catalog. Returned as a successful response (success=true), not an error partial matches are normal when sending many parts at once.
summary
object
Counts for the request. Contains total_requested, found, and not_found integers.
Our catalog price is shown here. Your B2B account may have negotiated lower pricing — your actual unit price is confirmed when you place the order.

Errors

These codes apply to this endpoint:
CodeHTTPMeaning
VALIDATION_FAILED400Body is missing a field or has the wrong type.
INVALID_API_KEY401Your API key is missing, malformed, or wrong.
KEY_REVOKED401The key was revoked. Email api@skynetparts.com for a replacement.
UPSTREAM_ERROR502Catalog lookup failed on our end. Safe to retry.
See Error codes for the full list and response shape.