---
title: "Create multiple subscriptions"
method: POST
path: "/subscriptions/multi/"
tags: ["Subscription"]
---

# Create multiple subscriptions

`POST /subscriptions/multi/`

## Request body

- SubscriptionCreateMulti
  - `customer` CustomerCreate
    - `first_name` string, required
    - `last_name` string, required
    - `email` string, required
    - `phone` string
    - `customer_reference` string, required
  - `payment_method` PaymentMethodTokenCreate
    - `token` string
  - `subscriptions` SubscriptionCreate[]
    - `plan` integer, required
    - `reference` string, required
    - `start_date` string, date-time
    - `amount` string — Amount to overwrite the plan amount
    - `discount` string — Discount percentage, from 0 to 100. A value of 10 means 10% discount, calculated on the next charge.
    - `description` string — An optional description for internal purposes.

## Response `201`

Response when creating multiple subscriptions for one customer

- InlineResponse201
  - `customer` Customer
    - `first_name` string, required
    - `last_name` string, required
    - `email` string, required
    - `phone` string
    - `customer_reference` string, required
    - `id` integer
    - `payment_method` PaymentMethod[]
      - `verified` boolean
      - `canceled` boolean
      - `valid_until` string, date-time
      - `display_info` string
  - `subscriptions` Subscription[]
    - `id` integer
    - `trial_end` string, date-time
    - `start_date` string, date-time
    - `ended_at` string, date-time
    - `active_until` string, date-time
    - `reference` string
    - `description` string
    - `is_on_trial` boolean
    - `active` boolean
    - `cancelled` boolean
    - `cancel_date` string, date-time
    - `meta` string, json
    - `token` string
    - `customer` integer
    - `plan` Plan
      - `id` integer, required
      - `name` string, required
      - `alternative_name` string
      - `reference` string, required
      - `interval` string, required
      - `interval_count` integer, required
      - `amount` string, required
      - `currency` string, required
      - `trial_period_days` integer
      - `description` string
      - `enabled` boolean, required
      - `private` boolean, required
      - `electronic_only` boolean, required
      - `payment_processor` object
        - `id` integer, required
        - `name` string
        - `type` string
    - `billing_logs` BillingLog[]
      - `id` integer
      - `billing_log_type` 'trial' | 'renewal'
      - `billing_date` string, date-time
      - `plan_billed_up_to` string, date-time
      - `total` string, money, nullable
      - `transaction` Transaction
        - `uuid` string, uuid
        - `data` object — Arbitrary data on transaction from payment processor
        - `state` 'failed' | 'settled' | 'inital' | 'pending' | 'canceled' | 'refunded'
        - `amount` string
        - `currency` string

## Other responses

- `400` — Invalid status value

---

[API](https://skmtc.dev/askell/apis/a-skell-api.md) · [All operations](https://skmtc.dev/askell/apis/a-skell-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/askell/a-skell-api/revisions/9234f937fa26/schema)
