Request ids
Every response from the API carries an X-Request-ID header, the call's own id. Log it next to anything
your app does with the result, and you can find that exact call again.
In the SDKs
Every error carries the id of the call that failed.
from geniffy import GeniffyError
try:
mem.context("Who signs the Lumen renewal?")
except GeniffyError as e:
log.warning("geniffy failed: %s (request %s)", e.message, e.request_id)import { GeniffyError } from "geniffy";
try {
await mem.context("Who signs the Lumen renewal?");
} catch (e) {
if (e instanceof GeniffyError) console.warn(`geniffy failed: ${e.message} (request ${e.requestId})`);
}Over HTTP, read the X-Request-ID response header.
In the Geniffy app
Paste a request id into the search on Requests in the Geniffy app to open that call: when it was made, with which key, for which space, what was asked, what came back, how long it took, and which SDK sent it. From there you can run the same call again in the Playground.
Calls are kept for 30 days. When you write to us about a call, send its request id.
Last updated October 5, 2026