Smartrr Plans API

Purchasables, selling plans, selling plan groups and subscription programs - the products and the terms they are sold on.

OpenAPI Specification

smartrr-plans-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Smartrr Vendor Bills Plans API
  description: The Smartrr Vendor API is the programmatic surface behind Smartrr, a subscription and loyalty platform for Shopify DTC brands. It lets a merchant (vendor) read and manage the subscriptions ("purchase states") their customers hold, the customers (subscribers) themselves, the orders and bills those subscriptions generate, and the subscription programs / selling plans that products are sold on. All requests are made against https://api.smartrr.com and are authenticated with a per-organization API access token generated in the Smartrr admin under the Integrations tab and sent in the x-smartrr-access-token header. This description is authored by API Evangelist from Smartrr's public OpenAPI document served at https://api.smartrr.com/docs/spec.json (rendered at https://api.smartrr.com/docs/redoc/); it is a curated subset of the full 116-operation surface covering the core Subscriptions, Subscribers, Orders, Bills, Plans, and Webhooks resources. Endpoint paths and methods are taken directly from that live specification; request and response bodies are summarized.
  version: 1.0.0
  contact:
    name: Smartrr
    url: https://smartrr.com
servers:
- url: https://api.smartrr.com
  description: Smartrr production
security:
- smartrrAccessToken: []
tags:
- name: Plans
  description: Purchasables, selling plans, selling plan groups and subscription programs - the products and the terms they are sold on.
paths:
  /vendor/purchasable:
    get:
      tags:
      - Plans
      summary: Get Purchasables
      description: List purchasable products available for subscription.
      operationId: getPurchasables
      responses:
        '200':
          description: A list of purchasables.
    put:
      tags:
      - Plans
      summary: Update Purchasable
      operationId: updatePurchasable
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                purchasable:
                  type: object
      responses:
        '200':
          description: The updated purchasable.
  /vendor/purchasable/{id}:
    get:
      tags:
      - Plans
      summary: Get Purchasable by ID
      operationId: getPurchasableById
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A single purchasable.
  /vendor/purchasable-collection:
    get:
      tags:
      - Plans
      summary: Get Purchasable Collection
      operationId: getPurchasableCollection
      responses:
        '200':
          description: A list of purchasable collections.
  /vendor/selling-plan-group:
    get:
      tags:
      - Plans
      summary: Get Selling Plan Groups
      operationId: getSellingPlanGroups
      responses:
        '200':
          description: The shop's selling plan groups.
  /vendor/selling-plan-configs:
    get:
      tags:
      - Plans
      summary: Get all programs for a shop
      operationId: getSellingPlanConfigs
      responses:
        '200':
          description: The shop's subscription programs.
components:
  securitySchemes:
    smartrrAccessToken:
      type: apiKey
      in: header
      name: x-smartrr-access-token
      description: Per-organization API access token generated in the Smartrr admin under the Integrations tab (Add Key). Sent on every request in the x-smartrr-access-token header.