Lemon Squeezy Stores API

The Stores API from Lemon Squeezy — 2 operation(s) for stores.

Documentation

Specifications

Other Resources

OpenAPI Specification

lemonsqueezy-stores-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Lemon Squeezy Checkouts Stores API
  description: The Lemon Squeezy API is a REST API based on the JSON:API specification. It exposes the resources of a Lemon Squeezy merchant-of-record account - stores, products, variants, prices, files, orders, order items, customers, subscriptions, subscription invoices, subscription items, usage records, license keys, license key instances, checkouts, discounts, discount redemptions, and webhooks. All requests use Bearer API key authentication and must send the Accept and Content-Type headers application/vnd.api+json.
  termsOfService: https://www.lemonsqueezy.com/terms
  contact:
    name: Lemon Squeezy Support
    url: https://docs.lemonsqueezy.com
  version: v1
servers:
- url: https://api.lemonsqueezy.com/v1
security:
- api_key: []
tags:
- name: Stores
paths:
  /stores:
    get:
      operationId: listStores
      tags:
      - Stores
      summary: List all stores
      description: Returns a paginated list of stores connected to the account.
      parameters:
      - $ref: '#/components/parameters/PageNumber'
      - $ref: '#/components/parameters/PageSize'
      responses:
        '200':
          description: A list of stores.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/JsonApiCollection'
  /stores/{id}:
    get:
      operationId: retrieveStore
      tags:
      - Stores
      summary: Retrieve a store
      parameters:
      - $ref: '#/components/parameters/ResourceId'
      responses:
        '200':
          description: A store object.
          content:
            application/vnd.api+json:
              schema:
                $ref: '#/components/schemas/JsonApiResource'
components:
  schemas:
    JsonApiResource:
      type: object
      description: A JSON:API document containing a single resource object.
      properties:
        jsonapi:
          type: object
          properties:
            version:
              type: string
        data:
          $ref: '#/components/schemas/JsonApiResourceObject'
        links:
          type: object
          additionalProperties:
            type: string
    JsonApiResourceObject:
      type: object
      description: A single JSON:API resource object.
      properties:
        type:
          type: string
          description: The resource type, e.g. stores, products, subscriptions.
        id:
          type: string
          description: The unique resource ID.
        attributes:
          type: object
          description: The resource's attributes.
          additionalProperties: true
        relationships:
          type: object
          description: Related resources.
          additionalProperties: true
        links:
          type: object
          additionalProperties:
            type: string
    JsonApiCollection:
      type: object
      description: A JSON:API document containing a collection of resource objects.
      properties:
        jsonapi:
          type: object
          properties:
            version:
              type: string
        data:
          type: array
          items:
            $ref: '#/components/schemas/JsonApiResourceObject'
        links:
          type: object
          description: Pagination links (first, last, prev, next).
          additionalProperties:
            type: string
        meta:
          type: object
          properties:
            page:
              type: object
              properties:
                currentPage:
                  type: integer
                from:
                  type: integer
                lastPage:
                  type: integer
                perPage:
                  type: integer
                to:
                  type: integer
                total:
                  type: integer
  parameters:
    ResourceId:
      name: id
      in: path
      required: true
      description: The resource ID.
      schema:
        type: string
    PageNumber:
      name: page[number]
      in: query
      description: The page of results to return.
      schema:
        type: integer
        minimum: 1
    PageSize:
      name: page[size]
      in: query
      description: The number of records to return per page (max 100).
      schema:
        type: integer
        minimum: 1
        maximum: 100
  securitySchemes:
    api_key:
      type: http
      scheme: bearer
      bearerFormat: apiKey
      description: Bearer authentication using a Lemon Squeezy API key. Requests must also send Accept and Content-Type headers of application/vnd.api+json.