Account
The account endpoint is used to manage a WunderUpdates account.
/account
GET
Displays information about the account.
Request
curl -X GET https://api.wunderupdates.com/v1/account \
-H "x-api-token: YOUR_API_TOKEN"Response
{
"account": {
"prefix": "abcde123",
"created": 1759276800,
"email": "vendor@example.com",
"license": null,
"subscription": {
"id": "12345",
"customerId": "678",
"orderId": "910",
"productId": "326235",
"variantId": "476261",
"status": "active",
"renewsAt": "2026-11-01T00:00:00.000000Z",
"endsAt": null,
"cancelled": false,
"testMode": false,
"limit": 3
},
"planAlert": null,
"status": {
"active": true,
"extensionCount": 1,
"disabledCount": 0
},
"products": {
"themes": [],
"plugins": []
}
},
"status": 200
}/account/plans
Lists the subscription plans this environment sells.
GET
curl -X GET https://api.wunderupdates.com/v1/account/plans \
-H "x-api-token: YOUR_API_TOKEN"Response
{
"status": 200,
"plans": [
{ "id": "3-month", "limit": 3, "interval": "month" },
{ "id": "3-year", "limit": 3, "interval": "year" }
]
}/account/checkout
Starts one Lemon Squeezy checkout for the logged-in account and returns its URL. The account id in the request body is ignored; the session decides the account.
POST
curl -X POST https://api.wunderupdates.com/v1/account/checkout \
-H "x-api-token: YOUR_API_TOKEN" \
-d '{ "plan": "3-month" }'Response
{
"status": 200,
"url": "https://wundermatics.lemonsqueezy.com/checkout/custom/..."
}/account/subscription/cancel and /account/subscription/resume
Turns renewal off, or back on. The subscription itself is updated by the Lemon Squeezy webhook.
POST
curl -X POST https://api.wunderupdates.com/v1/account/subscription/cancel \
-H "x-api-token: YOUR_API_TOKEN"Response
{
"status": 200,
"subscription": { "id": "12345", "status": "active", "cancelled": false }
}/account/subscription/billing
Returns a fresh Lemon Squeezy customer portal URL. The URL is valid for 24 hours.
POST
curl -X POST https://api.wunderupdates.com/v1/account/subscription/billing \
-H "x-api-token: YOUR_API_TOKEN"Response
{
"status": 200,
"url": "https://app.lemonsqueezy.com/my-orders/..."
}/account/alert/dismiss
Dismisses the plan-reduced alert on the dashboard.
POST
curl -X POST https://api.wunderupdates.com/v1/account/alert/dismiss \
-H "x-api-token: YOUR_API_TOKEN"/account/license
Manages a vendor Lemon Squeezy license key that was already pasted. New subscriptions do not use this endpoint; the checkout starts from /account/checkout and the webhook attaches the subscription.
GET
Displays information about the account license.
Request
curl -X GET https://api.wunderupdates.com/v1/account/license \
-H "x-api-token: YOUR_API_TOKEN"Response
{
"status": 200,
"license": {
"limit": 10,
"expires": 99999999
}
}POST
Adds or replaces the existing license with a new license key.
Request
curl -X POST https://api.wunderupdates.com/v1/account/license \
-H "x-api-token: YOUR_API_TOKEN"
-d '{ "license": "YOUR_LICENSE_KEY" }'Response
{
"status": 200,
"license": {
"limit": 10,
"expires": 99999999
}
}/account/tokens
Manages API tokens on the account. Note that the first API token must be created using the account dashboard and we generally recommend using that if you need to create more tokens.
GET
Displays information about the account API tokens
Request
curl -X GET https://api.wunderupdates.com/v1/account/tokens \
-H "x-api-token: YOUR_API_TOKEN"Response
{
"status": 200,
"tokens": [
{
"name": "my-first-api-token",
"expires": 1237123123
},
{
"name": "external-dev-studio-1",
"expires": 1337123123
}
]
}POST
Generates a new API token for the account. Note that the actual token is only displayed in the response to this request, it's not possible to see it again.
Request
curl -X POST https://api.wunderupdates.com/v1/account/tokens \
-H "x-api-token: YOUR_API_TOKEN"
-d '{ "name": "a-token-name", "expires": 365 }''Parameters
- Name: A string only containing a-z, 0-9, dashes (-) or periods (.). Must be unique for the account.
- Expires: Token expiry time in days. A value between 1-365 or -1 (non expiring token).
Response
{
"status": 200,
"token": {
"token": "ABCD1234-ABCD-ABCD-ABCD-ABCD1234",
"expires": 99999999,
"name": "a-token-name"
}
}/account/tokens/$name
DELETE
Deletes an API token from the account.
Request
curl -X DELETE https://api.wunderupdates.com/v1/account/tokens/token-name \
-H "x-api-token: YOUR_API_TOKEN"Parameters
- Name: The token name
Response
{
"status": 200,
"message: null
}