List API requests

Every request the team's API keys and AI tools made, newest first, a page at a time.

GEThttps://app.usenotix.dev/api/v1/logs

Full access and read only keys can call this. Sending access keys cannot. Key permissions lists the extra rules some calls have.

Every request the team's API keys and AI tools made, newest first, a page at a time. The same rows as the console's Logs page.

Filter by days (1, 7, 15 or 30; default 30), status (a class such as 4xx, or one status such as 404), method, source, apiKeyId and path (part of the endpoint or path). Page with cursor and limit (default 50, max 100): pass nextCursor back as cursor; it is null on the last page.

Reading the log is not itself logged, and neither is the health check.

What is kept

Each request's method, endpoint, path, status, duration, source (api, mcp, smtp, sdk-js, sdk-python or sdk-php, read from the User-Agent), the key and its name, the User-Agent and the X-Request-Id header of the response. Rows are kept 30 days.

Never kept: the query string, the Authorization header, or the full IP address. Only the caller's network is kept (an IPv4 /24, such as 203.0.113.0/24, or an IPv6 /48); with the User-Agent and the time it is still personal data, kept 30 days. In a path, a segment that looks like an email address or a phone number is shown as :redacted.

Who can call it

Full access and read only keys. A full access key that is not limited to one domain reads the whole team's log (scope: team). A read only key, or a key limited to one domain, reads only its own requests (scope: key). Send-only and live AI keys cannot.

Query parameters

daysinteger

Requests from the last 1, 7, 15 or 30 days. Default 30, which is all Notix keeps.

statusstring

A status class (2xx, 4xx, 5xx) or one exact status, such as 404.

apiKeyIdinteger

Only this key's requests. Ignored for a key that reads only its own.

Minimum 0.

methodstring

One of GET, POST, PUT, PATCH, DELETE.

sourcestring

Where the request came from.

One of api, mcp, smtp, sdk-js, sdk-python, sdk-php.

pathstring

Part of the endpoint or path, such as /v1/emails. Case insensitive.

cursorstring

nextCursor from the previous page.

limitinteger

Rows per page, 1 to 100. Default 50.

Minimum 1. Maximum 100.

Headers

Authorizationstringrequired

Bearer followed by your API key.

Errors

400

A filter or cursor is not valid

Every error has the same shape. See all error codes.

curl -X GET "https://app.usenotix.dev/api/v1/logs" \
  -H "Authorization: Bearer $NOTIX_API_KEY"
Response200
{
  "data": [
    {
      "id": "cm1x8f3k20001qz7v5b9d2e4a",
      "createdAt": "string",
      "method": "string",
      "endpoint": "string",
      "path": "string",
      "status": 1,
      "durationMs": 1,
      "source": "string",
      "apiKeyId": 1,
      "apiKeyName": "Acme",
      "requestId": "cm1x8f3k20001qz7v5b9d2e4a"
    }
  ],
  "nextCursor": "string",
  "scope": "team"
}
Open in ClaudeOpen in ChatGPT