Using the sample API proxies


You'll need an account on You can sign up for a trial account at

To use samples, you should also have the following:

Tool Description
Git The samples are located on GitHub. If you do not have Git installed, please refer to GitHub's git setup instructions. If you don't want to install Git, you can browse the files and download a ZIP from

Python is required to run the Apigee deploy tool. Python is present in most Linux environments, on a Mac with XCode installed, on a Windows machine with Cygwin installed, and in many other places.

To obtain Python, please refer to the Python download page.

cURL The sample setup scripts also use cURL. Make sure cURL is installed and available on your PATH (run the which curl command to see if it's available on your system).
dos2unix If you're running Cygwin on Windows, you may also need the dos2unix utility. (The Cygwin installer lets you install the utility.) See the Windows/Cygwin Troubleshooting topic for more information.

Downloading the samples

To obtain the sample files, run:

git clone

Importing and deploying the sample API proxies

Import and deploy the samples from the command line:

  1. After you download the samples, go to the /setup directory.
    cd setup
  2. In the /setup directory, locate the file Edit this file to set your organization, the email address associated with your username, and the environment (prod or test) where you want to deploy the API proxies.
  3. After you edit, run:
    This script deploys all API proxy samples to your organization. (The process takes 3-4 minutes.) Follow prompts to deploy API products, developers, and apps (which are used for OAuth).
  4. After the deploy script completes, navigate to the sample-proxies directory. In the directory sample-proxies, you will find one directory per sample proxy. In each directory is a file with information about running the sample, and two scripts that help you as you make small changes to the samples, deploy, and then invoke the sample to see what effect you change had:
    • Run this script to invoke the deployed version of the API proxy.
    • Run this script to deploy the API proxy after you make any changes.

Invoking the sample API proxies

Each sample proxy has an associated shell script that can be used to invoke the API proxy after you deploy it.

From the /sample-proxies/{proxy_name} directory, run:


This will invoke the proxy that is running in the test environment in your organization.


If you run into issue with the sample, see Troubleshooting introduction. The topic includes a Windows/Cygwin Troubleshooting section for fixing deployment errors in Cygwin on Windows.

Modifying and reusing the sample API proxies

Typical usage of the sample proxies is to modify, deploy, and invoke. This enables you to make small modifications, and then to see what effect they have on the response message.

If you need to modify a sample API proxy to point at a different backend service, modify the XML configuration file under:


For example, to point the API key sample at your own backend service, locate this file:


If the default configuration points to, such as:

<TargetEndpoint name="default">
    <!-- This is where we define the target. For this sample we just use a simple URL. -->

and your backend service is available at, then you modify the configuration to look like the following:

<TargetEndpoint name="default">
    <!-- This is where we define the target. For this sample we just use a simple URL. -->
After you have saved your changes, deploy the API proxy:

The other API proxies can be modified the same way in order to use the API proxy functionality against your existing target services. In some cases, however, API proxy behavior is dependent on specific message formats, so the proxies might need additional configuration changes.