# List all plans

```
GET 
https://api.freemius.com/v1/products/{product_id}/plans.json
```

#### Auth:Bearer TokenSCOPE: <!-- -->PRODUCT

Product-scoped API tokens allow you to operate on the product itself. This token usually allows read-only access to the product configuration and write access to several operations on subscriptions, customers, payments, and more. For most SaaS or app integrations, this is the token you will need.

1. Go to the [Freemius Developer Dashboard](https://dashboard.freemius.com/).
2. Open the Settings page of the relevant product.
3. Click the API & Keys tab.
4. Copy the API Bearer Authorization Token from the UI.

***

Retrieve the plans collection.

## Request[​](#request "Direct link to request")

### Path Parameters

* **product\_id**
  <!-- -->
  integer\<int64>[](#param-property-plans-list-param-path-product-id "Direct link to product_id")required

  The ID of the product.

  **Possible values:** `>= 1`

  **Example:<!-- -->&#x20;**`1234`

### Query Parameters

* **fields**
  <!-- -->
  string[](#param-property-plans-list-param-query-fields "Direct link to fields")

  Comma separated list of fields to return in the response. If not specified, all fields are returned.

  **Example:<!-- -->&#x20;**`id,name,slug`

<!-- -->

## Responses[​](#responses "Direct link to Responses")

* 200
* 400
* 401
* 402
* 404

List of all the plans.

application/json

**Schema**

**plans** <!-- -->object\[]

* Array \[

**id**string\<int64>[](#schema-property-plans-list-response-schema-id-string-int64 "Direct link to id")

The unique identifier of the entity.

**Possible values:** `>= 1`

**Example:<!-- -->&#x20;**`123456`

**created**string\<date-time>[](#schema-property-plans-list-response-schema-created-string-date-time "Direct link to created")

The date and time the entity was created, under UTC timezone.

**Example:<!-- -->&#x20;**`2025-01-01 00:00:00`

**updated**string\<date-time>[](#schema-property-plans-list-response-schema-updated-string-date-time "Direct link to updated")nullable

The date and time the entity was updated, under UTC timezone. If `null` then the entity was never updated since its creation.

**Example:<!-- -->&#x20;**`2025-01-01 00:00:00`

**plugin\_id**string\<int64>[](#schema-property-plans-list-response-schema-plugin-id-string-int64 "Direct link to plugin_id")

The ID of the product the entity belongs to.

**Possible values:** `>= 1`

**Example:<!-- -->&#x20;**`123456`

**name**string\<slug>[](#schema-property-plans-list-response-schema-name-string-slug "Direct link to name")

The name of the plan. Only lowercase characters allowed.

**Example:<!-- -->&#x20;**`professional`

**title**string[](#schema-property-plans-list-response-schema-title-string "Direct link to title")

The title of the plan. This is the human readable name of the plan. Please do not add the suffix `Plan` to the title, as Freemius does that for you at various places.

**Example:<!-- -->&#x20;**`Professional`

**description**string[](#schema-property-plans-list-response-schema-description-string "Direct link to description")nullable

The description of the plan.

**Example:<!-- -->&#x20;**`For small to medium businesses.`

**is\_free\_localhost**boolean[](#schema-property-plans-list-response-schema-is-free-localhost-boolean "Direct link to is_free_localhost")

**Default value:<!-- -->&#x20;**`true`

Whether the plan offers unlimited local or staging activations with the same license.

**is\_block\_features**boolean[](#schema-property-plans-list-response-schema-is-block-features-boolean "Direct link to is_block_features")

**Default value:<!-- -->&#x20;**`true`

Whether to block features on expiration of **annual** licenses. If `false`, does not block features but only block updates and support.

**is\_block\_features\_monthly**boolean[](#schema-property-plans-list-response-schema-is-block-features-monthly-boolean "Direct link to is_block_features_monthly")

**Default value:<!-- -->&#x20;**`true`

Whether to block particular features on expiration of **monthly** licenses. If `false`, does not block features but only block updates and support.

**license\_type**integer[](#schema-property-plans-list-response-schema-license-type-integer "Direct link to license_type")

**Default value:<!-- -->&#x20;**`0`

The type of the license. `0` for per domain license. `1` for per subdomain license.

**Possible values:** \[`0`, `1`]

**trial\_period**integer[](#schema-property-plans-list-response-schema-trial-period-integer "Direct link to trial_period")nullable

The number of days a trial period will last. If `null` the plan does not support trials.

**Possible values:** `>= 1`

**Example:<!-- -->&#x20;**`14`

**is\_require\_subscription**boolean[](#schema-property-plans-list-response-schema-is-require-subscription-boolean "Direct link to is_require_subscription")

Whether to require a subscription payment for the trial period.

**support\_kb**string[](#schema-property-plans-list-response-schema-support-kb-string "Direct link to support_kb")nullable

The Knowledge Base URL.

**Example:<!-- -->&#x20;**`https://example.com/help/documentation`

**support\_forum**string[](#schema-property-plans-list-response-schema-support-forum-string "Direct link to support_forum")nullable

The support Forum URL.

**Example:<!-- -->&#x20;**`https://example.com/support`

**support\_email**string[](#schema-property-plans-list-response-schema-support-email-string "Direct link to support_email")nullable

The support email address.

**Example:<!-- -->&#x20;**`support@example.com`

**support\_phone**string[](#schema-property-plans-list-response-schema-support-phone-string "Direct link to support_phone")nullable

The support phone contact.

**Example:<!-- -->&#x20;**`555-555-5555`

**is\_success\_manager**boolean[](#schema-property-plans-list-response-schema-is-success-manager-boolean "Direct link to is_success_manager")

Is a personal success manager allocated with the plan.

**is\_featured**boolean[](#schema-property-plans-list-response-schema-is-featured-boolean "Direct link to is_featured")

Whether this is a featured plan.

**is\_hidden**boolean[](#schema-property-plans-list-response-schema-is-hidden-boolean "Direct link to is_hidden")

Whether to hide the plan from the auto-generated pricing page. Mostly relevant for WordPress products and our WordPress SDK. Please see our [pricing-page](https://github.com/Freemius/pricing-page/) library to implement your own.

* ]

Bad request. The request could not be understood by the server due to malformed syntax or arguments.

application/json

**Schema**

**path**string[](#schema-property-plans-list-response-schema-path-string "Direct link to path")

The API request path.

**Example:<!-- -->&#x20;**`:/products/product_id/users.json`

**error** <!-- -->object

This object contains the error details.

**type**string[](#schema-property-plans-list-response-schema-type-string "Direct link to type")

The type of the error encountered by the server.

**Example:<!-- -->&#x20;**`UnauthorizedAccess`

**message**string[](#schema-property-plans-list-response-schema-message-string "Direct link to message")

The descriptive error message.

**Example:<!-- -->&#x20;**`Some error has occured.`

**code**string[](#schema-property-plans-list-response-schema-code-string "Direct link to code")

The error code.

**Example:<!-- -->&#x20;**`unauthorized_access`

**http**integer[](#schema-property-plans-list-response-schema-http-integer "Direct link to http")

The HTTP status code returned by the server.

**Example:<!-- -->&#x20;**`401`

**timestamp**string[](#schema-property-plans-list-response-schema-timestamp-string "Direct link to timestamp")

Current timestamp.

**Example:<!-- -->&#x20;**`Thu, 11 May 2023 11:45:30 +0000`

**request** <!-- -->object

This object sends back the request payload as received by the server (both from path and from body or query).

**property name\***&#x61;ny[](#schema-property-plans-list-response-schema-property-name-any "Direct link to property name*")

This object sends back the request payload as received by the server (both from path and from body or query).

**Example:<!-- -->&#x20;**`{"beautify":true,"format":"json"}`

Unauthorized access error. The request requires [authentication](https://freemius.com/help/api/#bearer-token-authentication) but was not provided or the provided authentication does not satisfy the required permissions.

application/json

**Schema**

**path**string[](#schema-property-plans-list-response-schema-path-string "Direct link to path")

The API request path.

**Example:<!-- -->&#x20;**`:/products/product_id/users.json`

**error** <!-- -->object

This object contains the error details.

**type**string[](#schema-property-plans-list-response-schema-type-string "Direct link to type")

The type of the error encountered by the server.

**Example:<!-- -->&#x20;**`UnauthorizedAccess`

**message**string[](#schema-property-plans-list-response-schema-message-string "Direct link to message")

The descriptive error message.

**Example:<!-- -->&#x20;**`Some error has occured.`

**code**string[](#schema-property-plans-list-response-schema-code-string "Direct link to code")

The error code.

**Example:<!-- -->&#x20;**`unauthorized_access`

**http**integer[](#schema-property-plans-list-response-schema-http-integer "Direct link to http")

The HTTP status code returned by the server.

**Example:<!-- -->&#x20;**`401`

**timestamp**string[](#schema-property-plans-list-response-schema-timestamp-string "Direct link to timestamp")

Current timestamp.

**Example:<!-- -->&#x20;**`Thu, 11 May 2023 11:45:30 +0000`

**request** <!-- -->object

This object sends back the request payload as received by the server (both from path and from body or query).

**property name\***&#x61;ny[](#schema-property-plans-list-response-schema-property-name-any "Direct link to property name*")

This object sends back the request payload as received by the server (both from path and from body or query).

**Example:<!-- -->&#x20;**`{"beautify":true,"format":"json"}`

The request is missing the specified argument.

application/json

**Schema**

**path**string[](#schema-property-plans-list-response-schema-path-string "Direct link to path")

The API request path.

**Example:<!-- -->&#x20;**`:/products/product_id/users.json`

**error** <!-- -->object

This object contains the error details.

**type**string[](#schema-property-plans-list-response-schema-type-string "Direct link to type")

The type of the error encountered by the server.

**Example:<!-- -->&#x20;**`UnauthorizedAccess`

**message**string[](#schema-property-plans-list-response-schema-message-string "Direct link to message")

The descriptive error message.

**Example:<!-- -->&#x20;**`Some error has occured.`

**code**string[](#schema-property-plans-list-response-schema-code-string "Direct link to code")

The error code.

**Example:<!-- -->&#x20;**`unauthorized_access`

**http**integer[](#schema-property-plans-list-response-schema-http-integer "Direct link to http")

The HTTP status code returned by the server.

**Example:<!-- -->&#x20;**`401`

**timestamp**string[](#schema-property-plans-list-response-schema-timestamp-string "Direct link to timestamp")

Current timestamp.

**Example:<!-- -->&#x20;**`Thu, 11 May 2023 11:45:30 +0000`

**request** <!-- -->object

This object sends back the request payload as received by the server (both from path and from body or query).

**property name\***&#x61;ny[](#schema-property-plans-list-response-schema-property-name-any "Direct link to property name*")

This object sends back the request payload as received by the server (both from path and from body or query).

**Example:<!-- -->&#x20;**`{"beautify":true,"format":"json"}`

The requested resource was not found.

application/json

**Schema**

**path**string[](#schema-property-plans-list-response-schema-path-string "Direct link to path")

The API request path.

**Example:<!-- -->&#x20;**`:/products/product_id/users.json`

**error** <!-- -->object

This object contains the error details.

**type**string[](#schema-property-plans-list-response-schema-type-string "Direct link to type")

The type of the error encountered by the server.

**Example:<!-- -->&#x20;**`UnauthorizedAccess`

**message**string[](#schema-property-plans-list-response-schema-message-string "Direct link to message")

The descriptive error message.

**Example:<!-- -->&#x20;**`Some error has occured.`

**code**string[](#schema-property-plans-list-response-schema-code-string "Direct link to code")

The error code.

**Example:<!-- -->&#x20;**`unauthorized_access`

**http**integer[](#schema-property-plans-list-response-schema-http-integer "Direct link to http")

The HTTP status code returned by the server.

**Example:<!-- -->&#x20;**`401`

**timestamp**string[](#schema-property-plans-list-response-schema-timestamp-string "Direct link to timestamp")

Current timestamp.

**Example:<!-- -->&#x20;**`Thu, 11 May 2023 11:45:30 +0000`

**request** <!-- -->object

This object sends back the request payload as received by the server (both from path and from body or query).

**property name\***&#x61;ny[](#schema-property-plans-list-response-schema-property-name-any "Direct link to property name*")

This object sends back the request payload as received by the server (both from path and from body or query).

**Example:<!-- -->&#x20;**`{"beautify":true,"format":"json"}`
