You're viewing **Apigee Edge** documentation.  
[Go to the
**Apigee X** documentation](http://cloud.google.com/apigee/docs). info

A freemium plan enables app developers to use the rate plan for free for a period that is based on usage, duration, or both.
You can configure a freemium plan for any rate plan type except adjustable notification.

## Configuring a freemium plan using the UI

Configure a freemium plan for a rate plan, as described below.

### Edge

To configure a freemium plan using the Edge UI when [creating](https://docs.apigee.com/api-platform/monetization/create-rate-plans#create) or [editing](https://docs.apigee.com/api-platform/monetization/create-rate-plans#edit) a rate plan select any rate plan type (except Adjustable Notification)
and in the **Freemium** section enable the freemium plan and select one of the following options:

- Offer by usage (number of API calls)
- Offer by period
- Whichever comes first

Based on your selection, configure one or both of the following fields:

| Field | Description |
|---|---|
| Freemium usage (API calls) | **Note** : Required if you select **Offer by Quantity** or **Whichever Comes First** . Number of transactions (or value pertaining to a custom attribute recorded in the transaction recording policy) for which developers are not charged. The volume is measured for the API product. |
| Freemium time period | **Note** : Required if you select **Offer by Duration** or **Whichever Comes First** . Time interval during which developers are not charged. For example, 30 days. Specify the number and unit (day, week, or month). |

### Classic Edge (Private Cloud)

> [!NOTE]
> **Note:** The Classic Edge UI is available with Edge for Private Cloud only.

To configure a freemium plan using the Classic Edge UI:

1. Select the Freemium tab. ![](https://docs.apigee.com/static/api-platform/images/Freemium-tab.png)

2. Enter the following information:

   | Field | Description |
   |---|---|
   | Freemium Package? | The extent of the free period. Select one of the following radio buttons: - By Quantity. The free period is based on a quantity specified in the Volume field. - By Duration. The free period is based on a time interval specified in the Freemium Duration field. - Whichever comes first. The free period ends when either the quantity in the Volume field or the time interval in the Freemium Duration field is reached, whichever happens first. - No. This is not a Freemium plan. This is the default. |
   | Freemium Volume | The volume of transactions (or volume pertaining to a custom attribute recorded in the transaction recording policy) for which developers are charged. The volume is measured across all products in the API package. Enter a volume number, such as 5000. This means that when developers start the plan, they are not charged for the first 5000 transactions (or for the first 5000 uses of a custom attribute-related item). This field is enabled only if you select "By Quantity" or "Whichever comes first" in the "Freemium Package?" field. |
   | Freemium Duration | The time interval during which developers are not charged. Enter a number and select a time period, for example, 1 Month. This means that developers are not charged for 1 month following the start date of the purchased plan. This field is enabled only if you select "By Duration" or "Whichever comes first" in the "freemium Package?" field. |

## Configuring a freemium plan to a rate plan using the API

You can add a freemium plan when you create or update the rate plan plan. You specify the
freemium properties in the request body of the call.

For example, the following request creates a standard rate plan with freemium duration period
of 30 days. (The freemium-related specifications are highlighted.)

```
$ curl -H "Content-Type:application/json" -X POST -d \
'{
     "name": "Simple rate plan",
     "currency": {
      "id" : "usd"
     },
     "description": "Simple rate plan",
     "displayName" : "Simple rate plan",
     "freemiumDuration": "30",
     "freemiumDurationType": "DAY",
     "monetizationPackage": {
      "id": "location_package"
     },
     "organization": {
      "id": "{org_name}
     },
     "published": "true",
     "ratePlanDetails": [
     {
      …
      }
      ],
     "startDate": "2013-09-15",
     "type": "STANDARD"
}' \
"https://api.enterprise.apigee.com/v1/mint/organizations/{org_name}/monetization-packages/location_package/rate-plans" \
-u email:password
```

To specify a freemium-based quantity (such as the number of transactions involving the API
package or the volume pertaining to a custom attribute recorded in the transaction recording
policy), specify it as a number of freemium units. For example, the following property
assignment, specifies that the freemium is based on 5000 freemium units:

```
"freemiumUnit": "5000"
```

See [Rate plan
configuration settings](https://docs.apigee.com/api-platform/monetization/create-rate-plans#rateplanops) for a complete list of rate plan options.