Skip to main content

Swiss Army Knife utilities for interacting with Akamai

Project description

Akamai Swiss Army Knife

A simple utility library to perform basic network diagnostics and IP intelligence checks for Akamai.

Installation

pip install akamai-swissarmyknife

Usage

from akamai_swissarmyknife import check_ip

print(check_ip("23.67.253.113"))

Upcoming Features (Next Release Preview)

Aiming to support the Akamai Open APIs to ease automation for security researchers and defenders.

🔐 Akamai WAF & AppSec

  1. get_waf_ruleset_config(policy_id)

    • Description: Retrieve the ruleset configuration for a specific policy.
    • Example: get_waf_ruleset_config("pol-12345")
  2. list_waf_policies()

    • Description: List all WAF security policies associated with an account.
    • Example: list_waf_policies()
  3. get_waf_attack_groups(policy_id)

    • Description: Fetch attack group settings for a given policy.
    • Example: get_waf_attack_groups("pol-67890")
  4. update_waf_rule_threshold(rule_id, threshold)

    • Description: Update anomaly detection thresholds for a rule.
    • Example: update_waf_rule_threshold("rule-001", 10)
  5. toggle_waf_rule(rule_id, enable=True)

    • Description: Enable or disable a specific rule.
    • Example: toggle_waf_rule("rule-001", enable=False)

⚙️ Akamai Control Center Utilities

  1. get_alert_definitions()

    • Description: Get all alert types available in Akamai Control Center.
    • Example: get_alert_definitions()
  2. list_active_alerts()

    • Description: Show currently active alerts in the environment.
    • Example: list_active_alerts()
  3. acknowledge_alert(alert_id)

    • Description: Acknowledge a triggered alert.
    • Example: acknowledge_alert("alert-789")
  4. get_account_info()

    • Description: Fetch account details from the identity management endpoint.
    • Example: get_account_info()
  5. get_contracts()

    • Description: List all contracts available for the account.
    • Example: get_contracts()

🛡️ Network & Edge Intelligence

  1. check_edge_server_status(ip)

    • Description: Lookup if an IP belongs to Akamai's edge network.
    • Example: check_edge_server_status("23.67.253.113")
  2. get_cpcode_usage(cpcode)

    • Description: Monitor usage stats for a specific cpCode.
    • Example: get_cpcode_usage("123456")
  3. list_property_hostnames(property_id)

    • Description: Retrieve all hostnames linked to a specific property.
    • Example: list_property_hostnames("prp_123")
  4. purge_cache_by_url(urls)

    • Description: Programmatically purge edge cache for a list of URLs.
    • Example: purge_cache_by_url(["https://example.com/index.html"])
  5. get_edge_dns_records(zone)

    • Description: Fetch DNS records from Akamai Edge DNS.
    • Example: get_edge_dns_records("example.com")

These APIs will require API client credentials and integration with Akamai's EdgeGrid authentication. Coming soon.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

akamai_swissarmyknife-0.1.0.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

akamai_swissarmyknife-0.1.0-py3-none-any.whl (4.0 kB view details)

Uploaded Python 3

File details

Details for the file akamai_swissarmyknife-0.1.0.tar.gz.

File metadata

  • Download URL: akamai_swissarmyknife-0.1.0.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.6

File hashes

Hashes for akamai_swissarmyknife-0.1.0.tar.gz
Algorithm Hash digest
SHA256 b86d58a584363c942ef7d776218e3a8e7842994e08648062e6aea3de3610b69e
MD5 f6302a5fa5da6f1201006d4145bc9eb9
BLAKE2b-256 0374f8e804e8372c40704c86e4a288e4a0d4adc8b5ad6ff10da0e4803aaf0bce

See more details on using hashes here.

File details

Details for the file akamai_swissarmyknife-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for akamai_swissarmyknife-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 80c074fc1cdc672662e9bac336557587698a523692f4f25e84105b35da18336d
MD5 bd72a1d72c42f94fad9790b6c0e359c5
BLAKE2b-256 2ead1dc9be65ec10e5dffbc81e2f47f900ff79ee260f5d5077ad8e459c2a3a26

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page