#2276·gitleaks

Add Composio API key rules (ak_, oak_, uak_)

Author: groovyBugifyCreated Sep 17, 2026Updated Sep 17, 2026

Is your feature request related to a problem? Please describe. Gitleaks has no rules for Composio API keys. I work at Composio (composio.dev) and am the point of contact for the key formats. A leaked key gives access to a project's tools, connected accounts and triggers, so we want every scanner to catch them by default.

Describe the solution you'd like Three rules, one per key type. All keys are a fixed prefix followed by URL-safe nanoid characters [A-Za-z0-9_-]:

  • composio-project-api-key: ak_ + 20 characters
  • composio-org-api-key: oak_ + 20 characters
  • composio-user-api-key: uak_ + 43 characters

Keys have no checksum. oak_ and uak_ contain ak_, so the project rule needs a boundary before the prefix or it double-reports the other two.

Describe alternatives you've considered The built-in generic-api-key rule already catches COMPOSIO_API_KEY=ak_... when a keyword is nearby, but misses a bare key in JSON or YAML config and cannot say which key type leaked.

Additional context PR #2274 implements the three rules with true and false positive vectors (all synthetic, never minted). Format spec and revocation endpoint: https://docs.composio.dev/reference/api-reference/api-keys/postApiKeyRevocation

cc @zricethezav