# Get all API keys (Admin/Business)

Admin: returns all integration keys for the tenant, optionally filtered by type. Business: returns only keys scoped to their own business entity. Use pagination parameters (page & limit) for optimal performance.

Endpoint: GET /api-keys
Version: 2.0.53
Security: authJWT, projectKey

## Query parameters:

  - `type` (string)
    Optional filter by integration API key type (database-stored tokens that can be revoked)

  - `includeRevoked` (boolean)
    Include revoked API keys in results (default: false)

  - `page` (number)
    Page number for pagination (1-based)

  - `limit` (number)
    Items per page for pagination

## Response 200 fields (application/json):

  - `id` (string, required)
    Unique identifier for the API key
    Example: f47ac10b-58cc-4372-a567-0e02b2c3d479

  - `type` (string, required)
    Type of API key
    Enum: "TENANT_SYSTEM_JWT", "ADMIN_JWT_ACCESS_TOKEN", "ADMIN_JWT_REFRESH_TOKEN", "USER_JWT_ACCESS_TOKEN", "USER_JWT_REFRESH_TOKEN", "BUSINESS_JWT_ACCESS_TOKEN", "BUSINESS_JWT_REFRESH_TOKEN", "BUSINESS_SYSTEM_JWT", "BLOCKCHAIN_WRITER_JWT", "BLOCKCHAIN_READER_JWT", "TRANSACTION_JWT_ACCESS_TOKEN", "WEBHOOK_OUTBOUND_JWT", "ONE_TIME_TOKEN", "TENANT_ADMIN_JWT"

  - `name` (object)
    Human-readable name for the API key
    Example: JWT Token (Mainnet) - 2025-11-22

  - `createdAt` (string, required)
    Creation timestamp
    Example: 2025-11-22T10:30:00.000Z

  - `shortenedPrivateKey` (string, required)
    Token preview for dashboard identification (first 8 + last 4 characters)
    Example: eyJhbGci...xMjM

  - `expiresAt` (object)
    Expiration timestamp (null = no expiry)
    Example: 2026-11-22T10:30:00.000Z

  - `isRevoked` (boolean, required)
    Indicates if the API key has been revoked
    Example: false

  - `lastUsedAt` (object)
    Last time the API key was used for authentication
    Example: 2025-11-24T14:30:00.000Z

  - `entityId` (object)
    Entity ID this key is scoped to (e.g. businessId for BUSINESS_SYSTEM_JWT)
    Example: biz_abc123

