Get WordPress Site Info

GET /v1/applications/{uuid}/wordpress

Read a Managed WordPress app's site info — its URLs, the generated administrator credentials, provisioning state, and current SMTP configuration. A Managed WordPress app is a platform-managed app type: Ngris provisions a managed database, runs the official WordPress image on a persistent content volume, and auto-installs it with a generated admin. Create one from the dashboard (New Application → WordPress); this endpoint reads the result.

Response (200 OK)

site_url string
The public site URL.
admin_url string
The wp-admin login URL.
admin_user string
The generated administrator username.
admin_password string
The generated administrator password. Rotate it from wp-admin after first login.
admin_email string
The administrator email.
site_title string
The site title.
db_status string
Status of the app's managed database.
state string
provisioning, pending, ready, or failed.
error string
Failure detail when state is failed.
smtp_host / smtp_port / smtp_user / smtp_from / smtp_secure string
Current BYO SMTP settings (see Configure SMTP).
smtp_configured bool
Whether SMTP is configured.
smtp_pass_set bool
Whether an SMTP password is stored (the password itself is never returned).
Request
curl "https://api.ngris.com/v1/applications/a1b2c3d4-…/wordpress" \ -H "X-API-KEY: <your_api_key>"
Response — 200 OK
{ "site_url": "https://my-blog.ngris.app", "admin_url": "https://my-blog.ngris.app/wp-admin", "admin_user": "admin_7f3a", "admin_password": "…", "admin_email": "you@example.com", "site_title": "My Blog", "db_status": "ready", "state": "ready", "error": "", "smtp_host": "smtp.sendgrid.net", "smtp_port": 587, "smtp_user": "apikey", "smtp_from": "hello@example.com", "smtp_secure": "tls", "smtp_configured": true, "smtp_pass_set": true }

Retry a Failed Setup

POST /v1/applications/{uuid}/wordpress/retry

Re-run a WordPress install/rollout that ended in failed, without recreating the app. Ngris re-runs the install and rollout from where it stopped; the state returns to provisioning/pending and, on success, reaches ready.

Response (200 OK)

Returns the updated site info (same shape as GET /wordpress).

Request
curl -X POST \ "https://api.ngris.com/v1/applications/a1b2c3d4-…/wordpress/retry" \ -H "X-API-KEY: <your_api_key>"
Response — 200 OK
{ "state": "provisioning" }

Configure SMTP (Bring Your Own)

POST /v1/applications/{uuid}/wordpress/smtp

Point WordPress at your own email provider (SendGrid, Amazon SES, Mailgun, or any SMTP host) so password resets, notifications, and form mail are delivered from a domain you control. The platform never relays tenant mail through its own servers. Send an empty host to clear the configuration and revert WordPress to its default mail behavior.

Request body (application/json)

host string
SMTP server hostname. Empty clears SMTP.
port int
SMTP port (e.g. 587 for TLS, 465 for SSL).
user string
SMTP username.
pass string
SMTP password. Stored encrypted; never returned.
from string
The From address WordPress sends as.
secure string
tls, ssl, or none.

Response (200 OK)

Returns the updated site info with the new SMTP fields (same shape as GET /wordpress).

Request
curl -X POST \ "https://api.ngris.com/v1/applications/a1b2c3d4-…/wordpress/smtp" \ -H "X-API-KEY: <your_api_key>" \ -H "Content-Type: application/json" \ -d '{ "host": "smtp.sendgrid.net", "port": 587, "user": "apikey", "pass": "<your_smtp_password>", "from": "hello@example.com", "secure": "tls" }'
Request — clear SMTP
curl -X POST \ "https://api.ngris.com/v1/applications/a1b2c3d4-…/wordpress/smtp" \ -H "X-API-KEY: <your_api_key>" \ -H "Content-Type: application/json" \ -d '{ "host": "" }'
Iris