Built-in AI and email require Genie Cloud to be connected to your project. If it is not enabled yet, see Genie Cloud to set it up first.
What you get out of the box
When Genie Cloud is provisioned for your project, Genie automatically adds a set of ready-to-use credentials to your project secrets. You do not have to create them, and you do not have to paste them anywhere — Genie’s generated code reads them on its own.AI text (OpenAI)
Generate text, summaries, chat replies, and other AI content. Backed by OpenAI through Genie.
Email (Resend)
Send transactional email — confirmations, notifications, contact-form messages — through Resend.
ML inference (Hugging Face)
Run machine-learning models for tasks like classification or image work through Hugging Face.
| Secret | What it powers |
|---|---|
OPENAI_API_KEY | AI text generation |
RESEND_API_KEY | Sending email |
HF_TOKEN | Hugging Face model inference |
OPENAI_BASE_URL, RESEND_BASE_URL, and HF_ENDPOINT entries. These tell your app to route requests through Genie. Leave them as they are unless you are switching to your own key (see Bringing your own key below).
How it works
Your app never holds a real OpenAI or Resend key. Instead, the credentials Genie seeds are project-specific access tokens that point at Genie’s secure relay. When your app makes a request:Your app calls the service
Your generated code calls OpenAI, Resend, or Hugging Face as normal, using the seeded credentials.
Genie authenticates and forwards it
The request reaches Genie, which verifies it belongs to your project and then forwards it to the real provider using Genie’s own provider key.
Usage and limits
The built-in credentials are included with Genie Cloud at no extra, per-request charge today. Each request your app makes through them is recorded — provider, endpoint, status, and timing — so Genie can monitor the service and so usage can be attributed to your project. That recorded usage is not currently metered or billed back to you per request: it does not draw down your credits and does not appear as a line item on your invoice. The practical limit on the built-in credentials is a per-project rate limit (a cap on requests per minute), not a usage charge. Normal app traffic stays well under it; if you expect heavy, sustained volume, bring your own key or contact support to raise the limit.Per-request metering and billing for built-in AI and email usage may be introduced in the future. If that changes, it will be reflected here and on the Credits and Plans pages. To keep your costs fully predictable and under your own control, bring your own key — those requests are billed by the provider directly to you.
Limits of the built-in credentials
The included credentials are tuned for the common case — getting features working instantly and affordably. A few constraints come with that:AI model
The built-in OpenAI credential is limited to Genie’s default model, which is selected to be fast and cost-effective for typical app features. If your app requests a different model, the request is rejected. To use a specific or more powerful model, bring your own OpenAI key.Email sender address
Email sent through the built-in Resend credential must use Genie’s verified sending address:email.genie-app.de is the domain Genie has verified for shared use. To send from your own address or domain — for example hello@yourcompany.com — bring your own Resend key.
Bringing your own key
You can replace any of the built-in credentials with your own at any time. This is the right move when you want a specific AI model, your own email domain, your own usage limits, or provider billing in your own account.Create a key with the provider
Sign up with OpenAI, Resend, or Hugging Face and create an API key. For Resend, verify your sending domain in their dashboard first.
Open your project Secrets
In your project, open Settings → Secrets. See Secrets for details.
Replace the value
Edit the relevant secret —
OPENAI_API_KEY, RESEND_API_KEY, or HF_TOKEN — and paste your own key in place of the built-in one.Switching back to the built-in credential later is done by re-running provisioning for the project (the Re-run bootstrap button in the Cloud tab re-seeds the built-in values). A dedicated one-click reset is on the roadmap.
Troubleshooting
| What you see | Likely cause | What to do |
|---|---|---|
| AI requests fail with an “invalid model” error | Your app asked for a model the built-in credential does not allow | Switch the feature to Genie’s default model, or bring your own OpenAI key |
| Email is rejected with a sender/domain error | The app is sending from an address other than noreply@email.genie-app.de | Use the built-in sender address, or bring your own Resend key with a verified domain |
| A service stops working after you edited a secret | The built-in credential was changed or cleared by mistake | Re-run bootstrap from the Cloud tab to restore the built-in values, or paste a valid key of your own |
| Requests start failing under heavy load | You hit the per-project rate limit | Reduce request volume, bring your own key, or contact support to raise the limit |
