brevo Categories API

Manage product categories for organizing the catalog.

Operations 3

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /categories List product categories · Return all categories #
Ask an LLM
“Which product categories exist in my Brevo eCommerce catalog?”
“Can I fetch specific categories by ID?”
Tell an agent
List my product categories.
List categories with IDs {ids}.
POST /categories Create or update a product category · Create or update a category #
Ask an LLM
“How do I add a single product category to the catalog?”
“Will sending an existing category ID overwrite that category?”
Tell an agent
Upsert category {id} named {name}.
Save category {id} as {name} with page {url}.
POST /categories/batch Create or update categories in bulk · Create or update categories in batch #
Ask an LLM
“Can I sync many product categories in one call?”
“Is there a bulk upsert for my category tree?”
Tell an agent
Batch upsert these categories: {categories}.
Sync all of {categories} into the catalog at once.

Work with this as data

Every API 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 apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/brevo:brevo-categories-api"
All apis
curl "https://apis.io/api/v1/apis?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.

OpenAPI Specification

brevo-categories-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Brevo eCommerce Categories API
  description: The Brevo eCommerce API allows developers to sync product catalogs, categories, and order data with the Brevo platform. It provides endpoints for importing and managing products, organizing them into categories, and tracking customer purchase history. This data integration enables merchants to attribute revenue to marketing campaigns, trigger automated workflows based on purchase behavior, and build product recommendation segments for targeted messaging.
  version: '3.0'
  contact:
    name: Brevo Support
    url: https://help.brevo.com
  termsOfService: https://www.brevo.com/legal/termsofuse/
servers:
- url: https://api.brevo.com/v3
  description: Brevo Production API Server
security:
- apiKeyAuth: []
tags:
- name: Categories
  description: Manage product categories for organizing the catalog.
paths:
  /categories:
    get:
      operationId: listCategories
      summary: Return all categories
      description: Retrieves all product categories in the eCommerce catalog.
      tags:
      - Categories
      parameters:
      - $ref: '#/components/parameters/limitParam'
      - $ref: '#/components/parameters/offsetParam'
      - name: ids
        in: query
        description: Comma-separated list of category IDs to filter by.
        schema:
          type: string
      responses:
        '200':
          description: Categories retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CategoryList'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
    post:
      operationId: createUpdateCategory
      summary: Create or update a category
      description: Creates a new product category or updates an existing one. If a category with the same ID exists, it will be updated.
      tags:
      - Categories
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateUpdateCategory'
      responses:
        '201':
          description: Category created or updated successfully
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /categories/batch:
    post:
      operationId: batchCreateUpdateCategories
      summary: Create or update categories in batch
      description: Creates or updates multiple product categories in a single API call.
      tags:
      - Categories
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - categories
              properties:
                categories:
                  type: array
                  description: List of categories to create or update.
                  items:
                    $ref: '#/components/schemas/CreateUpdateCategory'
                  maxItems: 100
      responses:
        '201':
          description: Categories batch processed successfully
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  parameters:
    limitParam:
      name: limit
      in: query
      description: Maximum number of results to return per request.
      schema:
        type: integer
        format: int64
        default: 50
    offsetParam:
      name: offset
      in: query
      description: Number of results to skip for pagination.
      schema:
        type: integer
        format: int64
        default: 0
  schemas:
    Category:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the category.
        name:
          type: string
          description: Name of the category.
        url:
          type: string
          format: uri
          description: URL of the category page.
        createdAt:
          type: string
          format: date-time
          description: UTC date-time when the category was created.
        modifiedAt:
          type: string
          format: date-time
          description: UTC date-time when the category was last modified.
    ErrorResponse:
      type: object
      properties:
        code:
          type: string
          description: Error code identifying the type of error.
        message:
          type: string
          description: Human-readable description of the error.
    CreateUpdateCategory:
      type: object
      required:
      - id
      - name
      properties:
        id:
          type: string
          description: Unique identifier for the category.
        name:
          type: string
          description: Name of the category.
        url:
          type: string
          format: uri
          description: URL of the category page.
    CategoryList:
      type: object
      properties:
        count:
          type: integer
          format: int64
          description: Total number of categories.
        categories:
          type: array
          description: List of category records.
          items:
            $ref: '#/components/schemas/Category'
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: api-key
      description: Brevo API key passed in the api-key request header for authentication.
externalDocs:
  description: Brevo eCommerce Documentation
  url: https://developers.brevo.com/docs/import-your-products