You are viewing the Apigee Management API reference documentation. For the main product docs, and to search all docs, go to

Update API Product

Resource Summary


Content Type

application/json, text/xml


API Product,



Update API Product

Updates an existing API product. You must include all required values, whether or not you are updating them, as well as any optional values that you are updating.


The API product name required in the request URL is the internal name of the product, not the Display Name. 


Apigee Edge for Public Cloud only: OAuth access tokens and Key Management Service (KMS) entities (apps, developers, and API products) are cached for 180 seconds (current default). Any custom attributes associated with these entities also get cached for at least 180 seconds after the entity is accessed at runtime. Therefore, an ExpiresIn element on the OAuthV2 policy won't be able to expire an access token in less than 180 seconds.


Resource URL /organizations/{org_name}/apiproducts/{apiproduct_name}

Header Parameters

Name Values Description

Specify the content type as application/json or text/xml.

Request Body

Name Description Default Required?
name If you specify this attribute, it is ignored. The name attribute is immutable. N/A No
approvalType manual or auto. If manual, consumer key is generated and returned in 'pending' state. If auto consumer key generated and returned in 'Approved' state. N/A Yes
displayName The name to be displayed in the UI or developer portal to developers registering for API access N/A Yes
attributes Arbitrary name/value pairs.

Note: With Apigee Edge for Public Cloud, the custom attribute limit is 18.

Use this property to specify the access level of the API product as either public, private, or internal. Only products marked public are available to developers in the Apigee developer portal. For example, you can set a product to internal while it's in development and then change access to public when it's ready to release on the portal. API products marked as private do not appear on the portal but can be accessed by external developers. For example:

       "attributes": [
          "name": "access",
          "value": "public"
For monetization, you can use the attributes field to specify transaction success criteria. For example:

       "attributes": [
          "value": "txProviderStatus == 'OK'"
In addition, for monetization you can use the attributes field to specify custom attributes on which you base rate plan charges. For example:

       "attributes": [
          "name": "MINT_CUSTOM_ATTRIBUTE_1",
          "value": "test1"
N/A No
description An overview of the API product. Include key information about the API product that is not captured by other fields. N/A No
apiResources A comma separated list of API resources to be bundled in the API Product. See Creating API products for more on setting this value.

For information about setting this value when creating a transaction recording policy for monetization, see Creating a transaction recording policy using the API.
N/A No
environments A comma-separated list of environment name in an organization. Requests to environments not listed are rejected. N/A No
proxies A comma-separated list of API proxy names in an organization. Requests to API proxies not listed are rejected. Api proxy names included here must already exist in the environment specified in the environment property because API Services validates proxy names when you create an API product. N/A No
quota The number of request messages permitted by this API product for the specified quotaInterval and quotaTimeUnit. For example, a quota of 50, for a quotaInterval of 12 and a quotaTimeUnit of hours means 50 requests are allowed every 12 hours. N/A No
quotaInterval The time interval over which the number of request messages is calculated. N/A No
quotaTimeUnit The time unit defined for the quotaInterval, as either: minute, hour, day, month. N/A No
scopes A comma separated list of scopes. These must map to the scopes defined in an Oauth policy associated with the API Product. Any scope mismatch between an Acces Token presented and the API Product results in auth failure. N/A No

org_name Mention the organization name true

apiproduct_name Mention the API Product name true

HTTP Basic

OAuth 2.0



Make a request and see the response.

Make a request and see the response.

Make a request and see the response.


Help or comments?

  • If something's not working: Ask the Apigee Community or see Apigee Support.
  • If something's wrong with the docs: Click the "Send Feedback" button.
    (Incorrect? Unclear? Broken link? Typo?)