{
  "$type": "site.standard.document",
  "bskyPostRef": {
    "cid": "bafyreidr7bjkp5xnr2qn5tdxjqqui5cqzbmg3liacyhjfziv7udo3av37u",
    "uri": "at://did:plc:lk3jfj3zq4k4wxnk474axylu/app.bsky.feed.post/3mna3tguyl332"
  },
  "path": "/t/missing-api-logs-when-calling-from-openclaw/1382191#post_2",
  "publishedAt": "2026-06-01T12:12:00.000Z",
  "site": "https://community.openai.com",
  "textContent": "bottom at the tip:\n\n### API defaults:\n\nResponses: `\"store\":true`\nChat Completions: `\"store\":false` (on all but new accounts)\n\nThe default on OpenAI’s Chat Completions is not to store logs or artifacts of a chat, and if they are stored, they are under “completions” and not “logs” of Responses.\n\nNot storing server data retention is the pattern you want for self-managed chats, code where you have your own logging and even telemetry reporting. Not to have personal data persisted, unreliably in a way that can’t be trusted for auditing.\n\nThis is controlled by the “store” API parameter that you send in a call to override the default. What does OpenClaw even do or what endpoint is it using - can you answer about the calls the software you are using is actually making?\n\nYou will note in `packages/llm-core/src/types.ts`:\n\n\n    /**\n     * Compatibility settings for OpenAI-compatible completions APIs.\n     * Use this to override URL-based auto-detection for custom providers.\n     */\n    export interface OpenAICompletionsCompat {\n      /** Whether the provider supports the `store` field. Default: auto-detected from URL. */\n      supportsStore?: boolean;\n      /** Whether the provider supports the `developer` role (vs `system`). Default: auto-detected from URL. */\n      supportsDeveloperRole?: boolean;\n      /** Whether the provider supports `reasoning_effort`. Default: auto-detected from URL. */\n      supportsReasoningEffort?: boolean;\n      /** Whether the provider supports `stream_options: { include_usage: true }` for token usage in streaming responses. Default: true. */\n      supportsUsageInStreaming?: boolean;\n      /** Which field to use for max tokens. Default: auto-detected from URL. */\n      maxTokensField?: \"max_completion_tokens\" | \"max_tokens\";\n      /** Whether tool results require the `name` field. Default: auto-detected from URL. */\n\n\nThere’s your store parameter mentioned. Chat Completions parameters like “max_completion_tokens” and “reasoning_effort” are seen.\n\nThen you go down to more types, shapes for the code running API calls itself - no store option.\n\n* * *\n\nIn the API platform management:\n\nThat is not a “force a store override” and doesn’t seem to do much. You still would need to be looking in “completions” with calls using store:true to see any Chat Completions calls that were made (and have lower quality because you can’t repeat back a past turn’s reasoning).\n\nI do not have that issue because I do not want stored “chat” products, which on Responses seems a leak that persist forever, as I still have release day logs.\n\nThat’s enough “clawing” through that code for me for a while - you can have an AI find where, how, what, etc about the underlying API call after you have done the “configure”. And looking through my own logs, cases where storing is purposefully turned on, hopefully the answer is not…",
  "title": "Missing API Logs when calling from OpenClaw"
}