---
title: "Get refused and failed platform requests for the last 24 hours"
method: GET
path: "/v1/admin/security/requests"
tags: ["Admin"]
---

# Get refused and failed platform requests for the last 24 hours

`GET /v1/admin/security/requests`

## Request

- Base URL: `https://api.openworklabs.com`
- URL: `https://api.openworklabs.com/v1/admin/security/requests`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Returns hourly counts of refused, rate-limited and failed requests that had no trusted organization (sign-in, token, app registration and stale-credential calls), the busiest endpoints, and findings for failed sign-ins, rate limiting and refusal spikes. No addresses are stored or returned.

## Response `200`

Request activity returned.

- AdminSecurityRequestsResponse
  - `generatedAt` string, date-time, required
  - `range` object, required
    - `hours` integer, required
    - `from` string, date-time, required
    - `to` string, date-time, required
  - `hourly` object[], required
    - `hour` string, date-time, required
    - `refused` integer, required
    - `rateLimited` integer, required
    - `failed` integer, required
    - `failedSignIns` integer, required
  - `endpoints` object[], required
    - `action` string, required
    - `refused` integer, required
    - `rateLimited` integer, required
    - `failed` integer, required
    - `peakHour` integer, required
    - `typicalHour` number, required
  - `findings` AdminSecurityFinding[], required
    - `id` string, required
    - `category` 'access' | 'accounts' | 'automation' | 'credentials' | 'usage', required
    - `severity` 'high' | 'medium' | 'low' | 'clear', required
    - `title` string, required
    - `summary` string, required: What is true now, in one sentence.
    - `rule` string, required: The threshold that decides the severity.
    - `why` string, required
    - `review` string, required: What a reviewer should check next.
    - `value` integer, required
    - `unit` 'count' | 'micro_usd', required
    - `entities` object[], required
      - `id` string, required
      - `label` string, required
      - `detail` string, nullable, required
      - `value` integer, required
      - `severity` 'high' | 'medium' | 'low' | 'clear', required
      - `target` union, required
        - object
          - `type` 'user', required
          - `userId` string, required
        - object
          - `type` 'organization', required
          - `organizationId` string, required
    - `entityCount` integer, required: Matching entities, including any past the listed ones.

## Other responses

- `401`: The caller must be authenticated.
- `403`: The authenticated user is not an admin.

## Changes

- **2026-10-24** `96985dbeccd1`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/openworklabs/apis/den-api/changes/v1/admin/security/requests/get.md)

---

[API](https://skmtc.dev/openworklabs/apis/den-api.md) - [All operations](https://skmtc.dev/openworklabs/apis/den-api/llms.txt) - [OpenAPI document](https://skmtc.dev/openworklabs/apis/den-api/revisions/8170cf4a92ca?raw)
