---
title: "List the pricing plans (POST form)"
method: POST
path: "/plans"
tags: ["Commerce"]
---

# List the pricing plans (POST form)

`POST /plans`

## Request

- Base URL: `https://grape.cool/api/v1`
- URL: `https://grape.cool/api/v1/plans`
- Auth: none required

Returns the Free, Sync, Plus, Pro and Lifetime plans with the price, the billing period and the full feature list of each. Prices are in US dollars. Identical to the GET operation; the query arguments move into a JSON body.

## Request body

- object

## Response `200`

Five plans, cheapest first.

- object
  - `success` true, required
  - `data` Plan[], required
    - `id` string, required: Stable plan identifier.
    - `name` string, required: Plan name.
    - `price` string, required: Price as published, including the currency symbol.
    - `period` string, required: What the price buys, such as per month or one time.
    - `description` string: Who the plan is for.
    - `features` string[], required: Everything the plan includes.
    - `callToAction` string: The button label on the pricing page.
    - `url` string, uri
  - `meta` Meta: Counts and echoed arguments that describe the payload.
    - `total` integer: How many items exist.
    - `returned` integer: How many items this response carries.
    - `query` string: The search term that was used.
    - `currency` string: ISO 4217 code the prices are quoted in.

## Other responses

- `400`: A parameter was missing or outside the allowed values.
- `404`: Nothing matches the identifier given.
- `429`: More than 1000 requests came from this IP address in an hour.
- `500`: The request could not be completed.

---

[API](https://skmtc.dev/grape/apis/grape-public-api.md) · [All operations](https://skmtc.dev/grape/apis/grape-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/grape/apis/grape-public-api/revisions/16061cbac2d4?raw)
