Pre-1.0 · one maintainer · Stripe and cards only · no SDKs (client libraries) yet · no production users yet. Docs describe v0.9.1 (29 Oct 2026) · What’s new →
Email setup status
GET
/v1/settings/email
const url = 'http://localhost:8080/v1/settings/email';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url http://localhost:8080/v1/settings/email \ --header 'Authorization: Bearer <token>'Read-only. Email is configured in the server environment, not per
workspace: SMTP_HOST and friends, plus the base URLs email links
are built from. Never returns credentials.
Authorizations
Section titled “Authorizations”Responses
Section titled “Responses”Email setup
Media typeapplication/json
object
smtp_configured
required
False when SMTP_HOST is unset; every email then fails.
boolean
smtp_host
required
The SMTP relay host name, without port or credentials. Empty when not configured.
string
from_address
required
The envelope sender (SMTP_FROM).
string
tls_mode
required
string
links
required
Every environment variable an email link is built from, set or not.
Array<object>
object
env
required
string
set
required
boolean
effect
required
What doesn’t work while it is unset.
string
can_email_setup_links
required
boolean
can_send_invites
required
boolean
Example
{ "tls_mode": "starttls", "links": [ { "env": "HOSTED_INVOICE_BASE_URL" } ]}