Green Check Verified · Schema
PagedLocationInventory
CompanyCannabisComplianceBankingFinancial ServicesBSA/AMLRegTechPoint-of-SaleOnboardingDue DiligenceKYCData Aggregation
Properties
| Name | Type | Description |
|---|---|---|
| metadata | object | |
| data | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/green-check-verified/main/json-schema/green-check-verified-paged-location-inventory-schema.json",
"title": "PagedLocationInventory",
"x-generated": "2026-10-20",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/green-check-verified-crb-inventory-api-openapi.yml#/components/schemas/PagedLocationInventory",
"properties": {
"metadata": {
"properties": {
"total": {
"$ref": "#/$defs/PositiveInteger"
},
"count": {
"type": "string",
"description": "Range of items returned"
}
},
"required": [
"total",
"count"
],
"type": "object"
},
"data": {
"anyOf": [
{
"items": {
"$ref": "#/$defs/InventoryByLocation"
},
"type": "array"
},
{
"items": {
"$ref": "#/$defs/ExpandedInventoryByLocation"
},
"type": "array"
}
]
}
},
"required": [
"metadata",
"data"
],
"type": "object",
"additionalProperties": false,
"$defs": {
"ExpandedInventoryByLocation": {
"properties": {
"id": {
"$ref": "#/$defs/UUID",
"description": "The primary key in the record"
},
"crb_id": {
"$ref": "#/$defs/UUID",
"description": "ID of the CRB"
},
"pos_type": {
"$ref": "#/$defs/FriendlyPosName",
"description": "The PosType the inventory record is sourced from"
},
"product_id": {
"$ref": "#/$defs/NullableUUID",
"description": "The id of the product from the pos system. Soon will be required and populated"
},
"name": {
"type": "string",
"description": "Name of the product"
},
"sku": {
"type": [
"string",
"null"
],
"description": "SKU for the product. May or may not be provided by the POS"
},
"barcode": {
"type": [
"string",
"null"
],
"description": "The tag from the track and trace system that uniquely identifies this product for tracking purposes. May or may not be provided by the POS"
},
"total_quantity": {
"$ref": "#/$defs/PositiveDouble",
"description": "Total inventory quantity on record across all locations"
},
"pos_updated_date": {
"$ref": "#/$defs/NullableUtcDateTime",
"description": "Timestamp reported by the pos for the last update to this record. May or may not be provided by the POS",
"type": [
"string",
"null"
],
"format": "date-time"
},
"pos_updated_date_local": {
"$ref": "#/$defs/NullableLocalDateTime",
"description": "CRB local timestamp reported by the pos for the last update to this record. May or may not be provided by the POS",
"type": [
"string",
"null"
],
"pattern": "^[2][0][0-9]{2}[-]([0][0-9]|[1][0-2])[-]([0-2][0-9]|[3][0-1]\\s([0-1][0-9]|[2][0-3])[:][0-5][0-9][:][0-5][0-9]([.][0-9]{1,3})?"
},
"gc_created_date": {
"$ref": "#/$defs/UtcDateTime",
"description": "Timestamp for when this inventory record was processed by green check",
"type": "string",
"format": "date-time"
},
"gc_updated_date": {
"$ref": "#/$defs/UtcDateTime",
"type": "string",
"format": "date-time"
},
"quantity": {
"$ref": "#/$defs/PositiveInteger",
"description": "Quantity in this location"
},
"product": {
"allOf": [
{
"$ref": "#/$defs/Product"
}
],
"type": [
"string",
"null"
]
}
},
"required": [
"id",
"crb_id",
"pos_type",
"product_id",
"name",
"sku",
"barcode",
"total_quantity",
"pos_updated_date",
"pos_updated_date_local",
"gc_created_date",
"gc_updated_date",
"quantity",
"product"
],
"type": "object",
"additionalProperties": false
},
"FriendlyPosName": {
"type": "string",
"enum": [
"Alleaves",
"Dutchie",
"Dutchie Wholesale",
"Cova",
"Meadow",
"MJ Freeway",
"MJ Freeway Wholesale",
"Greenbits",
"GrowFlow",
"GrowFlow Wholesale",
"Portal42",
"Metrc S2S",
"Metrc S2S Wholesale",
"Flourish",
"Flourish Wholesale",
"Flowhub",
"BioTrack",
"BioTrack Wholesale",
"Treez",
"Blaze",
"Quickbooks",
"Sage Intacct",
"Canix",
"Brytemap",
"POSaBIT",
"Proteus420",
"IndicaOnline",
"Sweed",
"Weave",
"Jane",
"Manual Upload Wholesale",
"Cova Test Account",
"Leaf Logix Test Account",
"BioTrack Test Account",
"Mj Freeway Test Account",
"Treez IO Test Account",
"Green Bits Test Account",
"Manual Upload Retail",
"Not Configured",
"Unsupported",
"CRBMonitor",
"Plaid"
]
},
"InventoryByLocation": {
"properties": {
"id": {
"$ref": "#/$defs/UUID",
"description": "The primary key in the record"
},
"crb_id": {
"$ref": "#/$defs/UUID",
"description": "ID of the CRB"
},
"pos_type": {
"$ref": "#/$defs/FriendlyPosName",
"description": "The PosType the inventory record is sourced from"
},
"product_id": {
"$ref": "#/$defs/NullableUUID",
"description": "The id of the product from the pos system. Soon will be required and populated"
},
"name": {
"type": "string",
"description": "Name of the product"
},
"sku": {
"type": [
"string",
"null"
],
"description": "SKU for the product. May or may not be provided by the POS"
},
"barcode": {
"type": [
"string",
"null"
],
"description": "The tag from the track and trace system that uniquely identifies this product for tracking purposes. May or may not be provided by the POS"
},
"total_quantity": {
"$ref": "#/$defs/PositiveDouble",
"description": "Total inventory quantity on record across all locations"
},
"pos_updated_date": {
"$ref": "#/$defs/NullableUtcDateTime",
"description": "Timestamp reported by the pos for the last update to this record. May or may not be provided by the POS",
"type": [
"string",
"null"
],
"format": "date-time"
},
"pos_updated_date_local": {
"$ref": "#/$defs/NullableLocalDateTime",
"description": "CRB local timestamp reported by the pos for the last update to this record. May or may not be provided by the POS",
"type": [
"string",
"null"
],
"pattern": "^[2][0][0-9]{2}[-]([0][0-9]|[1][0-2])[-]([0-2][0-9]|[3][0-1]\\s([0-1][0-9]|[2][0-3])[:][0-5][0-9][:][0-5][0-9]([.][0-9]{1,3})?"
},
"gc_created_date": {
"$ref": "#/$defs/UtcDateTime",
"description": "Timestamp for when this inventory record was processed by green check",
"type": "string",
"format": "date-time"
},
"gc_updated_date": {
"$ref": "#/$defs/UtcDateTime",
"type": "string",
"format": "date-time"
},
"quantity": {
"$ref": "#/$defs/PositiveInteger",
"description": "Quantity in this location"
}
},
"required": [
"id",
"crb_id",
"pos_type",
"product_id",
"name",
"sku",
"barcode",
"total_quantity",
"pos_updated_date",
"pos_updated_date_local",
"gc_created_date",
"gc_updated_date",
"quantity"
],
"type": "object",
"additionalProperties": false
},
"NullableLocalDateTime": {
"type": [
"string",
"null"
],
"pattern": "^[2][0][0-9]{2}[-]([0][0-9]|[1][0-2])[-]([0-2][0-9]|[3][0-1])\\s([0-1][0-9]|[2][0-3])[:][0-5][0-9][:][0-5][0-9][.][0-9]{3}"
},
"NullablePositiveDouble": {
"type": [
"number",
"null"
],
"format": "double",
"minimum": 0
},
"NullablePositiveInteger": {
"type": [
"integer",
"null"
],
"format": "int32",
"minimum": 0
},
"NullableUUID": {
"type": "string",
"format": "uuid",
"pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$"
},
"NullableUtcDateTime": {
"type": [
"string",
"null"
],
"format": "date-time"
},
"PositiveDouble": {
"type": "number",
"format": "double",
"minimum": 0
},
"PositiveInteger": {
"type": "integer",
"format": "int32",
"minimum": 0
},
"Product": {
"properties": {
"crb_id": {
"$ref": "#/$defs/UUID",
"description": "ID of the CRB the product record belongs to."
},
"id": {
"$ref": "#/$defs/UUID",
"description": "The unique ID of this product record."
},
"pos_product_id": {
"type": "string",
"description": "Product ID in the POS system"
},
"pos_type": {
"$ref": "#/$defs/FriendlyPosName",
"description": "The POS system that this data is sourced from."
},
"name": {
"type": "string",
"description": "The name of the product."
},
"gc_product_category_name": {
"$ref": "#/$defs/ProductCategoryType",
"description": "The Green Check standardized category. Null if we are unable to standardize"
},
"pos_product_category_name": {
"type": [
"string",
"null"
],
"description": "Category name as given by the POS."
},
"pos_product_subcategory_name": {
"type": [
"string",
"null"
],
"description": "Subcategory name as given by the POS."
},
"pos_strain_name": {
"type": [
"string",
"null"
],
"description": "Strain name as given by the POS."
},
"pos_brand_name": {
"type": [
"string",
"null"
],
"description": "Brand name as given by the POS."
},
"medicated": {
"type": [
"boolean",
"null"
],
"description": "True or false if this is a THC having marijuana product."
},
"sku": {
"type": [
"string",
"null"
],
"description": "The SKU for the product."
},
"description": {
"type": [
"string",
"null"
],
"description": "Product description."
},
"gc_net_weight_grams": {
"$ref": "#/$defs/NullablePositiveDouble",
"description": "Our calculated net weight of the product in grams."
},
"pos_unit_of_measure": {
"type": [
"string",
"null"
],
"description": "The unit of measure of the product as sold by the POS (weight, quantity, etc)."
},
"price": {
"$ref": "#/$defs/NullablePositiveInteger",
"description": "Price of the product in cents. Can be null if priced by tiers only."
},
"unit_cost": {
"$ref": "#/$defs/NullablePositiveDouble",
"description": "Unit cost of the product in cents. Can be null if not supplied by the POS."
},
"pos_updated_date": {
"$ref": "#/$defs/NullableUtcDateTime",
"description": "The timestamp reported by the POS for the last update to this record in UTC.",
"type": [
"string",
"null"
],
"format": "date-time"
},
"pos_updated_date_local": {
"$ref": "#/$defs/NullableLocalDateTime",
"description": "The timestamp reported by the POS for the last update to this record in the CRB local time.",
"type": [
"string",
"null"
],
"pattern": "^[2][0][0-9]{2}[-]([0][0-9]|[1][0-2])[-]([0-2][0-9]|[3][0-1]\\s([0-1][0-9]|[2][0-3])[:][0-5][0-9][:][0-5][0-9]([.][0-9]{1,3})?"
},
"gc_created_date": {
"$ref": "#/$defs/UtcDateTime",
"description": "The timestamp of this record's insertion in UTC.",
"type": "string",
"format": "date-time"
},
"gc_updated_date": {
"$ref": "#/$defs/UtcDateTime",
"type": "string",
"format": "date-time"
},
"price_tiers": {
"items": {
"$ref": "#/$defs/ProductPriceTier"
},
"type": [
"array",
"null"
],
"description": "Price tiers applied to this product. May or may not be provided by the POS system."
},
"images": {
"items": {
"$ref": "#/$defs/ProductImage"
},
"type": [
"array",
"null"
],
"description": "A list of any images associated with this product."
}
},
"required": [
"crb_id",
"id",
"pos_product_id",
"pos_type",
"name",
"gc_product_category_name",
"pos_product_category_name",
"pos_product_subcategory_name",
"pos_strain_name",
"pos_brand_name",
"medicated",
"sku",
"description",
"gc_net_weight_grams",
"pos_unit_of_measure",
"price",
"unit_cost",
"pos_updated_date",
"pos_updated_date_local",
"gc_created_date",
"gc_updated_date",
"price_tiers",
"images"
],
"type": "object",
"additionalProperties": false
},
"ProductCategoryType": {
"type": [
"string",
"null"
],
"enum": [
"flower",
"oil/concentrate",
"edible",
"other",
"seedling",
"seed",
"liquid",
"solid",
"extract",
"plant",
"accessory",
"marijuana_product",
"topical",
"edible_liquid"
]
},
"ProductImage": {
"properties": {
"url": {
"type": "string",
"description": "URL to the image file"
},
"description": {
"type": [
"string",
"null"
],
"description": "Any description provided by the POS like file name, dimensions, product description"
}
},
"required": [
"url",
"description"
],
"type": "object",
"additionalProperties": false
},
"ProductPriceTier": {
"properties": {
"tier_name": {
"type": [
"string",
"null"
],
"description": "Price Tier name, if any"
},
"tier_price": {
"$ref": "#/$defs/PositiveInteger",
"description": "Price of the product price tier in cents"
},
"pos_tier_type": {
"type": "string",
"description": "The type of tier condition from the pos system (like quantity or volume)"
},
"pos_tier_type_condition_value": {
"type": "string",
"description": "The condition(s) required (based on the tier type) to apply this tier on the product"
},
"tier_valid_until_date": {
"$ref": "#/$defs/NullableUtcDateTime",
"description": "Datetime that this tier stops being valid, if applicable",
"type": [
"string",
"null"
],
"format": "date-time"
},
"tier_valid_until_date_local": {
"$ref": "#/$defs/NullableLocalDateTime",
"description": "Datetime that this tier stops being valid in CRB’s local timezone, if applicable",
"type": [
"string",
"null"
],
"pattern": "^[2][0][0-9]{2}[-]([0][0-9]|[1][0-2])[-]([0-2][0-9]|[3][0-1]\\s([0-1][0-9]|[2][0-3])[:][0-5][0-9][:][0-5][0-9]([.][0-9]{1,3})?"
}
},
"required": [
"tier_name",
"tier_price",
"pos_tier_type",
"pos_tier_type_condition_value",
"tier_valid_until_date",
"tier_valid_until_date_local"
],
"type": "object",
"additionalProperties": false
},
"UUID": {
"type": "string",
"format": "uuid",
"pattern": "^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$"
},
"UtcDateTime": {
"type": "string",
"format": "date-time"
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/green-check-verified-paged-location-inventory"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.