Was this helpful?

Apigee provides a range of out-of-the-box policy capabilities that address common API management requirements. However, there are some cases where your API requires custom behavior that is not covered by Apigee's standard policy palette. In these cases, Apigee exposes scripting interfaces to ease the task of implementing custom behaviors in the proxied API message flow. One approach is to attach your own JavaScript to an API flow, which the API Platform then executes at runtime.

A Python policy contains no actual code. Instead, a Python policy references a Python 'resource' and defines the Step in the API flow where the Python script executes. You can upload your JavaScript through the Management UI proxy editor, or you can include it in the /resources/py directory in API proxies that you develop locally.

For working sample Python scripts, see API Platform samples.

Configuring a Python Script policy

Configure the Python Script policy using the following elements.

Field Name Description
ResourceURL Specifies the name of the Python script stored in the API proxy under /resources/py. Note: the filename must match exactly or an

InternalClassification

error will be thrown at runtime.
IncludeURL (Optional) Scripts are evaluated strictly in the order of the IncludeURL list.

Policy schema

Each policy must conform to a policy schema. All policy constructs such as elements and attributes mentioned above are defined in a schema. To download the schema, click here.

Example - Python Script policy

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<Script name="MyPythonScriptPolicy">
        <ResourceURL>py://MyPythonScript</ResourceURL>
        <IncludeURL>py://MyPythonScript</IncludeURL>
</Script>