API Documentation
RESTful API for the PlatPhorm News Network onboarding service.
Base URL
https://onboard.platphormnews.com/apiVersion
v1Format
JSONEndpoints
GET
/healthHealth check endpoint
Response
{
"status": "healthy",
"timestamp": "2026-03-13T00:00:00.000Z",
"version": "1.0.0"
}GET
/v1/check-subdomainCheck if a subdomain is available for registration
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| subdomain | string | Yes | The subdomain to check (3-63 chars, lowercase alphanumeric with hyphens) |
Response
{
"subdomain": "mysite",
"available": true,
"fullDomain": "mysite.platphormnews.com",
"message": "This subdomain is available!"
}Error Response
{
"subdomain": "admin",
"available": false,
"reason": "This subdomain is reserved",
"suggestions": ["admin2026", "admin-hub", "admin-news"]
}POST
/v1/applicationsSubmit a new onboarding application
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| publicUrl | string | Yes | Your existing website URL |
| string | Yes | Contact email address | |
| requestedSubdomain | string | Yes | Desired subdomain |
| displayName | string | No | Site display name |
| description | string | No | Brief site description |
| creatorTypes | string[] | No | Creator categories |
Response
{
"id": "app_1710288000000_abc12345",
"success": true,
"siteId": "site_1710288000000_xyz98765",
"domain": "mysite.platphormnews.com",
"token": "tok_...",
"trackingUrl": "https://docs.platphormnews.com/onboarding/app_..."
}GET
/v1/applications/{id}Get application status and deployment info
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Application ID from submission |
Response
{
"id": "app_1710288000000_abc12345",
"status": "deployed",
"subdomain": "mysite",
"siteName": "My Site",
"repoUrl": "https://github.com/PlatPhormNews/mysite-site",
"siteUrl": "https://mysite.platphormnews.com",
"dashboardUrl": "https://vercel.com/platphormnews/mysite-site",
"deployedAt": "2026-03-13T00:05:00.000Z"
}GET
/v1/network/sitesList all sites in the network
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| category | string | No | Filter by category |
| limit | number | No | Max results (default: 50) |
Response
{
"sites": [
{
"host": "platphormnews.com",
"subdomain": "www",
"name": "PlatPhorm News",
"category": "infrastructure",
"status": "active"
}
],
"total": 84,
"categories": ["infrastructure", "productivity", "entertainment", ...]
}Authentication
Most endpoints are publicly accessible without authentication. For site management endpoints, include your API key in the Authorization header:
Authorization: Bearer tok_your_api_key_hereRate Limits
| Endpoint | Limit | Window |
|---|---|---|
| /v1/check-subdomain | 30 requests | 1 minute |
| /v1/applications | 5 requests | 1 hour |
| All other endpoints | 100 requests | 1 minute |