No description
| .gitignore | ||
| .python-version | ||
| edgegrid_auth.py | ||
| main.py | ||
| pyproject.toml | ||
| README.md | ||
| uv.lock | ||
AKNetworkList
This file provides usage to Akamai Network List API.
Project Overview
Python-based Akamai API integration tool for managing Client Lists using EdgeGrid authentication.
Environment Setup
This project uses uv for Python package management with Python 3.13+.
Required Environment Variables (stored in .env):
HOST: Akamai API hostnameCLIENT_TOKEN: EdgeGrid client tokenCLIENT_SECRET: EdgeGrid client secretACCESS_TOKEN: EdgeGrid access token
Running the Application
uv run main.py
Architecture
Single-file application (main.py) that provides wrapper functions for Akamai API endpoints:
- Authentication: Uses EdgeGrid authentication via
akamai.edgegridwith credentials from environment variables - Session Management: Single
requests.Sessioninstance with EdgeGrid auth handler - API Functions:
list_api_certificates(): Lists active CPS certificates for a contractget_client_lists(): Retrieves Client List configurationsupdate_client_lists(): Appends IP addresses to a specific Client List (hardcoded:238903_TESTRAMA)activate(): Activates Client List changes to STAGING or PRODUCTION networkget_activation_status(): Checks activation status for a network environment
Current Behavior: The main() function has commented-out API calls and currently only executes get_activation_status() for STAGING.
Dependencies
edgegrid-python: Akamai EdgeGrid authenticationpython-dotenv: Environment variable management