| <html><body> |
| <style> |
| |
| body, h1, h2, h3, div, span, p, pre, a { |
| margin: 0; |
| padding: 0; |
| border: 0; |
| font-weight: inherit; |
| font-style: inherit; |
| font-size: 100%; |
| font-family: inherit; |
| vertical-align: baseline; |
| } |
| |
| body { |
| font-size: 13px; |
| padding: 1em; |
| } |
| |
| h1 { |
| font-size: 26px; |
| margin-bottom: 1em; |
| } |
| |
| h2 { |
| font-size: 24px; |
| margin-bottom: 1em; |
| } |
| |
| h3 { |
| font-size: 20px; |
| margin-bottom: 1em; |
| margin-top: 1em; |
| } |
| |
| pre, code { |
| line-height: 1.5; |
| font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; |
| } |
| |
| pre { |
| margin-top: 0.5em; |
| } |
| |
| h1, h2, h3, p { |
| font-family: Arial, sans serif; |
| } |
| |
| h1, h2, h3 { |
| border-bottom: solid #CCC 1px; |
| } |
| |
| .toc_element { |
| margin-top: 0.5em; |
| } |
| |
| .firstline { |
| margin-left: 2 em; |
| } |
| |
| .method { |
| margin-top: 1em; |
| border: solid 1px #CCC; |
| padding: 1em; |
| background: #EEE; |
| } |
| |
| .details { |
| font-weight: bold; |
| font-size: 14px; |
| } |
| |
| </style> |
| |
| <h1><a href="apigee_v1.html">Apigee API</a> . <a href="apigee_v1.organizations.html">organizations</a> . <a href="apigee_v1.organizations.apiproducts.html">apiproducts</a></h1> |
| <h2>Instance Methods</h2> |
| <p class="toc_element"> |
| <code><a href="apigee_v1.organizations.apiproducts.attributes.html">attributes()</a></code> |
| </p> |
| <p class="firstline">Returns the attributes Resource.</p> |
| |
| <p class="toc_element"> |
| <code><a href="#create">create(parent, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Creates an API product in an organization.</p> |
| <p class="toc_element"> |
| <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p> |
| <p class="firstline">Deletes an API product from an organization.</p> |
| <p class="toc_element"> |
| <code><a href="#get">get(name, x__xgafv=None)</a></code></p> |
| <p class="firstline">Gets configuration details for an API product.</p> |
| <p class="toc_element"> |
| <code><a href="#list">list(parent, attributename=None, attributevalue=None, count=None, startKey=None, expand=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Lists all API product names for an organization.</p> |
| <p class="toc_element"> |
| <code><a href="#update">update(name, body=None, x__xgafv=None)</a></code></p> |
| <p class="firstline">Updates an existing API product. You must include all required values,</p> |
| <h3>Method Details</h3> |
| <div class="method"> |
| <code class="details" id="create">create(parent, body=None, x__xgafv=None)</code> |
| <pre>Creates an API product in an organization. |
| You create API products after |
| you have proxied backend services using API proxies. |
| An API product is a |
| collection of API resources combined with quota settings and metadata that |
| you can use to deliver customized and productized API bundles to your |
| developer community. This metadata can include: |
| |
| - Scope |
| - Environments |
| - API proxies |
| - Extensible profile |
| |
| API products enable you repackage APIs |
| on-the-fly, without having to do any additional coding or configuration. |
| Apigee recommends that you start with a simple API product including only |
| required elements. You then provision credentials to apps to enable them to |
| start testing your APIs. |
| |
| After you have authentication and authorization |
| working against a simple API product, you can iterate to create finer |
| grained API products, defining different sets of API resources for each API |
| product. |
| |
| <aside class="warning"><strong>WARNING:</strong> |
| |
| - If you don't specify an API proxy in the request body, <em>any</em> app |
| associated with the product can make calls to <em>any</em> API in your |
| entire organization. |
| - If you don't specify an environment in the request body, the product |
| allows access to all environments. |
| |
| </aside> |
| |
| For more information, see {{what_api_product}} |
| |
| Args: |
| parent: string, Required. The parent organization name under which the API product will |
| be created. Must be in the following form: |
| <pre>organizations/<var>organization_ID</var></pre> (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="delete">delete(name, x__xgafv=None)</code> |
| <pre>Deletes an API product from an organization. |
| |
| Deleting an API product |
| causes app requests to the resource URIs defined in the API product to |
| fail. |
| |
| Ensure that you create a new API product to serve existing apps, unless |
| your intention is to disable access to the resources defined in the API |
| product. |
| |
| The API product name required in the request URL is the internal name of |
| the product, not the display name. While they may be the same, it depends |
| on whether the API product was created via the UI or the API. View the list |
| of API products to verify the internal name. |
| |
| Args: |
| name: string, Required. API product name in the following form: |
| <pre>organizations/<var>organization_ID</var>/apiproducts/<var>api_product_name</var></pre> (required) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="get">get(name, x__xgafv=None)</code> |
| <pre>Gets configuration details for an API product. |
| |
| The API product name required in the request URL is the internal name of |
| the product, not the display name. While they may be the same, it depends |
| on whether the API product was created via the UI or the API. View the list |
| of API products to verify the internal name. |
| |
| Args: |
| name: string, **Required.** API product name in the following form: |
| <pre>organizations/<var>organization_ID</var>/apiproducts/<var>api_product_name</var></pre> (required) |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="list">list(parent, attributename=None, attributevalue=None, count=None, startKey=None, expand=None, x__xgafv=None)</code> |
| <pre>Lists all API product names for an organization. |
| Filter the list by passing an `attributename` and `attibutevalue`. |
| |
| The limit on the number of API products returned by the API is 1000. You |
| can paginate the list of API products returned using the `startKey` and |
| `count` query parameters. |
| |
| Args: |
| parent: string, **Required.** The parent organization name in the following form: |
| <pre>organizations/<var>organization_ID</var></pre> (required) |
| attributename: string, The name of the attribute to search. |
| attributevalue: string, The value of the attribute. |
| count: string, Enter the number of API products you want returned in the API call. The |
| limit is 1000. |
| startKey: string, Gets a list of API products starting with a specific API product in the |
| list. For example, if you're returning 50 API products at a time (using the |
| `count` query parameter), you can view products 50-99 by entering the name |
| of the 50th API product in the first API (without using `startKey`). |
| Product name is case sensitive. |
| expand: boolean, Set to `true` to get expanded details about each API. |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "apiProduct": [ # Lists all API product names defined for an organization. |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| }, |
| ], |
| }</pre> |
| </div> |
| |
| <div class="method"> |
| <code class="details" id="update">update(name, body=None, x__xgafv=None)</code> |
| <pre>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. While they may be the |
| same, it depends on whether the API product was created via UI or API. View |
| the list of API products to identify their internal names. |
| |
| Args: |
| name: string, **Required.** API product name in the following form: |
| <pre>organizations/<var>organization_ID</var>/apiproducts/<var>api_product_name</var></pre> (required) |
| body: object, The request body. |
| The object takes the form of: |
| |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| } |
| |
| x__xgafv: string, V1 error format. |
| Allowed values |
| 1 - v1 error format |
| 2 - v2 error format |
| |
| Returns: |
| An object of the form: |
| |
| { |
| "lastModifiedAt": "A String", # Response only. Modified time of this environment as milliseconds since |
| # epoch. |
| "attributes": [ # Array of attributes that may be used to extend the default API product |
| # profile with customer-specific metadata. You can specify a maximum of 18 |
| # attributes. |
| # |
| # 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 |
| # is in development and then change access to `public` when it is 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 monetization, you can use the attributes field to: |
| # |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpsuccessapi" |
| # target="_blank">Specify transaction success criteria</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi" |
| # target="_blank">Specify custom attributes</a> on which you base rate plan |
| # charges</a>. |
| { # Key-value pair to store extra metadata. |
| "value": "A String", # Value of the attribute. |
| "name": "A String", # API key of the attribute. |
| }, |
| ], |
| "displayName": "A String", # The name to be displayed in the UI or developer portal to developers |
| # registering for API access. |
| "proxies": [ # A comma-separated list of API proxy names to which this API product is |
| # bound. By specifying API proxies, you can associate resources in the API |
| # product with specific API proxies, preventing developers from accessing |
| # those resources through other API proxies. |
| # |
| # Edge rejects requests to API proxies that are not listed. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The API proxy names must already |
| # exist in the specified environment as they will be validated upon |
| # creation.</aside> |
| "A String", |
| ], |
| "quotaTimeUnit": "A String", # The time unit defined for the `quotaInterval`. Valid values include minute, |
| # hour, day, or month. |
| "approvalType": "A String", # Specifies how API keys are approved to access the APIs defined by the API |
| # product. |
| # |
| # If set to `manual`, the consumer key is generated and returned in "pending" |
| # state. In this case, the API keys won't work until they have been |
| # explicitly approved. |
| # |
| # If set to `auto`, the consumer key is generated and returned in "approved" |
| # state and can be used immediately. |
| # |
| # <aside class="note"><strong>NOTE:</strong> Typically, `auto` is used |
| # to provide access to free or trial API products that provide limited quota |
| # or capabilities.</aside> |
| "name": "A String", # The internal name of the API Product. Characters you can use in the name |
| # are restricted to: A-Z0-9._\-$ %. |
| # |
| # <aside class="note"><strong>NOTE:</strong> The internal name cannot be |
| # edited when updating the API product.</aside> |
| "environments": [ # A comma-separated list of environment names to which the API product is |
| # bound. Requests to environments that are not listed are rejected. |
| # |
| # By specifying one or more environments, you can bind the resources listed |
| # in the API product to a specific environment, preventing developers from |
| # accessing those resources through API proxies deployed in another |
| # environment. |
| # |
| # This setting is used, for example, to prevent resources associated with |
| # API proxies in 'prod' from being accessed by API proxies deployed in |
| # 'test'. |
| "A String", |
| ], |
| "apiResources": [ # Comma-separated list of API resources to be bundled in the API Product. |
| # |
| # By default, the resource paths are mapped from the `proxy.pathsuffix` |
| # variable. |
| # |
| # The proxy path suffix is defined as the URI fragment following the |
| # ProxyEndpoint base path. |
| # For example, if the `apiResources` element is defined to be |
| # `/forecastrss` and the base path defined for the API proxy is |
| # `/weather`, then only requests to `/weather/forecastrss` are permitted by |
| # the API product. |
| # |
| # You can select a specific path, or you can select all subpaths with the |
| # following wildcard: |
| # |
| # - /**: Indicates that all sub-URIs are included. |
| # - /* : Indicates that only URIs one level down are included. |
| # |
| # By default, / supports the same resources as /** as well as the base path |
| # defined by the API proxy. |
| # |
| # For example, if the base path of the API proxy is `/v1/weatherapikey`, |
| # then the API product supports requests to `/v1/weatherapikey` and to any |
| # sub-URIs, such as `/v1/weatherapikey/forecastrss`, |
| # `/v1/weatherapikey/region/CA`, and so on. |
| # For more information, see: |
| # |
| # - <a href="/api-platform/publish/create-api-products">Manage API |
| # products</a> |
| # - <a |
| # href="/api-platform/monetization/create-transaction-recording-policy#spectrpcaapi">Managing |
| # a transaction recording policy using the API</a> |
| "A String", |
| ], |
| "scopes": [ # A comma-separated list of OAuth scopes that are validated at runtime. |
| # Edge validates that the scopes in any access token presented match the |
| # scopes defined in the OAuth policy assoicated with the API product. |
| "A String", |
| ], |
| "description": "A String", # An overview of the API product. Include key information about the API |
| # product that is not captured by other fields. |
| "quota": "A String", # The number of request messages permitted per app 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. |
| "createdAt": "A String", # Response only. Creation time of this environment as milliseconds since |
| # epoch. |
| "quotaInterval": "A String", # The time interval over which the number of request messages is calculated. |
| }</pre> |
| </div> |
| |
| </body></html> |