Adaptive Security Audit Logs API

BETAAdmin audit log endpoints

Operations 2

GET /v2/audit-logs List audit logs #
GET /v2/audit-logs/{auditLogId} Get audit log details #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/adaptive-security-audit-logs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

adaptive-security-audit-logs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Adaptive API for external integrations.
  title: Adaptive Audit Logs API
  version: v2
servers:
- url: https://api.adaptivesecurity.com
  description: Production API
security:
- bearer-token: []
tags:
- description: BETAAdmin audit log endpoints
  name: Audit Logs
paths:
  /v2/audit-logs:
    get:
      description: BETARetrieve a paginated list of admin audit logs. Supports filtering by date range and action types.
      operationId: listAuditLogs
      parameters:
      - description: Page cursor for pagination
        example: 456e7890-f12b-34c5-d678-901234567890
        in: query
        name: page_after
        required: false
        schema:
          type: string
      - description: Number of results per page (max 1000)
        example: 100
        in: query
        name: page_size
        required: false
        schema:
          type: integer
          default: 100
      - description: Filter audit logs from this date (inclusive, ISO 8601 format)
        example: '2024-01-01T00:00:00Z'
        in: query
        name: start_date
        required: false
        schema:
          type: string
          format: date-time
      - description: Filter audit logs until this date (inclusive, ISO 8601 format)
        example: '2024-12-31T23:59:59Z'
        in: query
        name: end_date
        required: false
        schema:
          type: string
          format: date-time
      - description: Filter by specific action types (e.g., CREATED_TRAINING_CAMPAIGN, SCHEDULED_TRAINING_CAMPAIGN, ADDED_ADMIN)
        example:
        - CREATED_TRAINING_CAMPAIGN
        - SCHEDULED_TRAINING_CAMPAIGN
        in: query
        name: actions
        required: false
        schema:
          type: array
      responses:
        '200':
          content:
            application/json:
              examples:
                Success Response:
                  description: Success Response
                  value:
                    audit_logs:
                    - id: 123e4567-e89b-12d3-a456-426614174000
                      actor:
                        id: a1b2c3d4-e5f6-7a8b-9c0d-e1f2a3b4c5d6
                        email: admin@example.com
                        role: ACCOUNT_OWNER
                      action: CREATED_TRAINING_CAMPAIGN
                      category: SAT_PROGRAM
                      subcategory: TRAINING
                      occurred_at: '2024-12-01T14:30:00Z'
                      message: Created training campaign.
                      success: true
                    - id: 456e7890-f12b-34c5-d678-901234567890
                      actor:
                        id: b2c3d4e5-f6a7-8b9c-0d1e-f2a3b4c5d6e7
                        email: security@example.com
                        role: TEAM_ADMIN
                      action: SCHEDULED_TRAINING_CAMPAIGN
                      category: SAT_PROGRAM
                      subcategory: TRAINING
                      occurred_at: '2024-11-28T09:15:00Z'
                      message: Scheduled training campaign.
                      success: true
                    page_after: 456e7890-f12b-34c5-d678-901234567890
              schema:
                $ref: '#/components/schemas/AuditLogListResponseDto'
          description: Successfully retrieved audit logs
        '400':
          content:
            application/json:
              examples:
                Validation Error:
                  description: Validation Error
                  value:
                    error_code: VALIDATION_ERROR
                    message: Request validation failed
                    status_code: 400
                    request_id: 5f8e9a7b-1c2d-3e4f-5a6b-7c8d9e0f1a2b
                    details:
                    - field: actions
                      message: 'Invalid action value: INVALID_ACTION'
              schema:
                $ref: '#/components/schemas/ValidationErrorResponseDto'
          description: Bad request - Invalid parameters
        '401':
          content:
            application/json:
              examples:
                Unauthorized Error:
                  description: Unauthorized Error
                  value:
                    error_code: INVALID_TOKEN
                    message: The provided authentication token is invalid or expired
                    status_code: 401
                    request_id: dcaf9f7e-6c47-4c93-bb41-0e2d8d9bb0de
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Unauthorized - Invalid or missing authentication token
        '429':
          content:
            application/json:
              examples:
                Rate Limit Error:
                  description: Rate Limit Error
                  value:
                    error_code: RATE_LIMIT_EXCEEDED
                    message: API rate limit exceeded. Please retry after some time
                    status_code: 429
                    request_id: b7c1196e-2c6e-4d17-8f3c-fcb62d6d27a2
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Too many requests - Rate limit exceeded
        '500':
          content:
            application/json:
              examples:
                Internal Server Error:
                  description: Internal Server Error
                  value:
                    error_code: INTERNAL_SERVER_ERROR
                    message: An unexpected error occurred. Please try again later
                    status_code: 500
                    request_id: f351ac3c-cd5e-4ec7-89dc-191fc40a83f2
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Internal server error
      summary: List audit logs
      tags:
      - Audit Logs
  /v2/audit-logs/{auditLogId}:
    get:
      description: BETARetrieve detailed information about a specific audit log entry
      operationId: getAuditLog
      parameters:
      - description: Audit log ID
        example: 123e4567-e89b-12d3-a456-426614174000
        in: path
        name: auditLogId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              examples:
                Success Response:
                  description: Success Response
                  value:
                    id: 123e4567-e89b-12d3-a456-426614174000
                    actor:
                      id: a1b2c3d4-e5f6-7a8b-9c0d-e1f2a3b4c5d6
                      email: admin@example.com
                      role: ACCOUNT_OWNER
                    action: CREATED_TRAINING_CAMPAIGN
                    category: SAT_PROGRAM
                    subcategory: TRAINING
                    occurred_at: '2024-12-01T14:30:00Z'
                    message: Created training campaign.
                    success: true
              schema:
                $ref: '#/components/schemas/AuditLogDto'
          description: Successfully retrieved audit log details
        '400':
          content:
            application/json:
              examples:
                Validation Error:
                  description: Validation Error
                  value:
                    error_code: VALIDATION_ERROR
                    message: Request validation failed
                    status_code: 400
                    request_id: 5f8e9a7b-1c2d-3e4f-5a6b-7c8d9e0f1a2b
                    details:
                    - field: auditLogId
                      message: Invalid UUID format
              schema:
                $ref: '#/components/schemas/ValidationErrorResponseDto'
          description: Bad request - Invalid audit log ID format
        '401':
          content:
            application/json:
              examples:
                Unauthorized Error:
                  description: Unauthorized Error
                  value:
                    error_code: INVALID_TOKEN
                    message: The provided authentication token is invalid or expired
                    status_code: 401
                    request_id: dcaf9f7e-6c47-4c93-bb41-0e2d8d9bb0de
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Unauthorized - Invalid or missing authentication token
        '404':
          content:
            application/json:
              examples:
                Not Found Error:
                  description: Not Found Error
                  value:
                    error_code: RESOURCE_NOT_FOUND
                    message: The requested audit log was not found
                    status_code: 404
                    request_id: 2a3b4c5d-6e7f-8a9b-0c1d-2e3f4a5b6c7d
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Audit log not found
        '429':
          content:
            application/json:
              examples:
                Rate Limit Error:
                  description: Rate Limit Error
                  value:
                    error_code: RATE_LIMIT_EXCEEDED
                    message: API rate limit exceeded. Please retry after some time
                    status_code: 429
                    request_id: b7c1196e-2c6e-4d17-8f3c-fcb62d6d27a2
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Too many requests - Rate limit exceeded
        '500':
          content:
            application/json:
              examples:
                Internal Server Error:
                  description: Internal Server Error
                  value:
                    error_code: INTERNAL_SERVER_ERROR
                    message: An unexpected error occurred. Please try again later
                    status_code: 500
                    request_id: f351ac3c-cd5e-4ec7-89dc-191fc40a83f2
              schema:
                $ref: '#/components/schemas/ErrorResponseDto'
          description: Internal server error
      summary: Get audit log details
      tags:
      - Audit Logs
components:
  schemas:
    ErrorDetail:
      type: object
      description: Field-level validation error details
      properties:
        field:
          type: string
          description: Field name that failed validation
          example: email
        message:
          type: string
          description: Validation error message for this field
          example: Email address is not valid
      required:
      - field
      - message
    AuditLogActingAdminDto:
      type: object
      description: Information about the admin who performed the action
      properties:
        email:
          type: string
          description: Email address of the admin
          example: admin@example.com
        id:
          type: string
          description: Unique identifier for the admin
          example: a1b2c3d4-e5f6-7a8b-9c0d-e1f2a3b4c5d6
        role:
          type: string
          description: Role of the admin
          example: ACCOUNT_OWNER
    AuditLogDto:
      type: object
      description: Admin audit log entry
      properties:
        action:
          type: string
          description: The action that was performed
          example: CREATED_TRAINING_CAMPAIGN
        actor:
          $ref: '#/components/schemas/AuditLogActingAdminDto'
          description: The admin who performed the action
        category:
          type: string
          description: Category of the action
          example: SAT_PROGRAM
        id:
          type: string
          description: Unique identifier for the audit log entry
          example: 123e4567-e89b-12d3-a456-426614174000
        message:
          type: string
          description: Human-readable description of the action
          example: Created training campaign.
        occurred_at:
          type: string
          format: date-time
          description: When the action occurred (ISO 8601 format)
          example: '2024-12-01T14:30:00Z'
        subcategory:
          type: string
          description: Subcategory of the action
          example: TRAINING
        success:
          type: boolean
          description: Whether the action was successful
          example: true
    AuditLogListResponseDto:
      type: object
      description: Paginated list of admin audit logs
      properties:
        audit_logs:
          type: array
          description: List of audit log entries
          items:
            $ref: '#/components/schemas/AuditLogDto'
        page_after:
          type: string
          description: Cursor for the next page of results. Null if this is the last page
          example: 456e7890-f12b-34c5-d678-901234567890
    ValidationErrorResponseDto:
      type: object
      description: Error response for validation failures with field-level details
      properties:
        details:
          type: array
          description: List of field-level validation error details
          items:
            $ref: '#/components/schemas/ErrorDetail'
        error_code:
          type: string
          description: Machine-readable error code
          example: VALIDATION_ERROR
        message:
          type: string
          description: Human-readable error message
          example: Request validation failed
        request_id:
          type: string
          description: Unique request ID for debugging
          example: 8f03bdf9-ac45-4279-8dbe-f28839c2fed3
        status_code:
          type: integer
          format: int32
          description: HTTP status code
          example: 400
      required:
      - details
      - error_code
      - message
      - request_id
      - status_code
    ErrorResponseDto:
      type: object
      description: Standard error response format for all API errors
      properties:
        error_code:
          type: string
          description: Machine-readable error code
          example: RESOURCE_NOT_FOUND
        message:
          type: string
          description: Human-readable error message
          example: The requested user was not found
        request_id:
          type: string
          description: Unique request ID for debugging
          example: 8f03bdf9-ac45-4279-8dbe-f28839c2fed3
        status_code:
          type: integer
          format: int32
          description: HTTP status code
          example: 404
      required:
      - error_code
      - message
      - request_id
      - status_code
  securitySchemes:
    bearer-token:
      description: 'API authentication token obtained from the Adaptive Admin portal (Settings → API Tokens). Include the token in the Authorization header as: Bearer YOUR_TOKEN'
      scheme: bearer
      type: http