The Smoke Reports database hosts information on over 16,000 strains, extracts, edibles, products, producers, seed companies, and dispensaries. Properly organizing cannabis information has been a difficult task which has resulted in the most comprehensive cannabis API available for developers, businesses, and educators.


Check out our documentation to get a more in-depth look at the data available through the API. You can even begin making requests directly within the documentation. If you would like a higher rate limit for developing, you can reach out through our API page. The following is an overview of how the UCPC works, and the different information available for all things cannabis.


Universal Cannabis Product Code

The backbone of the Smoke Reports database is the Universal Cannabis Product Code, or UCPC for short. Each UCPC is a 25-digit sequence that designates the components that make each  cannabis product unique. In the example below, we will dissect each component:

  1. the seed company who originally created the genetics for the strain used in this product
  2. the strain identifier for the strain used in this product
  3. the producer who manufactured this product
  4. the product
  5. the batch of creation

The UCPC allows for a new level of cannabis accountability. Producers can better represent their edibles, extracts, and topicals by including lab tests, photos, and product details. With access to this higher level of information, consumers are better able to research the cannabis products available. Smoke Reports believes that cataloguing data for specific cannabis items gives educators and businesses an equal opportunity to provide the community with accurate information.

UCPC Breakdown



To illustrate how the UCPC system works, we have chosen the code for a disposable Jack Herer vaporizer from the producer Bumblebee:


This product can be reached from the following link:

You will then be redirect to the correct page in Smoke Reports:

The components that go into the production of a cannabis product each have their own identifier, so that information on an individual component can be easily accessed.

Each product is catalogued as: xxxxx-xxxxx-xxxxx-xxxxx-xxxxx
Which denotes: seed company – strain – producer – product – batch
Example product: VUJCJ-4TYMG-UY9V7-Q7UL3-00000

UCPC Component UCPC Resolves to
Seed Company VUJCJ4TYMGUY9V7Q7UL300000 Sensi Seeds: VUJCJ00000000000000000000
Strain VUJCJ4TYMGUY9V7Q7UL300000 Jack Herer by Sensi Seeds: VUJCJ4TYMGUY9V7Q7UL300000
Producer VUJCJ4TYMGUY9V7Q7UL300000 Bumblebee: 0000000000UY9V700000000000
Product VUJCJ4TYMGUY9V7Q7UL300000 Sensi Seeds Jack Herer Disposable Vaporizer Cartridge by BumblebeeVUJCJ4TYMGUY9V7Q7UL300000
Batch ID VUJCJ4TYMGUY9V7Q7UL300000 N/A – This is the parent listing for the product. This product does not have a batch, but information can be stored to account for multiple batches of the same product.

Information Available through the Smoke Reports API

The Smoke Reports API currently has 52 endpoints that provide information on specific items, dispensary menus, and production companies. Smoke Reports hosts information linking the different variations of strains, extracts, edibles, products, producers, dispensaries, and seed companies. Let’s take a look at the different objects available through the Smoke Reports API:


Cannabis Strains

Cannabis strains carry with them a lot of information, like their name, a seed company, peer reviews, and genetic lineage including parents and offspring. This is the API response when you pull information for the strain Jack Herer by Sensi Seeds (UCPC: VUJCJ4TYMG000000000000000):

strain example

Cannabis Extracts

The API offers a lot of information for extracts, including the name of the extract, the producer who created it, the type of extract (vaporizer, shatter, water hash, kief, etc), the strain used, as well as potency, lab test PDFs, and reviews. Here is the information returned when searching for the Jack Herer disposable vaporizer by the producer Bumblebee from the earlier example (UCPC: VUJCJ4TYMGUY9V7Q7UL300000):

Screen Shot 2016-06-14 at 12.50.07 PM


Cannabis Edibles

Edibles covers a wide variety of cannabis items, so Smoke Reports considers cannabis edibles as items consumed orally. Some of the many types of edible forms we recognize are baked goods, candy, treats, chocolates, snacks, beverages, pills, and tinctures.  Smoke Reports links edible names with the specific producer, product type, strain, lab test, cannabinoid potencies, and reviews. here we look at the Girl Scout Cookies and Cream Soda from Kushtown. (UCPC: 4KXM32V9YFC3G2EUNWP400000):

Edibles API Call

Cannabis Products

There are many different cannabis products that appear on dispensary shelves. Smoke Reports considered cannabis products to be anything that is not consumed like edibles or extracts. Some categories of cannabis products are bath, skin care, topical, and pre-rolls. This is the information available for the Topical Relief from Absorb CBD: (UCPC: 9XVU7XPL4JQQLU2M9A9G00000):

Screen Shot 2015-08-03 at 11.13.40 AM

Cannabis Producers

Cannabis producers are the companies that create all of our favorite cannabis consumables: flowers, extracts, edibles, and other products. The cannabis community thrives when we are able to make real connections with the people manufacturing our products. Smoke Reports provides data on the items offered by each producer, allowing developers to display that information across other web applications. Here is the basic information provided when you make a call for the cannabis producer Kiva (UCPC: 0000000000L6M7E0000000000)

Producer API Call

Cannabis Dispensaries

Smoke Reports refers to all cannabis retailers as dispensaries in the API. We host information on dispensaries and delivery services, and information on both types can be accessed through the dispensary endpoints. Smoke Reports hosts dispensary information like location, contact info, patient reviews, and all of the products they are currently offering. Here we look at Grass Roots, a popular San Francisco dispensary.

Dispensary API Call

Dispensary Menus and Product Pricing


For cannabis consumers to have access to product availability, dispensaries need to be able to easily update and distribute their menus online. The Smoke Reports API allow for dispensaries and other product-locating services to display the prices of products based on location. The API responds to menu item data requests with a paginated list of all of the items offered by that retailer.

Menu item API Call

Cannabis Seed Companies and Breeders

Cannabis seed companies create the variety of strains available for growing and breeding. The Smoke Reports API offers developers access to information on each particular seed company, and all of the genetic variations that they create.

Seed Company API Call

Getting Started with the Smoke Reports API

The Smoke Reports API is built so that developers can organize cannabis information without having to collect their own data from scratch. Here are the steps to getting started:

  1. Request an API key: This can be done by creating a free Smoke Reports account, and then requesting an API key through the URL:
  2. Read over our Terms of Service. They are designed so that everyone can use this data with respect and courtesy.
  3. Review proper use of API request and response headers. This will make building with our API a much smoother experience.
  4. Make sure you understand how the UCPC works and review the different endpoints available through the API.
  5. Begin building! If you need a higher rate limit, please send us an email through our contact page.

Thank you so much for taking the time to look over the API documentation. Here at Smoke Reports, we want everyone to have access to the best possible cannabis information. If you have any feedback on how we can improve the API, please do not hesitate to reach out.


For the most up to date info on Smoke Reports, follow us on Twitter @smokereports or like us on our Facebook page. If you would like to submit feedback or suggestions for the Smoke Reports team, please join the discussion in the comments section below, or through our social media links.