Metrc is the cannabis track-and-trace and compliance platform mandated across 30+ U.S. jurisdictions, combining software with RFID tagging to monitor product from cultivation through retail sale. An unofficial API lets you programmatically pull plants, harvests, packages, transfers, lab results, sales receipts, and facility data—and push compliant updates like new packages, plant movements, and sales reporting back into Metrc.

Metrc is a cannabis compliance and track-and-trace platform that pioneered Colorado's seed-to-sale solution and is now the regulatory standard across 30+ U.S. jurisdictions and territories. Founded in 2011, Metrc combines software with RFID tagging to monitor cannabis movement from cultivation through processing, testing, transport, and retail sale—consolidating supply-chain data into a unified system that growers, processors, retailers, and state regulators rely on for compliance, recall management, tax documentation, and chain-of-custody tracking.
Core capabilities include:
Common data entities:
Cannabis operators depend on Metrc for daily compliance, but building reliable automation on top of it is non-trivial:
Supergood delivers a resilient, normalized API layer over Metrc's open API and Metrc Connect surfaces—handling the dual-key authentication, per-state base URLs, and compliance lifecycle rules so you integrate once across every facility and jurisdiction you operate in.
Use Metrc with AI agents: Metrc MCP Server →
Book a 30-minute session to confirm your states, facility licenses, and Metrc Connect status.
We deliver a production-ready Metrc adapter tuned to your jurisdictions and compliance workflows.
Go live with continuous monitoring and automatic adjustments as Metrc and state rules evolve.
Authentication
/authenticateAuthenticate using the vendor and user API keys scoped to a facility license and obtain a session for downstream calls.
Cultivation
/plantsList vegetative and flowering plants with filters for facility, growth phase, location, strain, and tag.
Cultivation
/harvestsRetrieve active, on-hold, and inactive harvests with associated weights, waste, and package activity.
Inventory
/packagesPull active and inactive packages with item, quantity, lab-test status, and source harvest details.
Inventory
/create_packageCreate a new package from harvested material or existing packages, assigning a Metrc tag and item.
Distribution
/transfersList incoming, outgoing, and rejected transfers with manifests, delivery routes, and destination facilities.
Retail
/sales_receiptsRetrieve point-of-sale sales receipts and transactions with package, quantity, price, and patient validation data.
- Pull plants, harvests, and packages by facility into a single normalized warehouse - Reconcile package quantities and tags against ERP and POS inventory - Surface lab-test status and item categories for downstream reporting
- Create packages from harvests and existing packages with correct tags and items - Build outgoing transfer manifests and deliveries without manual portal entry - Enforce lifecycle ordering so the state accepts each compliance report
- Push and pull sales receipts and transactions across retail locations - Validate patients against state medical registries at point-of-sale - Reconcile sold quantities back to package inventory for accurate counts
- Route calls to the correct per-state Metrc instance automatically - Aggregate plants, packages, and sales across facilities into one view - Adapt to Metrc Connect rollout differences without rewriting integrations
Authentication
Dual API keys (vendor software key plus user key) scoped per facility license, managed in a secure session
Connectivity
Metrc open API and Metrc Connect REST surfaces, routed to the correct per-state base URL (api-ca, api-or, api-co, …)
Response format
Normalized JSON across plants, harvests, packages, transfers, lab results, and sales objects
Rate limits
Adaptive throttling tuned to Metrc's per-endpoint and per-jurisdiction request limits to avoid throttling
Session management
Automatic key rotation, credential vaulting, and per-facility scope handling
Data freshness
Near real-time pulls for packages, transfers, and sales with optional scheduled batch syncs
Security
Encrypted credential vault, scoped access, SOC 2-aligned controls, and audit logging
Webhooks
Event-style callbacks for package creation, transfer status, harvest changes, and sales activity
Latency
Sub-second reads on cached entities; multi-second writes when posting compliance transactions
Throughput
Horizontally scaled workers sized to multi-facility, multi-state cultivation and retail volume
Reliability
Retry, backoff, and idempotency keys for package, transfer, and sales compliance writes
Adaptation
Continuous monitoring of Metrc Connect rollouts, state rule changes, and per-jurisdiction endpoint drift
Production Metrc access requires sandbox testing and approval through Metrc's managed integration process before vendor and user keys are issued. Supergood works with your authorized keys and handles the dual-key, per-facility scoping for you.
Yes. Metrc runs a separate instance per jurisdiction with its own base URL and rules. Supergood routes each call to the correct per-state endpoint and normalizes responses so you integrate once across every state you operate in.
Plant, harvest, package, and transfer operations must follow exact lifecycle sequences and tag rules. Supergood enforces correct ordering and idempotent writes so the state accepts each report rather than rejecting it.
Metrc Connect changes endpoint behavior and capabilities relative to the legacy open API and rolls out by state. Supergood adapts to both surfaces and the rollout differences so your integration keeps working as states migrate.
Yes. The same normalized API surfaces plants, harvests, packages, and transfers alongside sales receipts and patient validation, so cultivation and retail data sit together for unified reporting.