/services/websites/v1/websites/get-publish-data
Auth
Returns all data needed for the publish popup: - Domain information (wemasy/custom/none) - Versions list with current version (from database) - Deployment status and logs (from Redis + database) - Current action type (generate/generate-deploy) PERFORMANCE: Database-only queries, no filesystem reads
| Header | Type | Description | Example |
|---|---|---|---|
X-RateLimit-Limit |
integer | Maximum number of requests allowed per minute | 60 |
X-RateLimit-Remaining |
integer | Number of requests remaining in the current window | 57 |
| Field | Type | Description |
|---|---|---|
error |
boolean | |
message |
string | |
details |
string|null |
| Header | Type | Description | Example |
|---|---|---|---|
X-RateLimit-Limit |
integer | Maximum number of requests allowed per minute | 60 |
X-RateLimit-Remaining |
integer | Number of requests remaining in the current window | 57 |
| Field | Type | Description |
|---|---|---|
domain |
mixed | |
versions |
mixed | |
current_version_id |
string | |
max_versions |
integer | |
deployment |
mixed |
| Header | Type | Description | Example |
|---|---|---|---|
X-RateLimit-Limit |
integer | Maximum number of requests allowed per minute | 60 |
X-RateLimit-Remaining |
integer | Number of requests remaining in the current window | 57 |
| Field | Type | Description |
|---|---|---|
error |
boolean | |
message |
string |
| Header | Type | Description | Example |
|---|---|---|---|
X-RateLimit-Limit |
integer | Maximum number of requests allowed per minute | 60 |
X-RateLimit-Remaining |
integer | Number of requests remaining in the current window | 57 |
| Field | Type | Description |
|---|---|---|
error |
boolean | |
message |
string |
| Header | Type | Description | Example |
|---|---|---|---|
X-RateLimit-Limit |
integer | Maximum number of requests allowed per minute | 60 |
X-RateLimit-Remaining |
integer | Number of requests remaining in the current window | 57 |
| Field | Type | Description |
|---|---|---|
error |
boolean | |
message |
string |
| Header | Type | Description | Example |
|---|---|---|---|
X-RateLimit-Limit |
integer | Maximum number of requests allowed per minute | 60 |
X-RateLimit-Remaining |
integer | Number of requests remaining in the current window | 57 |
Retry-After |
integer | Seconds until the rate limit resets | 60 |
| Field | Type | Description |
|---|---|---|
error |
boolean | |
message |
string |
curl -X POST "https://api.wemasy.nl/api/services/websites/v1/websites/get-publish-data" \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-H "Accept: application/json"
fetch('https://api.wemasy.nl/api/services/websites/v1/websites/get-publish-data', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_TOKEN',
'Accept': 'application/json' }})
.then(r => r.json())
.then(data => console.log(data));
$response = Http::withToken('YOUR_API_TOKEN')
->accept('application/json')
->post('https://api.wemasy.nl/api/services/websites/v1/websites/get-publish-data');
$data = $response->json();
import requests
headers = {
"Authorization": "Bearer YOUR_API_TOKEN",
"Accept": "application/json"
}
r = requests.post("https://api.wemasy.nl/api/services/websites/v1/websites/get-publish-data", headers=headers)
print(r.json())
{
"domain": {
"type": "custom",
"domain": "wemasy.com",
"wemasy_domain": null,
"dns_records_added_at": "2026-02-09 21:17:10",
"dns_status": "verified",
"show_dns_records": false,
"can_switch_to_wemasy": true,
"wemasy_domain_available": false,
"wemasy_suggestion": "wemasy",
"dns_records": null,
"can_use_custom_domain": true
},
"versions": [
{
"name": "v20260330",
"version_id": "20260330214759-5422",
"date": "30 Mar 2026, 11:50 PM",
"full_date": "2026-03-30 21:50:06",
"size": "1052.66 MB",
"size_bytes": 1103794012.16,
"deployTime": "30 Mar 2026, 11:50 PM",
"isLive": true,
"isLatest": true
}
],
"current_version_id": "20260330214759-5422",
"max_versions": 8,
"deployment": {
"status": "testing",
"action": null,
"is_active": false
}
}