Tidio Products API

Product catalog for Lyro AI recommendations

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/tidio-products-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 email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

tidio-products-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Tidio OpenAPI (REST) Contacts Products API
  description: 'REST API for managing contacts, conversations, tickets, operators, and Lyro AI data sources. Requires Plus or Premium plan for full access; Lyro AI plan grants access to Lyro-specific endpoints. Authentication uses paired X-Tidio-Openapi-Client-Id and X-Tidio-Openapi-Client-Secret headers. Rate limits range from 10 requests per minute (entry plans) to 120 requests per minute (Premium).

    '
  version: '1'
  contact:
    name: Tidio Developer Support
    url: https://developers.tidio.com/support
  termsOfService: https://www.tidio.com/terms/
  license:
    name: Proprietary
    url: https://www.tidio.com/terms/
servers:
- url: https://api.tidio.co
  description: Tidio REST API
security:
- clientId: []
  clientSecret: []
tags:
- name: Products
  description: Product catalog for Lyro AI recommendations
paths:
  /products/batch:
    put:
      operationId: upsertProducts
      tags:
      - Products
      summary: Upsert products
      description: 'Upload or update up to 100 products for Lyro AI recommendations using batch processing. Products are processed all-or-nothing. Processing is asynchronous.

        '
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - products
              properties:
                products:
                  type: array
                  minItems: 1
                  maxItems: 100
                  items:
                    $ref: '#/components/schemas/ProductUpsert'
      responses:
        '204':
          description: Products accepted for processing
        '400':
          description: Bad request
        '409':
          description: Products import already initialized from e-commerce platform
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '422':
          description: Validation error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
  /products/{productId}:
    delete:
      operationId: deleteProduct
      tags:
      - Products
      summary: Delete product
      description: 'Permanently removes a product from Lyro AI recommendations. Deletion is irreversible and processed asynchronously.

        '
      parameters:
      - name: productId
        in: path
        required: true
        schema:
          type: integer
      responses:
        '204':
          description: Product deletion accepted
        '404':
          description: Product not found
components:
  schemas:
    ProductUpsert:
      type: object
      required:
      - id
      - url
      - title
      - description
      - default_currency
      - status
      - updated_at
      properties:
        id:
          type: integer
        url:
          type: string
          maxLength: 512
          format: uri
        image_url:
          type: string
          maxLength: 512
          format: uri
        title:
          type: string
          maxLength: 512
        description:
          type: string
        vendor:
          type: string
          maxLength: 255
        product_type:
          type: string
          maxLength: 255
        sku:
          type: string
          maxLength: 255
        barcode:
          type: string
          maxLength: 255
        default_currency:
          type: string
        status:
          type: string
          enum:
          - visible
          - hidden
        price:
          type: number
          nullable: true
        features:
          type: object
          additionalProperties:
            type: string
            maxLength: 255
        updated_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp (e.g., 2023-06-01T10:00:00+00:00).
    ErrorItem:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/ErrorItem'
  securitySchemes:
    clientId:
      type: apiKey
      in: header
      name: X-Tidio-Openapi-Client-Id
    clientSecret:
      type: apiKey
      in: header
      name: X-Tidio-Openapi-Client-Secret