User-friendly wrapper for the Apigee Edge admin APIs.
Project description
TL;DR
For a more stable experience, install version 0.53.11 or earlier:
pip install apigeecli==0.53.11
Versions 0.54.0 and above are maintenance-only releases (refactoring and ad hoc fixes). See the Forked repository for the current maintained source code.
If you encounter any broken versions, please report them via the Forked repository, thanks.
Maintenance Status
This tool is no longer actively maintained.
It remains usable, but no new features or fixes are planned.
Authentication Support Notice
We exclusively use SSO.
Basic and MFA authentication may still work, but they are no longer tested or guaranteed.
Overview
The Apigee Edge command-line interface is an unofficial Python CLI built to simplify and automate Apigee API usage.
Originally built for Darumatic clients
Designed for Apigee Edge
Supports common API management workflows
Recently Tested
The following commands and features were validated during final updates and refactoring:
Authentication
SSO login flow (primary supported method)
Basic auth (not actively tested)
MFA auth (not actively tested)
Core Functionality
list and get subcommands for:
apis
keyvaluemaps
caches
targetservers
sharedflows
apps
apis subcommands:
deploy
pull
push and delete commands for:
keyvaluemaps
caches
targetservers
backups command:
Core functionality appears to work, but testing has been limited
New --async feature has been introduced and appears to function correctly
Fixed issue where user roles were not being downloaded correctly during backups
More commands and features will be tested and added here over time.
Deprecation
This tool was designed for Apigee Edge, which is being phased out in favor of Apigee X (ApigeeX).
No major enhancements for ApigeeX compatibility are planned
Some commands may not fully align with ApigeeX APIs
Long-term usage is not recommended for new projects
Recommendation
For new implementations, consider:
Official Google Cloud / Apigee tooling
Direct ApigeeX API usage
Modern CI/CD integrations
This CLI is best suited for:
Legacy automation
Transitional environments
Existing scripts that depend on it
Installation
The easiest way to install apigee-cli is to use pip in a virtualenv:
$ pip install apigeecli
or, if you are not installing in a virtualenv, to install globally:
$ sudo pip install apigeecli
or for your user:
$ pip install --user apigeecli
If you have the apigee-cli installed and want to upgrade to the latest version you can run:
$ pip install --upgrade apigeecli
Getting Started
Before using apigee-cli, you need to tell it about your Apigee Edge credentials. You can do this in three ways:
Environment variables
Config file
Command-line arguments
The steps below show how to use command-line arguments to configure your Apigee Edge credentials.
Basic authentication
$ apigee configure -P default -u MY_EMAIL -p MY_PASS -o MY_ORG -mfa '' -z '' --no-token --prefix ''
Multi-factor authentication (MFA)
$ apigee configure -P default -u MY_EMAIL -p MY_PASS -o MY_ORG -mfa MY_KEY -z '' --no-token --prefix ''
SSO authentication
$ apigee configure -P default -u MY_EMAIL -p none -o MY_ORG -mfa '' -z MY_ZONENAME --no-token --prefix ''
If you are not currently signed in by your identity provider, you will be prompted to sign in:
$ apigee apis list
SSO authorization page has automatically been opened in your default browser.
Follow the instructions in the browser to complete this authorization request.
If your browser did not automatically open, go to the following URL and sign in:
https://{zoneName}.login.apigee.com/passcode
then copy the Temporary Authentication Code.
Please enter the Temporary Authentication Code:
zoneName will be the Identity zone name you previously configured.
Refer to the official Apigee documentation to learn more about how to Access the Edge API with SAML.
Testing your credentials
Run the following command to get a list of API proxies in your default Apigee organization:
$ apigee apis list ["helloworld", "oauth"]
Troubleshooting
If you encounter issues with commands, check the log file for detailed debug information and error messages:
~/.apigee/exceptions.log
This file can help diagnose installation problems, missing dependencies, or errors related to Apigee Edge.
You can also use the verbose flags -v or -vv with commands to see more detailed request information.
SSL / TLS Issues
If you encounter SSL errors such as:
requests.adapters.SSLError
This may be caused by corporate security proxies.
As a workaround, you can disable SSL verification by setting the following environment variable.
export APIGEE_CLI_ENABLE_SSL_VERIFY=false
Plugins (Optional)
The plugin system was designed for clients in large organisations to extend apigeecli with custom workflows and easily distribute reusable tools across teams.
Typical use cases include:
Self-service generation and deployment of API proxies from OpenAPI specifications
Integration with and automated provisioning of CI/CD pipelines
Validation and of custom apiproxy policies against organisational standards
Security scanning of API resources using Apigee Edge Admin APIs
Operational and governance tooling built on top of existing platform APIs
You can configure plugin sources in three ways: a one-liner, manual config, or via the CLI.
Below shows how to get started with plugins.
Option 1: One-liner (quick setup)
echo -e '[sources]\npublic = https://github.com/mdelotavo/apigee-cli-plugins' >> ~/.apigee/plugins/config
Option 2: Interactive CLI configuration
apigee plugins configure -a
This will open your default text editor, allowing you to define remote plugin sources.
If you do not want changes to be automatically applied after saving, run:
apigee plugins configure
In this case, you will need to run the update command manually.
Option 3: Manual configuration
Edit the file ~/.apigee/plugins/config and add:
[sources] public = https://github.com/mdelotavo/apigee-cli-plugins
Install and manage plugins
Update and install plugins:
apigee plugins update
Inspect available plugins:
apigee plugins show apigee plugins show -n public
Install required dependencies:
pip install $(apigee plugins show -n public --show-dependencies-only)
Getting Help
More Links
For further questions, feel free to contact us at hello@darumatic.com.
Disclaimer
This tool is not affiliated with Apigee or Google and is highly experimental.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file apigeecli-0.55.2.tar.gz.
File metadata
- Download URL: apigeecli-0.55.2.tar.gz
- Upload date:
- Size: 59.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
11e059c0edc5a68e72986d0b050eb28d61555380f3032b7e0fea60b86467e46b
|
|
| MD5 |
a9f0bb56cf7dc40e7f8bee3c07f161b7
|
|
| BLAKE2b-256 |
ffb2adaf6666e780f5dabb5219df23f91f421f91899fc7d56df3e92c92b1524b
|
File details
Details for the file apigeecli-0.55.2-py3-none-any.whl.
File metadata
- Download URL: apigeecli-0.55.2-py3-none-any.whl
- Upload date:
- Size: 82.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
963cfec3fa9698eb7451868003387b673a7997a4ccc7bdadf615b5c2b74ffd25
|
|
| MD5 |
4ef2574b84eef9fcf2b32d6a8e0632f2
|
|
| BLAKE2b-256 |
7cbb4a65ee3d52be52d8f0a1e6e8f67df76d45aa4225bbbb21e10fa65334d78c
|