Otreeba Products API
Products not meant for consumption infused with cannabis extracts or flowers.
Products not meant for consumption infused with cannabis extracts or flowers.
openapi: 3.0.1
info:
title: Otreeba Products API
description: '
Open Cannabis Data for Your Technology Otreeba comes from the word
"abierto" which means "open." We offer standardized cannabis data and
normalization for cannabis seed companies, strains, brands, products,
batches, retailers, and studies through a REST API.'
termsOfService: https://otreeba.com/terms/
contact:
email: api@otreeba.com
license:
name: Attribution 4.0 International (CC BY 4.0)
url: https://creativecommons.org/licenses/by/4.0/
version: 1.0.0
servers:
- url: https://api.otreeba.com/v1
security:
- api_key: []
tags:
- name: Products
description: Products not meant for consumption infused with cannabis extracts or flowers.
paths:
/brands/{ocpc}/products:
get:
tags:
- Products
summary: Get a list of all current products for the given brand.
description: Returns a paginated list of products.
operationId: getBrandProducts
parameters:
- name: ocpc
in: path
description: OCPC of the brand to list products for.
required: true
schema:
type: string
- name: page
in: query
description: Page to be returned.
schema:
type: integer
- name: count
in: query
description: The number of items to return. Default 10. Max 50.
schema:
type: integer
default: 10
- name: sort
in: query
description: How to sort the items.
schema:
type: string
default: -createdAt
enum:
- -createdAt
- createdAt
- -updatedAt
- updatedAt
- -name
- name
responses:
'200':
description: Successful operation.
content:
application/json:
schema:
type: object
properties:
data:
type: object
description: Gets the current list of Products for a Brand.
meta:
$ref: '#/components/schemas/Meta'
'400':
description: Invalid OCPC supplied.
content: {}
'401':
description: Unauthorized action.
content: {}
'404':
description: Brand not found.
content: {}
/products:
get:
tags:
- Products
summary: Get a list of all current products.
description: Returns a paginated list of products.
operationId: getProducts
parameters:
- name: page
in: query
description: Page to be returned.
schema:
type: integer
- name: count
in: query
description: The number of items to return. Default 10. Max 50.
schema:
type: integer
default: 10
- name: sort
in: query
description: How to sort the items.
schema:
type: string
default: -createdAt
enum:
- -createdAt
- createdAt
- -updatedAt
- updatedAt
- -name
- name
responses:
'200':
description: Successful operation.
content:
application/json:
schema:
type: object
properties:
data:
type: object
description: Gets the current list of Products.
meta:
$ref: '#/components/schemas/Meta'
'400':
description: Invalid OCPC supplied.
content: {}
'401':
description: Unauthorized action.
content: {}
'404':
description: Product not found.
content: {}
/products/{ocpc}:
get:
tags:
- Products
summary: Find product by Open Cannabis Product Code (OCPC).
description: Returns a single product.
operationId: getProductByOcpc
parameters:
- name: ocpc
in: path
description: OCPC of the product to return.
required: true
schema:
type: string
responses:
'200':
description: Successful operation.
content:
application/json:
schema:
$ref: '#/components/schemas/Product'
'400':
description: Invalid OCPC supplied.
content: {}
'401':
description: Unauthorized action.
content: {}
'404':
description: Product not found.
content: {}
components:
schemas:
Meta:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
xml:
name: Meta
Product:
required:
- name
type: object
properties:
name:
type: string
description: Name of the product.
example: X-Pen
ocpc:
type: string
description: Open Cannabis Product Code for the product.
example: 0000000000YPLU3Z2YUM00000
brand:
type: object
properties: {}
description: Name and Open Cannabis Product Code of the brand that created this product.
example:
name: Elixinol
ocpc: 0000000000YPLU30000000000
type:
type: string
description: Type of product.
example: Oil Applicator
strain:
type: object
properties: {}
description: Name and Open Cannabis Product Code of the strain for this product.
example:
name: Confidential Cheese
ocpc: TTUYNUF3TP000000000000000
description:
type: string
description: Description of the product.
qr:
type: string
description: URL for QR that leads to page on Cannabis Reports.
example: https://www.cannabisreports.com/product-reports/qr-code/elixinol/x-pen.png
url:
type: string
description: URL for the product on Cannabis Reports.
example: https://www.cannabisreports.com/product-reports/elixinol/x-pen
image:
type: string
description: URL for the main photo of the product.
example: https://www.cannabisreports.com/images/products/f/full_f592eb462df530c23a98d0fb6330fc895c8cfe18.jpg
labTest:
type: string
description: URL for the PDF containing lab testing information for this product.
example: https://www.cannabisreports.com/lab-tests/1/140c73d2606fded84e6a14ca07aed77eb1e73827.pdf
thc:
type: string
description: THC measurement for this product.
example: 0mg
cbd:
type: string
description: CBD measurement for this product.
example: 1,000mg
cannabis:
type: string
description: Cannabis measurement for this product.
example: ''
hashOil:
type: string
description: Hash oil measurement for this product.
example: ''
createdAt:
type: string
description: Date and time record was created, UTC.
format: date-time
updatedAt:
type: string
description: Date and time record was updated, UTC.
format: date-time
xml:
name: Product
Pagination:
type: object
properties:
total:
type: integer
description: Total number of results available.
example: 64
count:
type: integer
description: Number of results to return. Default 10. Max 50.
example: 10
per_page:
type: integer
description: Number of results per page.
example: 10
current_page:
type: integer
description: Page of results.
example: 1
total_pages:
type: integer
description: Total number of pages of results.
example: 1
links:
type: object
properties: {}
description: Links to the previous and/or next pages of results.
example:
previous: https://api.otreeba.com/v1/seed-companies/VUJCJ00000000000000000000/strains?page=1
next: https://api.otreeba.com/v1/seed-companies/VUJCJ00000000000000000000/strains?page=3
xml:
name: Pagination
securitySchemes:
api_key:
type: apiKey
name: X-API-Key
in: header
externalDocs:
description: Find out more about Otreeba
url: https://otreeba.com
x-original-swagger-version: '2.0'