Optimizely Subscriptions API

The Subscriptions API from Optimizely — 9 operation(s) for subscriptions.

Operations 13

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /api/v1/admin/Subscriptions List product subscriptions · Returns the EntitySet Subscriptions #
Ask an LLM
“Which customers have recurring product subscriptions set up?”
“Can I filter subscriptions by customer or website?”
Tell an agent
List all subscriptions.
Show subscriptions matching {filter}.
POST /api/v1/admin/Subscriptions Create a recurring product subscription · Post a new entity to EntitySet Subscriptions #
Ask an LLM
“How do I set up a monthly repeat order for a customer?”
“Can a subscription only ship in certain months of the year?”
Tell an agent
Create a subscription for customer {customerId} on product {productId} every {cyclePeriod}.
Set up a {cyclePeriod} subscription that runs {totalCycles} cycles starting {activateOn}.
GET /api/v1/admin/Subscriptions({id}) Get a subscription · Returns the entity with the key from Subscriptions #
Ask an LLM
“What cycle and ship-to does a given subscription use?”
“Can I look up one subscription by its ID?”
Tell an agent
Get subscription {id}.
Show the schedule for subscription {id}.
PUT /api/v1/admin/Subscriptions({id}) Replace a subscription entirely · Replace entity in EntitySet Subscriptions #
Ask an LLM
“How do I overwrite every field on a subscription record?”
“Can I fully replace a subscription's settings in one request?”
Tell an agent
Replace subscription {id} with cycle period {cyclePeriod}.
Overwrite all fields of subscription {id}, cycle {cyclePeriod}, {periodsPerCycle} periods per cycle.
DELETE /api/v1/admin/Subscriptions({id}) Delete a subscription · Delete entity in EntitySet Subscriptions #
Ask an LLM
“How do I permanently remove one subscription?”
“Does deleting a subscription support an If-Match concurrency check?”
Tell an agent destructive · confirm first
Delete subscription {id}.
Remove subscription {id} if its ETag is {ifMatch}.
PATCH /api/v1/admin/Subscriptions({id}) Update some fields of a subscription · Update entity in EntitySet Subscriptions #
Ask an LLM
“How do I change when a subscription deactivates?”
“Can I switch a subscription to a different ship-to without resending everything?”
Tell an agent
Set deactivate date {deactivateOn} on subscription {id}, cycle {cyclePeriod}.
Change ship-to on subscription {id} to {shipToId} keeping cycle {cyclePeriod}.
GET /api/v1/admin/Subscriptions/Default.Default() Get default values for a new subscription · Call operation Default #
Ask an LLM
“What defaults does a new subscription start with?”
“Is there a blank subscription template to fill in?”
Tell an agent
Get the default field values for a new subscription.
Show a blank subscription record.
POST /api/v1/admin/Subscriptions/Default.archive Archive subscriptions via the archive action · Call operation archive #
Ask an LLM
“How do I archive subscriptions using the POST archive action?”
“Can I archive several subscriptions without deleting them?”
Tell an agent
Archive subscriptions {ids} with the archive action.
Run the POST archive action on subscriptions {ids}.
DELETE /api/v1/admin/subscriptions/archive Archive subscriptions via the DELETE route · Subscriptions archive route #
Ask an LLM
“Is there a DELETE archive endpoint for subscriptions?”
“Which route archives subscriptions using the DELETE method?”
Tell an agent destructive · confirm first
Archive subscriptions {ids} through the DELETE archive route.
Call DELETE subscriptions/archive for {ids}.
DELETE /api/v1/admin/subscriptions/delete Delete several subscriptions · Subscriptions delete route #
Ask an LLM
“How do I bulk delete a list of subscriptions permanently?”
“Can I delete many subscriptions in one request?”
Tell an agent destructive · confirm first
Bulk delete subscriptions {ids}.
Permanently delete every subscription in {ids}.
GET /api/v1/admin/subscriptions({key})/customerorders({customerorderKey}) Get an order generated by a subscription · Subscriptions get customer order by key and customerorderkey #
Ask an LLM
“Which orders has a subscription generated?”
“Can I look up a specific order linked to a subscription?”
Tell an agent
Get order {customerorderKey} from subscription {key}.
Show customer order {customerorderKey} linked to subscription {key}.
GET /api/v1/admin/subscriptions({key})/customproperties({custompropertyKey}) Get a custom property on a subscription · Subscriptions get custom property by key and custompropertykey #
Ask an LLM
“How do I read a custom property on a subscription?”
“Can I fetch one custom field value from a subscription?”
Tell an agent
Get custom property {custompropertyKey} of subscription {key}.
Show the {custompropertyKey} custom property on subscription {key}.
GET /api/v1/admin/subscriptions({key})/subscriptionlines({subscriptionlineKey}) Get a line item on a subscription · Subscriptions get subscription line by key and subscriptionlinekey #
Ask an LLM
“What products and quantities are on a subscription's lines?”
“Can I look up one line of a subscription?”
Tell an agent
Get line {subscriptionlineKey} of subscription {key}.
Show subscription line {subscriptionlineKey} on subscription {key}.

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/optimizely:optimizely-subscriptions-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

optimizely-subscriptions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: admin-v1
  title: Admin API V1 Subscriptions API
servers:
- url: https://dogfood.commerce.insitesandbox.com
security: []
tags:
- name: Subscriptions
paths:
  /api/v1/admin/Subscriptions:
    get:
      tags:
      - Subscriptions
      summary: Returns the EntitySet Subscriptions
      operationId: Subscriptions_Get
      parameters:
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $filter
        in: query
        description: Filters the results, based on a Boolean condition.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      - name: $apply
        in: query
        description: Aggregates the results according to one or more transformations.
        required: false
        schema:
          type: string
      - name: $orderby
        in: query
        description: Sorts the results.
        required: false
        schema:
          type: string
      - name: $top
        in: query
        description: Returns only the first n results.
        required: false
        schema:
          type: integer
          format: int32
      - name: $skip
        in: query
        description: Skips the first n results.
        required: false
        schema:
          type: integer
          format: int32
      - name: $count
        in: query
        description: Includes a count of the matching results in the response.
        required: false
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    post:
      tags:
      - Subscriptions
      summary: Post a new entity to EntitySet Subscriptions
      operationId: Subscriptions_Post
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Insite.Data.Entities.Subscription'
        description: The entity to post
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/Subscriptions({id}):
    get:
      tags:
      - Subscriptions
      summary: Returns the entity with the key from Subscriptions
      operationId: Subscriptions_GetById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    put:
      tags:
      - Subscriptions
      summary: Replace entity in EntitySet Subscriptions
      operationId: Subscriptions_PutById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Insite.Data.Entities.Subscription'
        description: The entity to put
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    delete:
      tags:
      - Subscriptions
      summary: Delete entity in EntitySet Subscriptions
      operationId: Subscriptions_DeleteById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      - name: If-Match
        in: header
        description: If-Match header
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
    patch:
      tags:
      - Subscriptions
      summary: Update entity in EntitySet Subscriptions
      operationId: Subscriptions_PatchById
      parameters:
      - name: id
        in: path
        description: 'key: id'
        required: true
        schema:
          type: string
          format: uuid
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Insite.Data.Entities.Subscription'
        description: The entity to patch
        required: true
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/Subscriptions/Default.Default():
    get:
      tags:
      - Subscriptions
      summary: Call operation Default
      operationId: Subscriptions_Default
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/Subscriptions/Default.archive:
    post:
      tags:
      - Subscriptions
      summary: Call operation archive
      operationId: Subscriptions_Archive
      parameters:
      - name: ids
        in: query
        required: true
        explode: true
        schema:
          type: array
          items:
            type: string
            format: uuid
      requestBody:
        $ref: '#/components/requestBodies/Affiliates_ArchiveParameters'
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
  /api/v1/admin/subscriptions/archive:
    delete:
      tags:
      - Subscriptions
      operationId: Subscriptions_ArchiveRoute
      parameters:
      - name: ids
        in: query
        required: true
        explode: true
        schema:
          type: array
          items:
            type: string
            format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Subscriptions archive route
      x-summary-source: derived
  /api/v1/admin/subscriptions/delete:
    delete:
      tags:
      - Subscriptions
      operationId: Subscriptions_DeleteRoute
      parameters:
      - name: ids
        in: query
        required: true
        explode: true
        schema:
          type: array
          items:
            type: string
            format: uuid
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Subscriptions delete route
      x-summary-source: derived
  /api/v1/admin/subscriptions({key})/customerorders({customerorderKey}):
    get:
      tags:
      - Subscriptions
      operationId: Subscriptions_GetCustomerOrderByKeyAndCustomerorderkey
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: customerorderKey
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Subscriptions get customer order by key and customerorderkey
      x-summary-source: derived
  /api/v1/admin/subscriptions({key})/customproperties({custompropertyKey}):
    get:
      tags:
      - Subscriptions
      operationId: Subscriptions_GetCustomPropertyByKeyAndCustompropertykey
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: custompropertyKey
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Subscriptions get custom property by key and custompropertykey
      x-summary-source: derived
  /api/v1/admin/subscriptions({key})/subscriptionlines({subscriptionlineKey}):
    get:
      tags:
      - Subscriptions
      operationId: Subscriptions_GetSubscriptionLineByKeyAndSubscriptionlinekey
      parameters:
      - name: key
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: subscriptionlineKey
        in: path
        required: true
        schema:
          type: string
          format: uuid
      - name: $expand
        in: query
        description: Expands related entities inline.
        required: false
        schema:
          type: string
      - name: $select
        in: query
        description: Selects which properties to include in the response.
        required: false
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: object
      deprecated: false
      security:
      - access_token: []
      summary: Subscriptions get subscription line by key and subscriptionlinekey
      x-summary-source: derived
components:
  schemas:
    Insite.Data.Entities.Subscription:
      required:
      - cyclePeriod
      type: object
      properties:
        id:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        activateOn:
          format: date-time
          type: string
        allMonths:
          type: boolean
        april:
          type: boolean
        august:
          type: boolean
        customerId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        customerOrderId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        cyclePeriod:
          maxLength: 50
          minLength: 0
          type: string
        deactivateOn:
          format: date-time
          type: string
        december:
          type: boolean
        february:
          type: boolean
        fixedPrice:
          type: boolean
        includeInInitialOrder:
          type: boolean
        january:
          type: boolean
        july:
          type: boolean
        june:
          type: boolean
        march:
          type: boolean
        may:
          type: boolean
        november:
          type: boolean
        october:
          type: boolean
        periodsPerCycle:
          format: int32
          type: integer
        productId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        september:
          type: boolean
        shipToId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        shipViaId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        totalCycles:
          format: int32
          type: integer
        userProfileId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        websiteId:
          format: uuid
          type: string
          example: 00000000-0000-0000-0000-000000000000
        createdOn:
          format: date-time
          type: string
        createdBy:
          type: string
        modifiedOn:
          format: date-time
          type: string
        modifiedBy:
          type: string
  requestBodies:
    Affiliates_ArchiveParameters:
      content:
        application/json:
          schema:
            type: object
            properties: {}
      description: archive action parameters
  securitySchemes:
    access_token:
      type: apiKey
      description: Token used to access storefront API.
      name: access_token
      in: query