Open the platform home page and click "Log In" in the top-right corner.
Enter your username and password, then click "Log In".
If you forget your password, click "Forgot Password", enter your registered email, and set a new password via the reset link.
Click "Sign Up" on the login page.
Fill in a username and password.
Enter your email, click "Send Verification Code", and enter the code you receive.
Click "Sign Up" to complete account creation.
Enter a token name — naming by purpose is recommended, e.g. "Production" or "Testing".
Configure expiration time, unlimited quota, model restrictions, IP allowlist, and group as needed.
Click "Submit" and copy the full key immediately; it cannot be viewed again after the dialog is closed.
Multi-turn conversations: chain Responses context with previous_response_id, or pass the message history yourself.
Streaming output: when both the endpoint and the model support it, set stream to true and parse by SSE event boundaries.
Tool calling: associate tool results with the corresponding call_id to avoid mixing results across turns.
Multimodal input: use Base64 for small files; prefer controlled URLs or file URIs for large files, and set the correct MIME type.
Image generation & editing: explicitly specify the model, size, quality, and response format; never write Base64 data directly into logs.
Text-to-speech: OpenAI and Gemini differ in parameters and audio formats — do not reuse the same post-processing logic for both.
Bind an email address or change your password.
Enable 2FA with an authenticator app for stronger login security.
Register a Passkey to log in with fingerprint, face recognition, or a security key.
Configure email, Webhook, Bark, or Gotify notifications.
Set pricing strategy, IP logging, and sidebar display options as needed.
API keys are injected via environment variables or a server-side secret management system.
The target model has been verified as available.
Connection, read, and overall request timeouts are configured.
Concurrency, rate, and budget limits are in place, with bounded retries configured.
Logs do not record API keys, full Base64 payloads, or sensitive prompts.
Timeouts, disconnections, cancellations, and stream termination states are all handled.