Regulations API

The regulations endpoints are the core of HempData API. Use them to query structured regulatory data, track changes over time, and compare rules across states.

GET /v1/regulations

Retrieve a paginated list of regulations matching your filters.

Query Parameters

ParameterTypeRequiredDescription
statestringNoTwo-letter state code (e.g., CO, CA). Filter to a single state.
substancestringNoSubstance identifier (e.g., delta-9-thc, cbd, delta-8-thc, thca, cbg, cbn).
product_typestringNoProduct type (e.g., edibles, topicals, smokable, tinctures, beverages, flower, concentrates, pet-products).
legal_statusstringNoFilter by status: legal, legal_with_restrictions, restricted, prohibited, unclear.
min_confidencenumberNoMinimum confidence score (0.0 to 1.0). Only return entries at or above this threshold. Default: 0.0.
verified_afterstringNoISO 8601 datetime. Only return regulations verified after this timestamp.
include_changelogbooleanNoIf true, include recent change history for each regulation. Default: false.
include_sourcesbooleanNoIf true, include source citations for each regulation. Default: false.
include_billsbooleanNoIf true, include related pending bills. Default: false.
pageintegerNoPage number for pagination. Default: 1.
per_pageintegerNoResults per page (1-100). Default: 25.
formatstringNoResponse format: json (default) or csv. CSV is available on Professional tier and above.

Request Example

curl -X GET "https://api.hempdataapi.com/v1/regulations?state=CO&substance=delta-9-thc&product_type=edibles&include_sources=true&include_bills=true" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response Example

{
  "success": true,
  "data": [
    {
      "id": "reg_a1b2c3d4-5678-9012-abcd-ef3456789012",
      "state": "CO",
      "state_name": "Colorado",
      "substance": "delta-9-thc",
      "product_type": "edibles",
      "legal_status": "legal_with_restrictions",
      "summary": "Delta-9 THC edibles are legal in Colorado for adults 21+ with licensed retail sale. Products must not exceed 10mg THC per serving and 100mg per package.",
      "details": {
        "thc_limit": "0.3% dry weight (hemp-derived); up to 10mg/serving (retail)",
        "age_requirement": 21,
        "license_required": true,
        "testing_required": true,
        "labeling_requirements": "Must include THC content per serving, total THC, ingredients, batch number, and QR code to COA.",
        "packaging_requirements": "Child-resistant, opaque, resealable packaging required.",
        "sales_channels": ["licensed_retail", "online_with_age_verification"],
        "possession_limit": "2 oz hemp-derived products",
        "additional_restrictions": "No sales within 500 feet of schools. No marketing targeting minors."
      },
      "effective_date": "2024-01-01",
      "expiration_date": null,
      "confidence": 0.94,
      "confidence_breakdown": {
        "source_quality": 0.95,
        "recency": 0.98,
        "consistency": 0.90,
        "ai_parsing": 0.92
      },
      "last_verified": "2026-03-18T06:00:00Z",
      "verified_by": "automated",
      "sources": [
        {
          "id": "src_001",
          "title": "Colorado Revised Statutes 44-10-601",
          "url": "https://leg.colorado.gov/sites/default/files/images/olls/crs2024-title-44.pdf",
          "type": "statute",
          "retrieved_at": "2026-03-17T12:00:00Z"
        },
        {
          "id": "src_002",
          "title": "Colorado Department of Revenue — Marijuana Enforcement Division Rules",
          "url": "https://sbg.colorado.gov/med-rules",
          "type": "regulatory_guidance",
          "retrieved_at": "2026-03-16T08:00:00Z"
        }
      ],
      "related_bills": [
        {
          "bill_id": "bill_co_2026_hb1234",
          "number": "HB26-1234",
          "title": "Concerning Hemp-Derived Cannabinoid Product Regulation",
          "status": "in_committee",
          "introduced_date": "2026-01-15",
          "last_action": "Referred to House Health & Insurance Committee",
          "last_action_date": "2026-02-20",
          "impact_summary": "Would raise serving size limit to 25mg THC for edibles sold to adults 21+."
        }
      ],
      "created_at": "2025-06-01T00:00:00Z",
      "updated_at": "2026-03-17T12:30:00Z"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 25,
    "total": 1,
    "total_pages": 1,
    "request_id": "req_abc123",
    "applied_filters": {
      "state": "CO",
      "substance": "delta-9-thc",
      "product_type": "edibles"
    }
  },
  "errors": []
}

Response Fields

FieldTypeDescription
idstringUnique regulation identifier (UUID, prefixed reg_)
statestringTwo-letter state code
state_namestringFull state name
substancestringRegulated substance identifier
product_typestringProduct type this regulation applies to
legal_statusstringOne of: legal, legal_with_restrictions, restricted, prohibited, unclear
summarystringPlain-English summary of the regulation
detailsobjectStructured regulatory details (see below)
effective_datestringDate the regulation took effect (ISO 8601)
expiration_datestring or nullSunset date if applicable
confidencenumberOverall confidence score (0.0 to 1.0)
confidence_breakdownobjectComponent scores: source_quality, recency, consistency, ai_parsing
last_verifiedstringWhen this entry was last checked (ISO 8601)
verified_bystringautomated or manual
sourcesarraySource citations (when include_sources=true)
related_billsarrayPending legislation (when include_bills=true)
created_atstringWhen this regulation was first added
updated_atstringWhen this regulation was last modified

Details Object

FieldTypeDescription
thc_limitstringTHC concentration or serving size limits
age_requirementinteger or nullMinimum age for purchase (18, 21, or null)
license_requiredbooleanWhether a license is required to sell
testing_requiredbooleanWhether third-party testing is mandated
labeling_requirementsstringLabeling rules summary
packaging_requirementsstringPackaging rules summary
sales_channelsarrayAllowed sales channels
possession_limitstring or nullConsumer possession limits
additional_restrictionsstring or nullOther notable restrictions
ValueMeaning
legalFully legal with no special restrictions beyond federal hemp definition
legal_with_restrictionsLegal but with specific conditions (age, licensing, THC limits, etc.)
restrictedSignificantly restricted (e.g., only certain sales channels, medical only)
prohibitedExplicitly banned in this jurisdiction
unclearRegulatory status is ambiguous or in flux

GET /v1/regulations/:id

Retrieve a single regulation by its UUID.

Path Parameters

ParameterTypeDescription
idstringRegulation UUID (e.g., reg_a1b2c3d4-5678-9012-abcd-ef3456789012)

Request Example

curl -X GET "https://api.hempdataapi.com/v1/regulations/reg_a1b2c3d4-5678-9012-abcd-ef3456789012" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

Returns a single regulation object in the data field (same structure as the list endpoint).

{
  "success": true,
  "data": {
    "id": "reg_a1b2c3d4-5678-9012-abcd-ef3456789012",
    "state": "CO",
    "state_name": "Colorado",
    "substance": "delta-9-thc",
    "product_type": "edibles",
    "legal_status": "legal_with_restrictions",
    "summary": "...",
    "details": { "..." : "..." },
    "confidence": 0.94,
    "last_verified": "2026-03-18T06:00:00Z",
    "sources": [],
    "related_bills": [],
    "created_at": "2025-06-01T00:00:00Z",
    "updated_at": "2026-03-17T12:30:00Z"
  },
  "meta": {
    "request_id": "req_def456"
  },
  "errors": []
}

GET /v1/regulations/changelog

Retrieve the change history for regulations. Useful for auditing and tracking regulatory shifts.

Query Parameters

ParameterTypeRequiredDescription
statestringNoFilter changes by state code
substancestringNoFilter changes by substance
regulation_idstringNoFilter to a specific regulation's history
sincestringNoISO 8601 datetime. Only return changes after this timestamp.
untilstringNoISO 8601 datetime. Only return changes before this timestamp.
pageintegerNoPage number. Default: 1.
per_pageintegerNoResults per page (1-100). Default: 25.

Request Example

curl -X GET "https://api.hempdataapi.com/v1/regulations/changelog?state=TX&since=2026-01-01T00:00:00Z" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response Example

{
  "success": true,
  "data": [
    {
      "id": "chg_x1y2z3",
      "regulation_id": "reg_f1e2d3c4-5678-9012-abcd-ef3456789012",
      "state": "TX",
      "substance": "delta-8-thc",
      "product_type": "edibles",
      "event_type": "legal_status_changed",
      "before": {
        "legal_status": "legal_with_restrictions",
        "summary": "Delta-8 THC edibles permitted with labeling requirements."
      },
      "after": {
        "legal_status": "prohibited",
        "summary": "Delta-8 THC edibles prohibited following HB 1842 effective March 1, 2026."
      },
      "diff_summary": "legal_status: legal_with_restrictions -> prohibited",
      "plain_english_summary": "Texas has banned Delta-8 THC edibles effective March 1, 2026, following the passage of HB 1842.",
      "changed_at": "2026-03-01T00:00:00Z",
      "detected_at": "2026-03-01T06:15:00Z"
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 25,
    "total": 1,
    "total_pages": 1,
    "request_id": "req_ghi789"
  },
  "errors": []
}

Changelog Event Types

Event TypeDescription
legal_status_changedThe legal status of a regulation changed
details_updatedRegulatory details were modified (limits, requirements, etc.)
source_addedA new source citation was added
bill_linkedA pending bill was linked to this regulation
confidence_changedThe confidence score changed significantly
new_regulationA new regulation entry was created
regulation_expiredA regulation reached its sunset/expiration date

GET /v1/regulations/compare

Compare regulations across multiple states side by side. Requires at least 2 state codes.

Query Parameters

ParameterTypeRequiredDescription
statesstringYesComma-separated state codes (minimum 2, e.g., CO,CA,TX)
substancestringNoFilter comparison to a specific substance
product_typestringNoFilter comparison to a specific product type

Request Example

curl -X GET "https://api.hempdataapi.com/v1/regulations/compare?states=CO,CA,TX&substance=delta-9-thc&product_type=edibles" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response Example

{
  "success": true,
  "data": {
    "comparison": [
      {
        "state": "CO",
        "state_name": "Colorado",
        "legal_status": "legal_with_restrictions",
        "summary": "Delta-9 THC edibles legal for 21+ with licensed retail sale. Max 10mg/serving.",
        "thc_limit": "10mg/serving, 100mg/package",
        "age_requirement": 21,
        "license_required": true,
        "confidence": 0.94,
        "regulation_id": "reg_a1b2c3d4-5678-9012-abcd-ef3456789012"
      },
      {
        "state": "CA",
        "state_name": "California",
        "legal_status": "legal_with_restrictions",
        "summary": "Hemp-derived Delta-9 THC edibles permitted under AB-45 framework. Must comply with CDPH regulations.",
        "thc_limit": "5mg/serving, 50mg/package (hemp-derived)",
        "age_requirement": 21,
        "license_required": true,
        "confidence": 0.91,
        "regulation_id": "reg_b2c3d4e5-6789-0123-bcde-fg4567890123"
      },
      {
        "state": "TX",
        "state_name": "Texas",
        "legal_status": "prohibited",
        "summary": "Delta-8 and Delta-9 THC edibles prohibited following HB 1842, effective March 1, 2026.",
        "thc_limit": "N/A — prohibited",
        "age_requirement": null,
        "license_required": false,
        "confidence": 0.88,
        "regulation_id": "reg_f1e2d3c4-5678-9012-abcd-ef3456789012"
      }
    ],
    "summary": "2 of 3 states allow Delta-9 THC edibles with restrictions. Texas prohibits them as of March 2026."
  },
  "meta": {
    "states_compared": ["CO", "CA", "TX"],
    "substance": "delta-9-thc",
    "product_type": "edibles",
    "request_id": "req_jkl012"
  },
  "errors": []
}

Comparison Notes

  • You can compare up to 10 states in a single request.
  • If a state has no matching regulation for the given filters, it will still appear in the comparison with legal_status: "unclear" and a note explaining no data is available.
  • The summary field in the response root provides a plain-English comparison overview.