Octobat Coupons API

Discount coupons for invoices and subscriptions.

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/octobat-coupons-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

octobat-coupons-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Octobat Coupons API
  description: 'Octobat is a billing, invoicing, and tax-compliance platform for online businesses. This OpenAPI document describes the public REST API at base URL https://apiv2.octobat.com. The API is Stripe-style: resource-oriented, form or JSON request bodies, and HTTP Basic authentication using your secret key as the username with an empty password (curl: -u sk_live_xxx:). Test-mode keys (sk_test_) and live-mode keys (sk_live_) select the environment.


    Endpoint provenance: paths marked "confirmed" are demonstrated directly in Octobat''s own documentation (register-transactions and tax-calculation guides). The remaining CRUD and action paths are modeled from Octobat''s official Ruby SDK (github.com/0ctobat/octobat-ruby), which derives resource URLs as the snake_cased, pluralized class name and uses POST to create, PATCH to update, GET to retrieve/list, and DELETE to remove. Request and response schemas are representative, not exhaustive; consult the live API reference at https://v2apidoc.octobat.com for full field-level detail.


    Operating status: Octobat was acquired by Mirakl in November 2021. The standalone marketing site now redirects to mirakl.com; docs.octobat.com and apiv2.octobat.com remain available to existing integrators.'
  version: '2.0'
  contact:
    name: Octobat
    url: https://docs.octobat.com
    email: support@octobat.com
servers:
- url: https://apiv2.octobat.com
  description: Octobat API v2 (production)
security:
- basicAuth: []
tags:
- name: Coupons
  description: Discount coupons for invoices and subscriptions.
paths:
  /coupons:
    get:
      operationId: listCoupons
      tags:
      - Coupons
      summary: List coupons
      responses:
        '200':
          description: A list of coupons.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CouponList'
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createCoupon
      tags:
      - Coupons
      summary: Create a coupon
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponCreate'
      responses:
        '200':
          description: The created coupon.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /coupons/{id}:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    get:
      operationId: retrieveCoupon
      tags:
      - Coupons
      summary: Retrieve a coupon
      responses:
        '200':
          description: The requested coupon.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
        '401':
          $ref: '#/components/responses/Unauthorized'
    patch:
      operationId: updateCoupon
      tags:
      - Coupons
      summary: Update a coupon
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CouponCreate'
      responses:
        '200':
          description: The updated coupon.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
        '401':
          $ref: '#/components/responses/Unauthorized'
    delete:
      operationId: deleteCoupon
      tags:
      - Coupons
      summary: Delete a coupon
      responses:
        '200':
          description: The coupon was deleted.
        '401':
          $ref: '#/components/responses/Unauthorized'
  /coupons/{id}/activate:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    patch:
      operationId: activateCoupon
      tags:
      - Coupons
      summary: Activate a coupon
      responses:
        '200':
          description: The activated coupon.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /coupons/{id}/unactivate:
    parameters:
    - name: id
      in: path
      required: true
      schema:
        type: string
    patch:
      operationId: deactivateCoupon
      tags:
      - Coupons
      summary: Deactivate a coupon
      responses:
        '200':
          description: The deactivated coupon.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Coupon'
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  schemas:
    Coupon:
      allOf:
      - $ref: '#/components/schemas/CouponCreate'
      - type: object
        properties:
          id:
            type: string
          object:
            type: string
            example: coupon
          active:
            type: boolean
    CouponCreate:
      type: object
      properties:
        code:
          type: string
        percent_off:
          type: number
        amount_off:
          type: integer
        currency:
          type: string
    CouponList:
      type: object
      properties:
        object:
          type: string
          example: list
        data:
          type: array
          items:
            $ref: '#/components/schemas/Coupon'
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              example: authentication_error
            message:
              type: string
  responses:
    Unauthorized:
      description: Authentication failed - missing or invalid secret key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: 'HTTP Basic authentication. Use your Octobat secret key as the username and leave the password empty (curl: -u sk_live_xxx:). Use sk_test_ keys for test mode and sk_live_ keys for live mode.'