Use Coupon WELCOME to save 20%

$ USD
  • $ USD
  • € EUR
  • £ GBP
  • $ AUD
  • R$ BRL
  • CHF CHF
  • ¥ JPY

RPCrate Developer Portal

RPCrate publishes a read-only HTTP API over its FiveM script catalogue, an OpenAPI 3.1 description of it, and a command line tool that speaks to it. Everything on this page is public, needs no key and can be used by a person, a script or an agent.

The RPCrate catalogue API

One namespace, four GET endpoints, JSON only. The API names published and catalog-visible product populations instead of treating them as interchangeable:

published_product_count
1,706 — All published WooCommerce products, including products intentionally hidden from public catalog discovery.
catalog_visible_product_count
1,625 — The public catalog population used by the homepage and by /catalog/products.total after catalog-visibility and promotion holds.

GET /catalog/products pages only the catalog-visible population. Its unfiltered total therefore equals catalog_visible_product_count; published_product_count remains separately named in the API index.

Base URL

https://rpcrate.com/wp-json/fivemx/v1

Endpoints

  • GET /catalog — index with counts, currency and links to everything else on this page
  • GET /catalog/categories — all 46 categories with product counts
  • GET /catalog/products — one page of products, filterable by category and framework, up to 50 per page
  • GET /catalog/products/{slug} — a single product by its English slug

Authentication and writes

There is none, and there are none. Every endpoint is an anonymous GET. Nothing here creates an order, changes a price or touches an account, so there is no key to leak and no state for a mistake to damage.

OpenAPI specification

The full machine-readable description, generated from the same contract the API is implemented against, so the two cannot drift:

  • https://rpcrate.com/openapi.json
  • https://rpcrate.com/.well-known/openapi.json — byte identical, for clients that look there first
  • https://rpcrate.com/.well-known/api-catalog — an RFC 9727 linkset pointing at both

The homepage also advertises it with a rel="service-desc" link, and https://rpcrate.com/llms.txt describes the site for language models.

The RPCrate CLI

An official command line tool wraps the same API. Node 18 or newer, zero runtime dependencies.

npm install -g @fivemx/cli
fivemx catalog
fivemx products --framework qbcore --per-page 5
fivemx product audio-speaker-script --json

Exit codes separate a usage mistake from an outage without parsing any output: 0 ok, 1 usage error with no request sent, 2 the request failed, 3 the resource does not exist.

Error responses

Errors are JSON, never an HTML page, and every one carries a code, a message and a hint that says what to do next.

{
  "code": "fivemx_product_not_found",
  "message": "No published product has that slug.",
  "data": {
    "status": 404,
    "hint": "Slugs come from /wp-json/fivemx/v1/catalog/products."
  }
}

A client that sends Accept: application/json, or that identifies itself as a known AI agent, receives this shape for any missing path on the site, not only inside the API namespace. A browser keeps the normal error page.

Rate limits and caching

There is no published quota. Responses are cached for ten minutes at the origin, so a crawl of the whole catalogue is inexpensive for both sides. Please send a user agent that identifies you, and prefer one paginated pass over many single-product requests.

What this API deliberately does not do

  • It does not expose carts, checkout, orders, customers or downloads. Those paths are closed to crawlers in robots.txt and are not described by the specification.
  • It does not serve translated slugs. Locale versions of the site use translated URLs, and this API accepts the English slug only.
  • It does not convert prices. Values are in the base currency reported by /catalog, not in a visitor’s selected currency.
  • There is no MCP server, no agent card and no webhook feed. When one exists it will be listed here and in the API catalog rather than announced by an empty file.

Questions about the API belong on the RPCrate contact page.