---
updatedAt: 2026-09-02T08:40:17.000Z
agentTools:
  projectIndex: https://developer.weedmaps.com/v2025.01/llms.txt
---

# Taxonomy

Associating a menu item to at least one category is and continues to be a requirement for managing menu items. What's new in this API version, however, is the ability to manage the strain and tags associated with that menu item as well.

There are two ways you can do this. The first of which is to provide the singular `strain_id` (received from our strains endpoint) and/or list of `tag_ids` (received from our tags endpoint). You should go with this option if you want full control of what tags and strain gets assigned.

Your other option would be to send a `strain_name` and or list of `tag_names` (array of strings) and we'll do the lookups for you. We're pretty good at finding matches if they exist and we'll ignore any value/s that don't exist in our system. So this this a good option if don't need that fine-grained control.

We also expanded our cannabinoid support and are now accepting terpene measurements. These work slightly differently than how they did in the previous version but still don't require you to know the exact ID for a given cannabinoid or terpene.

**Previous Version**

```json
{
  "cannabinoids": {
    "cbd": {
      "percentage": 1.2
    },
    "thc": {
      "milligrams": 1000,
      "percentage": 87.4
    }
  }
```

**This Version**

```json
{
  "cannabinoids": [
    {
      "slug": "cbd",
      "percent": {
        "min": 1.2,
        "max": 1.2
      }
    },
    {
      "slug": "thca",
      "milligrams": {
        "min": 997,
        "max": 1000
      },
      "percent": {
        "min": 87.4,
        "max": 87.4
      }
    }
  ],
  "terpenes": [
    {
      "slug": "limonene",
      "percent": {
        "min": 2,
        "max": 2.5
      }
    }
  ]
}
```

As you can see, the `slug` field for each cannabinoid or terpene can be an all-lowercase slug that represents that measurement. You could alternatively provide us with our actual ID in that field if that's what you prefer. You can then send as many measurements as you have on file and we'll try and process each one we can.