Ecwid by Lightspeed Products API

The Products API from Ecwid by Lightspeed — 2 operation(s) for products.

OpenAPI Specification

ecwid-products-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Ecwid REST Categories Products API
  description: 'JSON REST API for managing Ecwid by Lightspeed store data including

    products, categories, orders, customers, discount coupons, payment and

    shipping methods, and store profile. Requests are authenticated with

    OAuth 2.0 access tokens (private for write access, public for read-only)

    provided in the Authorization header as a Bearer token. This specification

    is a best-effort, documentation-derived description and may omit fields.

    '
  version: 3.0.0
  contact:
    name: Ecwid by Lightspeed
    url: https://api-docs.ecwid.com/reference/overview
servers:
- url: https://app.ecwid.com/api/v3/{storeId}
  description: Store-scoped REST root
  variables:
    storeId:
      default: '0'
      description: Your Ecwid store identifier.
security:
- BearerAuth: []
tags:
- name: Products
paths:
  /products:
    get:
      summary: Search products
      operationId: searchProducts
      parameters:
      - in: query
        name: keyword
        schema:
          type: string
      - in: query
        name: limit
        schema:
          type: integer
          maximum: 100
      - in: query
        name: offset
        schema:
          type: integer
      - in: query
        name: category
        schema:
          type: integer
      - in: query
        name: enabled
        schema:
          type: boolean
      responses:
        '200':
          description: Products page
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductsPage'
      tags:
      - Products
    post:
      summary: Add a product
      operationId: createProduct
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Product'
      responses:
        '200':
          description: Product created
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
      tags:
      - Products
  /products/{productId}:
    parameters:
    - $ref: '#/components/parameters/ProductId'
    get:
      summary: Get a product
      operationId: getProduct
      responses:
        '200':
          description: Product
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
      tags:
      - Products
    put:
      summary: Update a product
      operationId: updateProduct
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Product'
      responses:
        '200':
          description: Updated
      tags:
      - Products
    delete:
      summary: Delete a product
      operationId: deleteProduct
      responses:
        '200':
          description: Deleted
      tags:
      - Products
components:
  schemas:
    ProductsPage:
      type: object
      properties:
        total:
          type: integer
        count:
          type: integer
        offset:
          type: integer
        limit:
          type: integer
        items:
          type: array
          items:
            $ref: '#/components/schemas/Product'
    Product:
      type: object
      additionalProperties: true
      properties:
        id:
          type: integer
        sku:
          type: string
        name:
          type: string
        price:
          type: number
        enabled:
          type: boolean
        quantity:
          type: integer
        unlimited:
          type: boolean
        categoryIds:
          type: array
          items:
            type: integer
        description:
          type: string
  parameters:
    ProductId:
      in: path
      name: productId
      required: true
      schema:
        type: integer
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: OAuth 2.0 access token (private or public) used as a Bearer token.