Reading a log entry

Click a request in the list on the Logs tab to open its details on the right. The details show when the request was made, who made it and from where, what was sent and what came back. For a failed request, you can also ask for a plain-language summary of the error.

Quick reference

Where to find it: Settings (cog icon, bottom left) → Audit Logs → Logs, then click a request

Who can use it: You need a role that includes Audit Logs and Identity & Access Management in your organisation, such as Organisation Administrator. See Who can use Audit Logs.

Purpose: See exactly what happened in one request

Open a log entry

  1. On the Logs tab, filter the list to the requests you need.
  2. Click a request. Its details open on the right, and the request is highlighted in the list.
  3. Use the up and down arrow keys to step through the list without leaving the details.

The top of the details repeats the status, method, source badge and endpoint.

A log entry's details: timestamp, response time, request ID, IP address, user, referer, user agent, facility and organisation, then the request and response bodiesA log entry's details: timestamp, response time, request ID, IP address, user, referer, user agent, facility and organisation, then the request and response bodies

Figure 1: A log entry: when it happened, who made it, where from, and the request and response bodies

The fields

The fields are shown in capitals in Performance Hub, in this order:

FieldWhat it shows
TimestampThe date and time of the request
Response TimeHow long Performance Hub took to respond, in milliseconds
Request IDA unique ID for this request. Click the copy button to copy it, for example to give to Support.
IP AddressThe IP address the request came from
UserThe email address of the person who made the request
RefererThe page the request was made from, when there is one
User AgentThe browser, app or tool that sent the request
FacilityThe facility the request was for, as "Name (id)", for example Lower Manhattan and its facility ID
OrganisationThe organisation, as "Name (id)"

Request and response

Below the fields are the bodies of the request, when it has any:

SectionWhat it shows
Request POST BodyWhat was sent, for example the reason given for a door unlock or the new hours for a facility. The heading reads "Request POST Body" for every method that sends a body.
Response BodyWhat Performance Hub sent back, including any error message
Query ParametersOptions added to the request, such as a page number or a facility

Click Copy section (the copy icon at the top right of a section) to copy its contents, for example to paste into a support request.

If a request had nothing to show, the details say "No request/response payloads recorded for this entry." Many GET requests, which only read information, have no request body.

AI Error Summary

For a failed request, with a status of 400 or above, the details include an AI Error Summary section.

  1. Click Generate summary.
  2. Read the summary. It explains in plain language what went wrong and what to do next.

The AI Error Summary for a 403 request, explaining that the person making the change didn't have permission to assign the roleThe AI Error Summary for a 403 request, explaining that the person making the change didn't have permission to assign the role

Figure 2: For a failed request, Generate summary explains the error in plain language

  • The summary is generated only when you click Generate summary. Once a summary has been generated, it may show a cached tag.
  • It's generated by AI and may be wrong. Check it against the Response Body, which holds the message Performance Hub actually returned.
  • If the summary can't be generated, a warning asks you to try again later. Read the Response Body in the meantime.

After 7 days: previews

Full request and response bodies are kept for 7 days. After that, longer bodies are cut to a short preview, and the details say "Full request and response payloads are kept for 7 days. Showing a preview for this log." Short bodies that fit in the preview stay in full.

The rest of the log entry, such as who made the request, when and the result, is kept for 90 days.

A log entry older than 7 days, with the preview notice and shortened request and response bodiesA log entry older than 7 days, with the preview notice and shortened request and response bodies

Figure 3: After 7 days only a short preview of the request and response remains

If you might need the full bodies later, open the request and use Copy section within 7 days. A CSV export doesn't include the bodies.

Status codes

The status is the first thing on each row. Its first digit tells you the kind of result:

StatusMeaningExamples
2xxSuccess200 OK, 201 Created
3xxRedirect: the request was sent somewhere else301 Moved
4xxA problem with the request, for example no permission or invalid input400 Bad Request (a value wasn't valid), 401 Unauthorised (not signed in), 403 Forbidden (no permission), 404 Not Found, 409 Conflict (the request clashed with the current state, such as a door in maintenance mode), 429 Too Many Requests (too many requests in a short time)
5xxA server error500 Server Error, 502 Bad Gateway, 503 Service Unavailable

Source badges

Each request has a source badge that says where it came from:

BadgeWhere the request came from
webSomeone using Performance Hub in a browser or the app
api-keyAn integration using an API key, such as a booking or member system. See Partner API authentication.
mcpAn AI agent or AI client connected through MCP. See AI Agents.
model-routerThe Model Router
websocketA live connection, such as a real-time update
guest-tokenA guest link

Other badges may appear.