Back to DocsWebhooks & API

API Keys & Authentication

Generate and manage API keys for webhook and API access.

Table of contents

Overview

API keys authenticate your webhook and API requests to DealOracle. Every external system that sends data to or reads data from DealOracle needs a valid API key.

How API Keys Work

  • Each key is a unique, randomly generated token
  • Keys are scoped to a specific client account — data sent with a key is automatically associated with that client
  • Include the key in the Authorization header of every request:
Authorization: Bearer YOUR_API_KEY
  • Keys have no expiration by default, but can be manually rotated or revoked at any time

Managing Keys

Generating a New Key

  1. Go to Settings → API Keys
  2. Click Generate New Key
  3. Copy the key immediately — it is displayed only once and cannot be retrieved later
  4. Give the key a descriptive name so you can identify it later

Naming Conventions

Use clear, descriptive names that identify the integration:

  • Unbounce Landing Pages
  • Zapier Integration
  • Custom CRM Sync
  • Partner Lead Feed - Acme Corp

Key Actions

ActionHowNotes
ViewSettings → API KeysSee name, creation date, last used date (key value is masked)
RenameClick the key nameUpdate the label without affecting the key itself
DeleteClick the trash iconImmediately revokes the key — all requests using it will return 401
RegenerateDelete + create newThere is no "rotate" — delete the old key and create a new one

Security Best Practices

API keys grant access to your data. Treat them like passwords.

Do

  • Store keys in environment variables — Never hardcode keys in source code
  • Use separate keys per integration — If one integration is compromised, you only need to revoke one key
  • Rotate keys periodically — Delete old keys and generate new ones every 90 days
  • Delete unused keys — If an integration is decommissioned, immediately delete its key
  • Monitor usage — Check the "Last Used" column in Settings → API Keys to spot keys that haven't been used (may be stale)

Don't

  • Never expose keys in client-side code — Browser JavaScript, mobile apps, or public repositories
  • Never share keys via email or chat — Use a secure secrets manager or vault
  • Never use one key for everything — Makes revocation difficult and increases blast radius
  • Never commit keys to version control — Add .env to your .gitignore

If a Key Is Compromised

  1. Immediately delete the compromised key in Settings → API Keys
  2. Generate a new key
  3. Update the integration with the new key
  4. Review recent lead data for any unauthorized entries
#api#api-keys#authentication#security