Skip to main content

Official Python SDK for the Cavaridge public API.

Project description

cavaridge

Official Python SDK for the Cavaridge™ public API.

Install

pip install cavaridge

Quickstart

import os
from cavaridge import CavaridgeClient

client = CavaridgeClient(api_key=os.environ["CAVARIDGE_API_KEY"])

page = client.aegis.list_scans(limit=5)
for scan in page["data"]:
    print(scan["id"], scan["status"])

# Paginate everything:
for finding in client.paginate("GET", "/v2026-04-27/aegis/findings", query={"severity": "high"}):
    print(finding)

Auth

  • API key: CavaridgeClient(api_key="sk_live_...") (sandbox: sk_test_...).
  • OAuth bearer: CavaridgeClient(bearer_token="...").
  • Falls back to CAVARIDGE_API_KEY env var when neither is provided.

Idempotency

client.cavalier.create_quote(
    client_id="ten_abc",
    line_items=[{"catalog_id": "operations_pro", "quantity": 1}],
    idempotency_key="qt_create_2026-05-04_001",
)

Errors

Failures raise CavaridgeError with .type, .status, .detail, .request_id, and .documentation_url.

from cavaridge import CavaridgeError

try:
    client.reclaim.execute_policy("pol_abc")
except CavaridgeError as err:
    if err.status == 403 and err.type.endswith("/insufficient_scope"):
        print("need reclaim.policies.manage scope")
    raise

Retries

Default: 3 retries on 429 and 5xx with exponential backoff (250ms → 500ms → 1000ms). Override with max_retries.

Sandbox

CavaridgeClient(api_key=os.environ["CAVARIDGE_TEST_KEY"], base_url="https://api-sandbox.cavaridge.app")

Versioning

SDK semver maps to spec dated versions:

  • major → API dated version
  • minor → additive features within a dated version
  • patch → bug fixes only

Docs

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

cavaridge-0.1.0.tar.gz (5.5 kB view details)

Uploaded Source

Built Distribution

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

cavaridge-0.1.0-py3-none-any.whl (4.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for cavaridge-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8154f61f90dbd9e04dba583b274dbb5da48ecaaf8ad2be29b9aa841c532eea50
MD5 97ddd6316f2cab9aa92b319f9aaca5e3
BLAKE2b-256 fbd768abaa030148a2bc26c9517bd413134933c7976932a36f9eff85f9143f71

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cavaridge-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for cavaridge-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 50b74e8a7d10d00bcb7a2f9e1367998894b8c9dc3cf457aac8c4538f6d14d05d
MD5 a562aeae2a66a3bf31da224c80d85653
BLAKE2b-256 a2f8d9e56be0d7a19d36b8a6d27c4ee32fb54c165961f2c99ec5f36456a6db07

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