Engineering experiences. Delivering reliable software.
Free preview · Full power on SSIT Platform

Get the full White Label experience — join our platform

Unlimited scans, workspace dashboards, API keys, and team seats — plus White Label APIs to embed SSIT tools in your own product under your brand.

Partner APIs wlt_ tokens 16 features

White Label APIs

Join Partner Tenant Manager as an organization, request White Label access, create scoped API tokens, and ship SSIT tools under your brand through a production partner gateway.

curl -X GET "https://ptm.systemsolveit.com/api/wl/v1/security-audit/health" \
  -H "Authorization: Bearer wlt_YOUR_TOKEN"

Onboarding

How organizations get White Label

Five clear steps from first account to your first authenticated gateway call.

  1. Register & open PTM

    Create an SSIT account, then open Partner Tenant Manager and finish organization onboarding.

  2. Subscribe to features

    Entitle the SSIT products you plan to ship under your brand (Security Audit, Media Hub, AIKit, and more).

  3. Request White Label

    Submit a White Label request for SSIT review. Approved orgs receive a WLL- license.

  4. Create a wlt_ token

    In Tokens, create an API key. The secret is shown once — store it on your server only.

  5. Call the gateway

    Authenticate with Authorization: Bearer wlt_… against /api/wl/v1/{featureId}/….

Security

Authentication & scopes

Gateway base: https://ptm.systemsolveit.com/api/wl/v1. Prefer server-side integrations.

Required header

Authorization: Bearer wlt_…

Optional: Content-Type: application/json, Idempotency-Key on writes.

Scope model

Per enabled feature:

{feature}:health {feature}:read {feature}:write {feature}:delete

Best practices

  • Use server-side tokens only — never expose wlt_ secrets in browser apps or public repos.
  • Token scopes are derived from features enabled on your White Label.
  • Health checks use {featureId}:health; reads use :read; writes use :write; deletes use :delete.
# Health check for an enabled feature
curl -sS "https://ptm.systemsolveit.com/api/wl/v1/aikit/health" \
  -H "Authorization: Bearer wlt_YOUR_TOKEN" \
  -H "Accept: application/json"

Create or rotate tokens in PTM · Enable features & open playground

Reference

API documentation by feature

16 White Label features · 533 endpoints · auto-synced from the live SSIT registry. Expand a feature to browse methods, paths, scopes, and responses.

Security Audit 55 endpoints security-audit
security-audit:health security-audit:read security-audit:write security-audit:delete
Method Path Scope Summary
GET
/api/wl/v1/security-audit/health
Details

Lightweight health check for Security Audit. Verifies the feature is enabled for this White Label and that the token includes security-audit:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "security-audit"
  }
}
security-audit:health Confirm Security Audit is enabled for this White Label token
GET
/api/wl/v1/security-audit/settings
Details

List settings for Security Audit, optionally filtered by query params. Path: settings.

Expected: Native admin JSON list or payload for settings (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read List settings
PATCH
/api/wl/v1/security-audit/settings
Details

Partially update a settings in Security Audit. Send only the fields to change. Path: settings.

Expected: Native admin JSON for the updated settings. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
security-audit:write Update settings
GET
/api/wl/v1/security-audit/analytics
Details

Fetch analytics for Security Audit (analytics).

Expected: Native admin JSON list or payload for analytics (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Fetch analytics for Security Audit
GET
/api/wl/v1/security-audit/analytics/periods
Details

List analytics for Security Audit, optionally filtered by query params. Path: analytics/periods.

Expected: Native admin JSON list or payload for periods (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read List analytics
POST
/api/wl/v1/security-audit/analytics/reset
Details

Reset analytics in Security Audit. Send a JSON body as required by the admin API. Path: analytics/reset.

Expected: Native admin JSON for the created reset (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Reset analytics
POST
/api/wl/v1/security-audit/run
Details

Run Security Audit. Send a JSON body as required by the admin API. Path: run.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
security-audit:write Run Security Audit
POST
/api/wl/v1/security-audit/run-github
Details

Create a new run github in Security Audit. Send the native admin JSON body. Path: run-github.

Expected: Native admin JSON for the created run github (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create run github
POST
/api/wl/v1/security-audit/run-archive
Details

Create a new run archive in Security Audit. Send the native admin JSON body. Path: run-archive.

Expected: Native admin JSON for the created run archive (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create run archive
POST
/api/wl/v1/security-audit/kubeconfig
Details

Create a new kubeconfig in Security Audit. Send the native admin JSON body. Path: kubeconfig.

Expected: Native admin JSON for the created kubeconfig (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create kubeconfig
GET
/api/wl/v1/security-audit/reports
Details

List reports for Security Audit, optionally filtered by query params. Path: reports.

Expected: Native admin JSON list or payload for reports (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read List reports
GET
/api/wl/v1/security-audit/reports/mapped
Details

List reports for Security Audit, optionally filtered by query params. Path: reports/mapped.

Expected: Native admin JSON list or payload for mapped (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read List reports
GET
/api/wl/v1/security-audit/reports/:id/overview
Details

Fetch overview for a specific overview in Security Audit (reports/{id}/overview).

Expected: Native admin JSON list or payload for overview (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Fetch overview for overview
GET
/api/wl/v1/security-audit/reports/:id/sbom
Details

Retrieve one sbom (and related fields) from Security Audit by id. Path: reports/{id}/sbom.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get sbom details
GET
/api/wl/v1/security-audit/reports/:id/export/audit-mapped.pdf
Details

Retrieve one audit mapped.pdf (and related fields) from Security Audit by id. Path: reports/{id}/export/audit-mapped.pdf.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get audit mapped.pdf details
GET
/api/wl/v1/security-audit/reports/:id/export/audit.pdf
Details

Retrieve one audit.pdf (and related fields) from Security Audit by id. Path: reports/{id}/export/audit.pdf.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get audit.pdf details
GET
/api/wl/v1/security-audit/reports/:id/export/ai-recommendations.pdf
Details

Retrieve one ai recommendations.pdf (and related fields) from Security Audit by id. Path: reports/{id}/export/ai-recommendations.pdf.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get ai recommendations.pdf details
GET
/api/wl/v1/security-audit/reports/:id/export/mr7-analysis.pdf
Details

Retrieve one mr7 analysis.pdf (and related fields) from Security Audit by id. Path: reports/{id}/export/mr7-analysis.pdf.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get mr7 analysis.pdf details
GET
/api/wl/v1/security-audit/reports/:id/export/defectdojo.json
Details

Retrieve one defectdojo.json (and related fields) from Security Audit by id. Path: reports/{id}/export/defectdojo.json.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get defectdojo.json details
POST
/api/wl/v1/security-audit/reports/:id/rerun-mr7
Details

Create a nested resource or trigger an action on rerun mr7 in Security Audit. Path: reports/{id}/rerun-mr7.

Expected: Native admin JSON for the created rerun mr7 (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create nested rerun mr7 / run action
POST
/api/wl/v1/security-audit/reports/:id/pause
Details

Pause this pause in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/pause.

Expected: Native admin JSON for the created pause (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Pause pause
POST
/api/wl/v1/security-audit/reports/:id/resume
Details

Resume this resume in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/resume.

Expected: Native admin JSON for the created resume (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Resume resume
POST
/api/wl/v1/security-audit/reports/:id/cancel
Details

Cancel this cancel in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/cancel.

Expected: Native admin JSON for the created cancel (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Cancel cancel
POST
/api/wl/v1/security-audit/reports/:id/mapping/run
Details

Run this run in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/mapping/run.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
security-audit:write Run run
GET
/api/wl/v1/security-audit/reports/:id/mapping/status
Details

Check status of a specific statu in Security Audit (reports/{id}/mapping/status).

Expected: Native admin JSON list or payload for statu (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Check status of statu
GET
/api/wl/v1/security-audit/reports/:id/mapping/issues/:mappedIssueId
Details

Retrieve one issue (and related fields) from Security Audit by id. Path: reports/{id}/mapping/issues/{mappedIssueId}.

Expected: Native admin JSON for one issue (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:read Get issue details
GET
/api/wl/v1/security-audit/reports/:id/mapping/issues
Details

Retrieve one issue (and related fields) from Security Audit by id. Path: reports/{id}/mapping/issues.

Expected: Native admin JSON list or payload for issue (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Get issue details
GET
/api/wl/v1/security-audit/workflow/templates
Details

List workflow for Security Audit, optionally filtered by query params. Path: workflow/templates.

Expected: Native admin JSON list or payload for templates (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read List workflow
GET
/api/wl/v1/security-audit/workflow/node-palette
Details

List workflow for Security Audit, optionally filtered by query params. Path: workflow/node-palette.

Expected: Native admin JSON list or payload for node palette (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read List workflow
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/field-options
Details

Retrieve one field option (and related fields) from Security Audit by id. Path: reports/{id}/workflow/ak-bakery/field-options.

Expected: Native admin JSON list or payload for field option (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Get field option details
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/nodes/test
Details

Test this test in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/workflow/ak-bakery/nodes/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
security-audit:write Test test
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/webhook/:nodeId
Details

Retrieve one webhook (and related fields) from Security Audit by id. Path: reports/{id}/workflow/ak-bakery/webhook/{nodeId}.

Expected: Native admin JSON for one webhook (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:read Get webhook details
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/webhook/:nodeId
Details

Create a nested resource or trigger an action on webhook in Security Audit. Path: reports/{id}/workflow/ak-bakery/webhook/{nodeId}.

Expected: Native admin JSON for the created webhook (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create nested webhook / run action
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/webhook/:nodeId/probe
Details

Create a nested resource or trigger an action on probe in Security Audit. Path: reports/{id}/workflow/ak-bakery/webhook/{nodeId}/probe.

Expected: Native admin JSON for the created probe (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create nested probe / run action
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/runs/:runId/exports/:exportId
Details

Retrieve one export (and related fields) from Security Audit by id. Path: reports/{id}/workflow/ak-bakery/runs/{runId}/exports/{exportId}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
security-audit:read Get export details
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/runs
Details

Retrieve one run (and related fields) from Security Audit by id. Path: reports/{id}/workflow/ak-bakery/runs.

Expected: Native admin JSON list or payload for run (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Get run details
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/runs/:runId
Details

Retrieve one run (and related fields) from Security Audit by id. Path: reports/{id}/workflow/ak-bakery/runs/{runId}.

Expected: Native admin JSON for one run (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:read Get run details
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/status
Details

Check status of a specific statu in Security Audit (reports/{id}/workflow/ak-bakery/status).

Expected: Native admin JSON list or payload for statu (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Check status of statu
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/reset-default
Details

Create a nested resource or trigger an action on reset default in Security Audit. Path: reports/{id}/workflow/ak-bakery/reset-default.

Expected: Native admin JSON for the created reset default (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create nested reset default / run action
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/run/pause
Details

Pause this pause in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/workflow/ak-bakery/run/pause.

Expected: Native admin JSON for the created pause (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Pause pause
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/run/resume
Details

Resume this resume in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/workflow/ak-bakery/run/resume.

Expected: Native admin JSON for the created resume (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Resume resume
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/run/cancel
Details

Cancel this cancel in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/workflow/ak-bakery/run/cancel.

Expected: Native admin JSON for the created cancel (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Cancel cancel
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/templates/:templateId/load
Details

Create a nested resource or trigger an action on load in Security Audit. Path: reports/{id}/workflow/ak-bakery/templates/{templateId}/load.

Expected: Native admin JSON for the created load (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create nested load / run action
GET
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery
Details

Retrieve one ak bakery (and related fields) from Security Audit by id. Path: reports/{id}/workflow/ak-bakery.

Expected: Native admin JSON list or payload for ak bakery (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Get ak bakery details
PUT
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery
Details

Fully update / replace a ak bakery in Security Audit. Send the complete resource payload. Path: reports/{id}/workflow/ak-bakery.

Expected: Native admin JSON for the updated ak bakery. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
security-audit:write Replace ak bakery
POST
/api/wl/v1/security-audit/reports/:id/workflow/ak-bakery/run
Details

Run this run in Security Audit. Send a JSON body as required by the admin API. Path: reports/{id}/workflow/ak-bakery/run.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
security-audit:write Run run
GET
/api/wl/v1/security-audit/reports/:id/issues
Details

Retrieve one issue (and related fields) from Security Audit by id. Path: reports/{id}/issues.

Expected: Native admin JSON list or payload for issue (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Get issue details
GET
/api/wl/v1/security-audit/reports/:id/issues/:issueId/ai
Details

Retrieve one ai (and related fields) from Security Audit by id. Path: reports/{id}/issues/{issueId}/ai.

Expected: Native admin JSON list or payload for ai (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
security-audit:read Get ai details
POST
/api/wl/v1/security-audit/reports/:id/issues/:issueId/ask-ai
Details

Create a nested resource or trigger an action on ask ai in Security Audit. Path: reports/{id}/issues/{issueId}/ask-ai.

Expected: Native admin JSON for the created ask ai (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:write Create nested ask ai / run action
GET
/api/wl/v1/security-audit/reports/:id/issues/:issueId
Details

Retrieve one issue (and related fields) from Security Audit by id. Path: reports/{id}/issues/{issueId}.

Expected: Native admin JSON for one issue (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:read Get issue details
PATCH
/api/wl/v1/security-audit/reports/:id/issues/:issueId
Details

Partially update a issue in Security Audit. Send only the fields to change. Path: reports/{id}/issues/{issueId}.

Expected: Native admin JSON for the updated issue. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
security-audit:write Update issue
GET
/api/wl/v1/security-audit/reports/:id
Details

Retrieve one report (and related fields) from Security Audit by id. Path: reports/{id}.

Expected: Native admin JSON for one report (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:read Get report details
GET
/api/wl/v1/security-audit/status/:id
Details

Retrieve one statu (and related fields) from Security Audit by id. Path: status/{id}.

Expected: Native admin JSON for one statu (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
security-audit:read Get statu details
DELETE
/api/wl/v1/security-audit/reports/:id/clone
Details

Permanently delete a clone from Security Audit. Path: reports/{id}/clone.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
security-audit:delete Delete clone
DELETE
/api/wl/v1/security-audit/reports/:id
Details

Permanently delete a report from Security Audit. Path: reports/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
security-audit:delete Delete report
Website Analyzer 12 endpoints website-analyzer
website-analyzer:health website-analyzer:read website-analyzer:write website-analyzer:delete
Method Path Scope Summary
GET
/api/wl/v1/website-analyzer/health
Details

Lightweight health check for Website Analyzer. Verifies the feature is enabled for this White Label and that the token includes website-analyzer:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "website-analyzer"
  }
}
website-analyzer:health Confirm Website Analyzer is enabled for this White Label token
POST
/api/wl/v1/website-analyzer/analyze
Details

Analyze Website Analyzer. Send a JSON body as required by the admin API. Path: analyze.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
website-analyzer:write Analyze Website Analyzer
GET
/api/wl/v1/website-analyzer/reports
Details

List reports for Website Analyzer, optionally filtered by query params. Path: reports.

Expected: Native admin JSON list or payload for reports (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
website-analyzer:read List reports
GET
/api/wl/v1/website-analyzer/reports/:id
Details

Retrieve one report (and related fields) from Website Analyzer by id. Path: reports/{id}.

Expected: Native admin JSON for one report (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
website-analyzer:read Get report details
DELETE
/api/wl/v1/website-analyzer/reports/:id
Details

Permanently delete a report from Website Analyzer. Path: reports/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
website-analyzer:delete Delete report
PATCH
/api/wl/v1/website-analyzer/reports/:id/notes
Details

Partially update a note in Website Analyzer. Send only the fields to change. Path: reports/{id}/notes.

Expected: Native admin JSON for the updated note. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
website-analyzer:write Update note
GET
/api/wl/v1/website-analyzer/reports/:id/pdf
Details

Retrieve one pdf (and related fields) from Website Analyzer by id. Path: reports/{id}/pdf.

Expected: Native admin JSON list or payload for pdf (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
website-analyzer:read Get pdf details
POST
/api/wl/v1/website-analyzer/reports/:id/competitors
Details

Create a nested resource or trigger an action on competitor in Website Analyzer. Path: reports/{id}/competitors.

Expected: Native admin JSON for the created competitor (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
website-analyzer:write Create nested competitor / run action
POST
/api/wl/v1/website-analyzer/reports/:id/backlinks
Details

Create a nested resource or trigger an action on backlink in Website Analyzer. Path: reports/{id}/backlinks.

Expected: Native admin JSON for the created backlink (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
website-analyzer:write Create nested backlink / run action
GET
/api/wl/v1/website-analyzer/settings
Details

List settings for Website Analyzer, optionally filtered by query params. Path: settings.

Expected: Native admin JSON list or payload for settings (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
website-analyzer:read List settings
PATCH
/api/wl/v1/website-analyzer/settings
Details

Partially update a settings in Website Analyzer. Send only the fields to change. Path: settings.

Expected: Native admin JSON for the updated settings. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
website-analyzer:write Update settings
GET
/api/wl/v1/website-analyzer/campaign-periods
Details

List campaign periods for Website Analyzer, optionally filtered by query params. Path: campaign-periods.

Expected: Native admin JSON list or payload for campaign periods (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
website-analyzer:read List campaign periods
SEO Toolkit 18 endpoints seo-config
seo-config:health seo-config:read seo-config:write seo-config:delete
Method Path Scope Summary
GET
/api/wl/v1/seo-config/health
Details

Lightweight health check for SEO Toolkit. Verifies the feature is enabled for this White Label and that the token includes seo-config:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "seo-config"
  }
}
seo-config:health Confirm SEO Toolkit is enabled for this White Label token
GET
/api/wl/v1/seo-config
Details

List or fetch the root SEO Toolkit collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
seo-config:read List SEO Toolkit resources
POST
/api/wl/v1/seo-config/update
Details

Create a new update in SEO Toolkit. Send the native admin JSON body. Path: update.

Expected: Native admin JSON for the created update (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create update
POST
/api/wl/v1/seo-config/add
Details

Create a new add in SEO Toolkit. Send the native admin JSON body. Path: add.

Expected: Native admin JSON for the created add (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create add
POST
/api/wl/v1/seo-config/delete
Details

Create a new delete in SEO Toolkit. Send the native admin JSON body. Path: delete.

Expected: Native admin JSON for the created delete (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create delete
POST
/api/wl/v1/seo-config/save-all
Details

Create a new save all in SEO Toolkit. Send the native admin JSON body. Path: save-all.

Expected: Native admin JSON for the created save all (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create save all
POST
/api/wl/v1/seo-config/keyword-research
Details

Create a new keyword research in SEO Toolkit. Send the native admin JSON body. Path: keyword-research.

Expected: Native admin JSON for the created keyword research (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create keyword research
POST
/api/wl/v1/seo-config/keyword-intel
Details

Create a new keyword intel in SEO Toolkit. Send the native admin JSON body. Path: keyword-intel.

Expected: Native admin JSON for the created keyword intel (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create keyword intel
POST
/api/wl/v1/seo-config/strategy-save
Details

Create a new strategy save in SEO Toolkit. Send the native admin JSON body. Path: strategy-save.

Expected: Native admin JSON for the created strategy save (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create strategy save
GET
/api/wl/v1/seo-config/strategy-reports
Details

List strategy reports for SEO Toolkit, optionally filtered by query params. Path: strategy-reports.

Expected: Native admin JSON list or payload for strategy reports (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
seo-config:read List strategy reports
GET
/api/wl/v1/seo-config/strategy-reports/:id
Details

Retrieve one strategy report (and related fields) from SEO Toolkit by id. Path: strategy-reports/{id}.

Expected: Native admin JSON for one strategy report (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:read Get strategy report details
POST
/api/wl/v1/seo-config/content-generate
Details

Create a new content generate in SEO Toolkit. Send the native admin JSON body. Path: content-generate.

Expected: Native admin JSON for the created content generate (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create content generate
POST
/api/wl/v1/seo-config/content-save/:id
Details

Create a nested resource or trigger an action on content save in SEO Toolkit. Path: content-save/{id}.

Expected: Native admin JSON for the created content save (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create nested content save / run action
GET
/api/wl/v1/seo-config/ai-agent-config
Details

List ai agent config for SEO Toolkit, optionally filtered by query params. Path: ai-agent-config.

Expected: Native admin JSON list or payload for ai agent config (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
seo-config:read List ai agent config
POST
/api/wl/v1/seo-config/ai-agent-save
Details

Create a new ai agent save in SEO Toolkit. Send the native admin JSON body. Path: ai-agent-save.

Expected: Native admin JSON for the created ai agent save (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create ai agent save
POST
/api/wl/v1/seo-config/ai-agent-test
Details

Create a new ai agent test in SEO Toolkit. Send the native admin JSON body. Path: ai-agent-test.

Expected: Native admin JSON for the created ai agent test (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create ai agent test
POST
/api/wl/v1/seo-config/ai-content-generate
Details

Create a new ai content generate in SEO Toolkit. Send the native admin JSON body. Path: ai-content-generate.

Expected: Native admin JSON for the created ai content generate (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
seo-config:write Create ai content generate
DELETE
/api/wl/v1/seo-config/ai-agent-config
Details

Permanently delete a ai agent config from SEO Toolkit. Path: ai-agent-config.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
seo-config:delete Delete ai agent config
Media Hub 11 endpoints media-hub
media-hub:health media-hub:read media-hub:write media-hub:delete
Method Path Scope Summary
GET
/api/wl/v1/media-hub/health
Details

Lightweight health check for Media Hub. Verifies the feature is enabled for this White Label and that the token includes media-hub:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "media-hub"
  }
}
media-hub:health Confirm Media Hub is enabled for this White Label token
GET
/api/wl/v1/media-hub
Details

List or fetch the root Media Hub collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
media-hub:read List Media Hub resources
GET
/api/wl/v1/media-hub/statistics
Details

List statistics for Media Hub, optionally filtered by query params. Path: statistics.

Expected: Native admin JSON list or payload for statistics (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
media-hub:read List statistics
GET
/api/wl/v1/media-hub/:id
Details

Retrieve one item (and related fields) from Media Hub by id. Path: {id}.

Expected: Native admin JSON for one item (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
media-hub:read Get item details
POST
/api/wl/v1/media-hub/upload
Details

Upload Media Hub. Send a JSON body as required by the admin API. Path: upload.

Expected: Native admin JSON for the created upload (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
media-hub:write Upload Media Hub
PUT
/api/wl/v1/media-hub/:id
Details

Fully update / replace a item in Media Hub. Send the complete resource payload. Path: {id}.

Expected: Native admin JSON for the updated item. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
media-hub:write Replace item
DELETE
/api/wl/v1/media-hub/:id
Details

Permanently delete a item from Media Hub. Path: {id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
media-hub:delete Delete item
POST
/api/wl/v1/media-hub/:id/restore
Details

Create a nested resource or trigger an action on restore in Media Hub. Path: {id}/restore.

Expected: Native admin JSON for the created restore (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
media-hub:write Create nested restore / run action
DELETE
/api/wl/v1/media-hub/bulk
Details

Permanently delete a bulk from Media Hub. Path: bulk.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
media-hub:delete Delete bulk
POST
/api/wl/v1/media-hub/:id/usage
Details

Create a nested resource or trigger an action on usage in Media Hub. Path: {id}/usage.

Expected: Native admin JSON for the created usage (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
media-hub:write Create nested usage / run action
DELETE
/api/wl/v1/media-hub/:id/usage
Details

Permanently delete a usage from Media Hub. Path: {id}/usage.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
media-hub:delete Delete usage
Task Manager 52 endpoints task-manager
task-manager:health task-manager:read task-manager:write task-manager:delete
Method Path Scope Summary
GET
/api/wl/v1/task-manager/health
Details

Lightweight health check for Task Manager. Verifies the feature is enabled for this White Label and that the token includes task-manager:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "task-manager"
  }
}
task-manager:health Confirm Task Manager is enabled for this White Label token
GET
/api/wl/v1/task-manager/admins
Details

List admins for Task Manager, optionally filtered by query params. Path: admins.

Expected: Native admin JSON list or payload for admins (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
task-manager:read List admins
GET
/api/wl/v1/task-manager/export/example
Details

List export for Task Manager, optionally filtered by query params. Path: export/example.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read List export
GET
/api/wl/v1/task-manager/export/example-milestones
Details

List export for Task Manager, optionally filtered by query params. Path: export/example-milestones.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read List export
GET
/api/wl/v1/task-manager/export/projects/:id
Details

Retrieve one project (and related fields) from Task Manager by id. Path: export/projects/{id}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read Get project details
GET
/api/wl/v1/task-manager/export/milestones/:id
Details

Retrieve one milestone (and related fields) from Task Manager by id. Path: export/milestones/{id}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read Get milestone details
GET
/api/wl/v1/task-manager/export/user-stories/:id
Details

Retrieve one user storie (and related fields) from Task Manager by id. Path: export/user-stories/{id}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read Get user storie details
GET
/api/wl/v1/task-manager/export/tasks/:id
Details

Retrieve one task (and related fields) from Task Manager by id. Path: export/tasks/{id}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read Get task details
GET
/api/wl/v1/task-manager/export/subtasks/:id
Details

Retrieve one subtask (and related fields) from Task Manager by id. Path: export/subtasks/{id}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read Get subtask details
GET
/api/wl/v1/task-manager/export/bugs/:id
Details

Retrieve one bug (and related fields) from Task Manager by id. Path: export/bugs/{id}.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
task-manager:read Get bug details
POST
/api/wl/v1/task-manager/import/project
Details

Create a new import in Task Manager. Send the native admin JSON body. Path: import/project.

Expected: Native admin JSON for the created project (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create import
POST
/api/wl/v1/task-manager/import/milestones
Details

Create a new import in Task Manager. Send the native admin JSON body. Path: import/milestones.

Expected: Native admin JSON for the created milestones (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create import
POST
/api/wl/v1/task-manager/import/user-stories
Details

Create a new import in Task Manager. Send the native admin JSON body. Path: import/user-stories.

Expected: Native admin JSON for the created user stories (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create import
POST
/api/wl/v1/task-manager/import/tasks
Details

Create a new import in Task Manager. Send the native admin JSON body. Path: import/tasks.

Expected: Native admin JSON for the created tasks (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create import
POST
/api/wl/v1/task-manager/import/subtasks
Details

Create a new import in Task Manager. Send the native admin JSON body. Path: import/subtasks.

Expected: Native admin JSON for the created subtasks (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create import
POST
/api/wl/v1/task-manager/import/bugs
Details

Create a new import in Task Manager. Send the native admin JSON body. Path: import/bugs.

Expected: Native admin JSON for the created bugs (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create import
GET
/api/wl/v1/task-manager/projects
Details

List projects for Task Manager, optionally filtered by query params. Path: projects.

Expected: Native admin JSON list or payload for projects (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
task-manager:read List projects
GET
/api/wl/v1/task-manager/projects/:id
Details

Retrieve one project (and related fields) from Task Manager by id. Path: projects/{id}.

Expected: Native admin JSON for one project (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get project details
POST
/api/wl/v1/task-manager/projects
Details

Create a new project in Task Manager. Send the native admin JSON body. Path: projects.

Expected: Native admin JSON for the created projects (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create project
PUT
/api/wl/v1/task-manager/projects/:id
Details

Fully update / replace a project in Task Manager. Send the complete resource payload. Path: projects/{id}.

Expected: Native admin JSON for the updated project. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
task-manager:write Replace project
DELETE
/api/wl/v1/task-manager/projects/:id
Details

Permanently delete a project from Task Manager. Path: projects/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete project
GET
/api/wl/v1/task-manager/projects/:projectId/milestones
Details

Retrieve one milestone (and related fields) from Task Manager by id. Path: projects/{projectId}/milestones.

Expected: Native admin JSON list or payload for milestone (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
task-manager:read Get milestone details
GET
/api/wl/v1/task-manager/milestones/:id
Details

Retrieve one milestone (and related fields) from Task Manager by id. Path: milestones/{id}.

Expected: Native admin JSON for one milestone (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get milestone details
POST
/api/wl/v1/task-manager/milestones
Details

Create a new milestone in Task Manager. Send the native admin JSON body. Path: milestones.

Expected: Native admin JSON for the created milestones (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create milestone
PUT
/api/wl/v1/task-manager/milestones/:id
Details

Fully update / replace a milestone in Task Manager. Send the complete resource payload. Path: milestones/{id}.

Expected: Native admin JSON for the updated milestone. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
task-manager:write Replace milestone
DELETE
/api/wl/v1/task-manager/milestones/:id
Details

Permanently delete a milestone from Task Manager. Path: milestones/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete milestone
GET
/api/wl/v1/task-manager/milestones/:milestoneId/user-stories
Details

Retrieve one user storie (and related fields) from Task Manager by id. Path: milestones/{milestoneId}/user-stories.

Expected: Native admin JSON list or payload for user storie (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
task-manager:read Get user storie details
GET
/api/wl/v1/task-manager/user-stories/:id
Details

Retrieve one user storie (and related fields) from Task Manager by id. Path: user-stories/{id}.

Expected: Native admin JSON for one user storie (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get user storie details
POST
/api/wl/v1/task-manager/user-stories
Details

Create a new user storie in Task Manager. Send the native admin JSON body. Path: user-stories.

Expected: Native admin JSON for the created user stories (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create user storie
PUT
/api/wl/v1/task-manager/user-stories/:id
Details

Fully update / replace a user storie in Task Manager. Send the complete resource payload. Path: user-stories/{id}.

Expected: Native admin JSON for the updated user storie. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
task-manager:write Replace user storie
DELETE
/api/wl/v1/task-manager/user-stories/:id
Details

Permanently delete a user storie from Task Manager. Path: user-stories/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete user storie
GET
/api/wl/v1/task-manager/user-stories/:userStoryId/tasks
Details

Retrieve one task (and related fields) from Task Manager by id. Path: user-stories/{userStoryId}/tasks.

Expected: Native admin JSON list or payload for task (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
task-manager:read Get task details
GET
/api/wl/v1/task-manager/tasks/:id
Details

Retrieve one task (and related fields) from Task Manager by id. Path: tasks/{id}.

Expected: Native admin JSON for one task (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get task details
POST
/api/wl/v1/task-manager/tasks
Details

Create a new task in Task Manager. Send the native admin JSON body. Path: tasks.

Expected: Native admin JSON for the created tasks (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create task
PUT
/api/wl/v1/task-manager/tasks/:id
Details

Fully update / replace a task in Task Manager. Send the complete resource payload. Path: tasks/{id}.

Expected: Native admin JSON for the updated task. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
task-manager:write Replace task
DELETE
/api/wl/v1/task-manager/tasks/:id
Details

Permanently delete a task from Task Manager. Path: tasks/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete task
GET
/api/wl/v1/task-manager/tasks/:taskId/subtasks
Details

Retrieve one subtask (and related fields) from Task Manager by id. Path: tasks/{taskId}/subtasks.

Expected: Native admin JSON list or payload for subtask (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
task-manager:read Get subtask details
GET
/api/wl/v1/task-manager/subtasks/:id
Details

Retrieve one subtask (and related fields) from Task Manager by id. Path: subtasks/{id}.

Expected: Native admin JSON for one subtask (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get subtask details
POST
/api/wl/v1/task-manager/subtasks
Details

Create a new subtask in Task Manager. Send the native admin JSON body. Path: subtasks.

Expected: Native admin JSON for the created subtasks (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create subtask
PUT
/api/wl/v1/task-manager/subtasks/:id
Details

Fully update / replace a subtask in Task Manager. Send the complete resource payload. Path: subtasks/{id}.

Expected: Native admin JSON for the updated subtask. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
task-manager:write Replace subtask
DELETE
/api/wl/v1/task-manager/subtasks/:id
Details

Permanently delete a subtask from Task Manager. Path: subtasks/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete subtask
GET
/api/wl/v1/task-manager/bugs/:entityType/:entityId
Details

Retrieve one bug (and related fields) from Task Manager by id. Path: bugs/{entityType}/{entityId}.

Expected: Native admin JSON for one bug (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get bug details
GET
/api/wl/v1/task-manager/bugs/by-id/:id
Details

Retrieve one by id (and related fields) from Task Manager by id. Path: bugs/by-id/{id}.

Expected: Native admin JSON for one by id (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get by id details
POST
/api/wl/v1/task-manager/bugs
Details

Create a new bug in Task Manager. Send the native admin JSON body. Path: bugs.

Expected: Native admin JSON for the created bugs (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create bug
PUT
/api/wl/v1/task-manager/bugs/:id
Details

Fully update / replace a bug in Task Manager. Send the complete resource payload. Path: bugs/{id}.

Expected: Native admin JSON for the updated bug. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
task-manager:write Replace bug
DELETE
/api/wl/v1/task-manager/bugs/:id
Details

Permanently delete a bug from Task Manager. Path: bugs/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete bug
GET
/api/wl/v1/task-manager/attachments/:entityType/:entityId
Details

Retrieve one attachment (and related fields) from Task Manager by id. Path: attachments/{entityType}/{entityId}.

Expected: Native admin JSON for one attachment (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get attachment details
POST
/api/wl/v1/task-manager/attachments/:entityType/:entityId
Details

Create a nested resource or trigger an action on attachment in Task Manager. Path: attachments/{entityType}/{entityId}.

Expected: Native admin JSON for the created attachment (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create nested attachment / run action
DELETE
/api/wl/v1/task-manager/attachments/:id
Details

Permanently delete a attachment from Task Manager. Path: attachments/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete attachment
GET
/api/wl/v1/task-manager/comments/:entityType/:entityId
Details

Retrieve one comment (and related fields) from Task Manager by id. Path: comments/{entityType}/{entityId}.

Expected: Native admin JSON for one comment (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:read Get comment details
POST
/api/wl/v1/task-manager/comments/:entityType/:entityId
Details

Create a nested resource or trigger an action on comment in Task Manager. Path: comments/{entityType}/{entityId}.

Expected: Native admin JSON for the created comment (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
task-manager:write Create nested comment / run action
DELETE
/api/wl/v1/task-manager/comments/:id
Details

Permanently delete a comment from Task Manager. Path: comments/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
task-manager:delete Delete comment
API Mock Server 37 endpoints api-mock-server
api-mock-server:health api-mock-server:read api-mock-server:write api-mock-server:delete
Method Path Scope Summary
GET
/api/wl/v1/api-mock-server/health
Details

Lightweight health check for API Mock Server. Verifies the feature is enabled for this White Label and that the token includes api-mock-server:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "api-mock-server"
  }
}
api-mock-server:health Confirm API Mock Server is enabled for this White Label token
GET
/api/wl/v1/api-mock-server/overview
Details

Fetch overview for API Mock Server (overview).

Expected: Native admin JSON list or payload for overview (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Fetch overview for API Mock Server
POST
/api/wl/v1/api-mock-server/demo
Details

Generate demo data for API Mock Server. Send a JSON body as required by the admin API. Path: demo.

Expected: Native admin JSON for the created demo (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Generate demo data for API Mock Server
GET
/api/wl/v1/api-mock-server/servers
Details

List servers for API Mock Server, optionally filtered by query params. Path: servers.

Expected: Native admin JSON list or payload for servers (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read List servers
POST
/api/wl/v1/api-mock-server/servers
Details

Create a new server in API Mock Server. Send the native admin JSON body. Path: servers.

Expected: Native admin JSON for the created servers (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create server
POST
/api/wl/v1/api-mock-server/servers/import
Details

Import servers in API Mock Server. Send a JSON body as required by the admin API. Path: servers/import.

Expected: Native admin JSON for the created import (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Import servers
GET
/api/wl/v1/api-mock-server/servers/:id
Details

Retrieve one server (and related fields) from API Mock Server by id. Path: servers/{id}.

Expected: Native admin JSON for one server (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:read Get server details
PUT
/api/wl/v1/api-mock-server/servers/:id
Details

Fully update / replace a server in API Mock Server. Send the complete resource payload. Path: servers/{id}.

Expected: Native admin JSON for the updated server. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
api-mock-server:write Replace server
DELETE
/api/wl/v1/api-mock-server/servers/:id
Details

Permanently delete a server from API Mock Server. Path: servers/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
api-mock-server:delete Delete server
GET
/api/wl/v1/api-mock-server/servers/:serverId/routes
Details

Retrieve one route (and related fields) from API Mock Server by id. Path: servers/{serverId}/routes.

Expected: Native admin JSON list or payload for route (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Get route details
POST
/api/wl/v1/api-mock-server/servers/:serverId/routes
Details

Create a nested resource or trigger an action on route in API Mock Server. Path: servers/{serverId}/routes.

Expected: Native admin JSON for the created route (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create nested route / run action
PUT
/api/wl/v1/api-mock-server/routes/:id
Details

Fully update / replace a route in API Mock Server. Send the complete resource payload. Path: routes/{id}.

Expected: Native admin JSON for the updated route. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
api-mock-server:write Replace route
DELETE
/api/wl/v1/api-mock-server/routes/:id
Details

Permanently delete a route from API Mock Server. Path: routes/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
api-mock-server:delete Delete route
GET
/api/wl/v1/api-mock-server/routes/:routeId/rules
Details

Retrieve one rule (and related fields) from API Mock Server by id. Path: routes/{routeId}/rules.

Expected: Native admin JSON list or payload for rule (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Get rule details
POST
/api/wl/v1/api-mock-server/routes/:routeId/rules
Details

Create a nested resource or trigger an action on rule in API Mock Server. Path: routes/{routeId}/rules.

Expected: Native admin JSON for the created rule (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create nested rule / run action
PUT
/api/wl/v1/api-mock-server/rules/:id
Details

Fully update / replace a rule in API Mock Server. Send the complete resource payload. Path: rules/{id}.

Expected: Native admin JSON for the updated rule. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
api-mock-server:write Replace rule
DELETE
/api/wl/v1/api-mock-server/rules/:id
Details

Permanently delete a rule from API Mock Server. Path: rules/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
api-mock-server:delete Delete rule
GET
/api/wl/v1/api-mock-server/servers/:serverId/logs
Details

Retrieve one log (and related fields) from API Mock Server by id. Path: servers/{serverId}/logs.

Expected: Native admin JSON list or payload for log (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Get log details
GET
/api/wl/v1/api-mock-server/logs/:id
Details

Retrieve one log (and related fields) from API Mock Server by id. Path: logs/{id}.

Expected: Native admin JSON for one log (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:read Get log details
POST
/api/wl/v1/api-mock-server/logs/:id/create-rule
Details

Create a nested resource or trigger an action on create rule in API Mock Server. Path: logs/{id}/create-rule.

Expected: Native admin JSON for the created create rule (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create nested create rule / run action
GET
/api/wl/v1/api-mock-server/servers/:serverId/analytics
Details

Fetch analytics for a specific analytic in API Mock Server (servers/{serverId}/analytics).

Expected: Native admin JSON list or payload for analytic (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Fetch analytics for analytic
GET
/api/wl/v1/api-mock-server/servers/:serverId/snippets
Details

List snippets for a specific snippet in API Mock Server (servers/{serverId}/snippets).

Expected: Native admin JSON list or payload for snippet (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read List snippets for snippet
POST
/api/wl/v1/api-mock-server/rules/test
Details

Test rules in API Mock Server. Send a JSON body as required by the admin API. Path: rules/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
api-mock-server:write Test rules
GET
/api/wl/v1/api-mock-server/servers/:serverId/state
Details

Retrieve one state (and related fields) from API Mock Server by id. Path: servers/{serverId}/state.

Expected: Native admin JSON list or payload for state (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Get state details
PUT
/api/wl/v1/api-mock-server/servers/:serverId/state
Details

Fully update / replace a state in API Mock Server. Send the complete resource payload. Path: servers/{serverId}/state.

Expected: Native admin JSON for the updated state. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
api-mock-server:write Replace state
POST
/api/wl/v1/api-mock-server/servers/:serverId/collections
Details

Create a nested resource or trigger an action on collection in API Mock Server. Path: servers/{serverId}/collections.

Expected: Native admin JSON for the created collection (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create nested collection / run action
DELETE
/api/wl/v1/api-mock-server/collections/:id
Details

Permanently delete a collection from API Mock Server. Path: collections/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
api-mock-server:delete Delete collection
GET
/api/wl/v1/api-mock-server/servers/:serverId/secrets
Details

Retrieve one secret (and related fields) from API Mock Server by id. Path: servers/{serverId}/secrets.

Expected: Native admin JSON list or payload for secret (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Get secret details
POST
/api/wl/v1/api-mock-server/servers/:serverId/secrets
Details

Create a nested resource or trigger an action on secret in API Mock Server. Path: servers/{serverId}/secrets.

Expected: Native admin JSON for the created secret (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create nested secret / run action
DELETE
/api/wl/v1/api-mock-server/secrets/:id
Details

Permanently delete a secret from API Mock Server. Path: secrets/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
api-mock-server:delete Delete secret
GET
/api/wl/v1/api-mock-server/servers/:serverId/export
Details

Export a specific export in API Mock Server (servers/{serverId}/export).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
api-mock-server:read Export export
POST
/api/wl/v1/api-mock-server/servers/:serverId/openapi/import
Details

Import this import in API Mock Server. Send a JSON body as required by the admin API. Path: servers/{serverId}/openapi/import.

Expected: Native admin JSON for the created import (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Import import
GET
/api/wl/v1/api-mock-server/servers/:serverId/openapi/export
Details

Export a specific export in API Mock Server (servers/{serverId}/openapi/export).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
api-mock-server:read Export export
GET
/api/wl/v1/api-mock-server/servers/:serverId/audit
Details

Retrieve one audit (and related fields) from API Mock Server by id. Path: servers/{serverId}/audit.

Expected: Native admin JSON list or payload for audit (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
api-mock-server:read Get audit details
POST
/api/wl/v1/api-mock-server/servers/:serverId/retention
Details

Create a nested resource or trigger an action on retention in API Mock Server. Path: servers/{serverId}/retention.

Expected: Native admin JSON for the created retention (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create nested retention / run action
POST
/api/wl/v1/api-mock-server/servers/:serverId/publish
Details

Publish this publish in API Mock Server. Send a JSON body as required by the admin API. Path: servers/{serverId}/publish.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
api-mock-server:write Publish publish
POST
/api/wl/v1/api-mock-server/validate-upstream
Details

Create a new validate upstream in API Mock Server. Send the native admin JSON body. Path: validate-upstream.

Expected: Native admin JSON for the created validate upstream (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
api-mock-server:write Create validate upstream
Calendar 8 endpoints calendar
calendar:health calendar:read calendar:write calendar:delete
Method Path Scope Summary
GET
/api/wl/v1/calendar/health
Details

Lightweight health check for Calendar. Verifies the feature is enabled for this White Label and that the token includes calendar:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "calendar"
  }
}
calendar:health Confirm Calendar is enabled for this White Label token
GET
/api/wl/v1/calendar/events
Details

List events for Calendar, optionally filtered by query params. Path: events.

Expected: Native admin JSON list or payload for events (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
calendar:read List events
POST
/api/wl/v1/calendar/events
Details

Create a new event in Calendar. Send the native admin JSON body. Path: events.

Expected: Native admin JSON for the created events (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
calendar:write Create event
PUT
/api/wl/v1/calendar/events/:id
Details

Fully update / replace a event in Calendar. Send the complete resource payload. Path: events/{id}.

Expected: Native admin JSON for the updated event. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
calendar:write Replace event
DELETE
/api/wl/v1/calendar/events/:id
Details

Permanently delete a event from Calendar. Path: events/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
calendar:delete Delete event
POST
/api/wl/v1/calendar/events/:id/notify
Details

Create a nested resource or trigger an action on notify in Calendar. Path: events/{id}/notify.

Expected: Native admin JSON for the created notify (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
calendar:write Create nested notify / run action
POST
/api/wl/v1/calendar/sync
Details

Sync Calendar. Send a JSON body as required by the admin API. Path: sync.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
calendar:write Sync Calendar
GET
/api/wl/v1/calendar/admins
Details

List admins for Calendar, optionally filtered by query params. Path: admins.

Expected: Native admin JSON list or payload for admins (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
calendar:read List admins
Letters 12 endpoints letters
letters:health letters:read letters:write letters:delete
Method Path Scope Summary
GET
/api/wl/v1/letters/health
Details

Lightweight health check for Letters. Verifies the feature is enabled for this White Label and that the token includes letters:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "letters"
  }
}
letters:health Confirm Letters is enabled for this White Label token
GET
/api/wl/v1/letters
Details

List or fetch the root Letters collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
letters:read List Letters resources
POST
/api/wl/v1/letters/preview-pdf
Details

Create a new preview pdf in Letters. Send the native admin JSON body. Path: preview-pdf.

Expected: Native admin JSON for the created preview pdf (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
letters:write Create preview pdf
POST
/api/wl/v1/letters/preview-docx
Details

Create a new preview docx in Letters. Send the native admin JSON body. Path: preview-docx.

Expected: Native admin JSON for the created preview docx (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
letters:write Create preview docx
POST
/api/wl/v1/letters
Details

Create a new item in Letters. Send the native admin JSON body. Path: (root).

Expected: Native admin JSON for the created resource (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
letters:write Create item
GET
/api/wl/v1/letters/:id/pdf
Details

Retrieve one pdf (and related fields) from Letters by id. Path: {id}/pdf.

Expected: Native admin JSON list or payload for pdf (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
letters:read Get pdf details
POST
/api/wl/v1/letters/:id/pdf
Details

Create a nested resource or trigger an action on pdf in Letters. Path: {id}/pdf.

Expected: Native admin JSON for the created pdf (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
letters:write Create nested pdf / run action
GET
/api/wl/v1/letters/:id/docx
Details

Retrieve one docx (and related fields) from Letters by id. Path: {id}/docx.

Expected: Native admin JSON list or payload for docx (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
letters:read Get docx details
POST
/api/wl/v1/letters/:id/docx
Details

Create a nested resource or trigger an action on docx in Letters. Path: {id}/docx.

Expected: Native admin JSON for the created docx (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
letters:write Create nested docx / run action
GET
/api/wl/v1/letters/:id
Details

Retrieve one item (and related fields) from Letters by id. Path: {id}.

Expected: Native admin JSON for one item (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
letters:read Get item details
PUT
/api/wl/v1/letters/:id
Details

Fully update / replace a item in Letters. Send the complete resource payload. Path: {id}.

Expected: Native admin JSON for the updated item. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
letters:write Replace item
DELETE
/api/wl/v1/letters/:id
Details

Permanently delete a item from Letters. Path: {id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
letters:delete Delete item
Proposal Creator 9 endpoints proposal-creator
proposal-creator:health proposal-creator:read proposal-creator:write proposal-creator:delete
Method Path Scope Summary
GET
/api/wl/v1/proposal-creator/health
Details

Lightweight health check for Proposal Creator. Verifies the feature is enabled for this White Label and that the token includes proposal-creator:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "proposal-creator"
  }
}
proposal-creator:health Confirm Proposal Creator is enabled for this White Label token
GET
/api/wl/v1/proposal-creator
Details

List or fetch the root Proposal Creator collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
proposal-creator:read List Proposal Creator resources
GET
/api/wl/v1/proposal-creator/default-structure
Details

List default structure for Proposal Creator, optionally filtered by query params. Path: default-structure.

Expected: Native admin JSON list or payload for default structure (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
proposal-creator:read List default structure
POST
/api/wl/v1/proposal-creator
Details

Create a new item in Proposal Creator. Send the native admin JSON body. Path: (root).

Expected: Native admin JSON for the created resource (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
proposal-creator:write Create item
POST
/api/wl/v1/proposal-creator/upload-logo
Details

Create a new upload logo in Proposal Creator. Send the native admin JSON body. Path: upload-logo.

Expected: Native admin JSON for the created upload logo (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
proposal-creator:write Create upload logo
POST
/api/wl/v1/proposal-creator/:id/generate-pdf
Details

Create a nested resource or trigger an action on generate pdf in Proposal Creator. Path: {id}/generate-pdf.

Expected: Native admin JSON for the created generate pdf (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
proposal-creator:write Create nested generate pdf / run action
GET
/api/wl/v1/proposal-creator/:id
Details

Retrieve one item (and related fields) from Proposal Creator by id. Path: {id}.

Expected: Native admin JSON for one item (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
proposal-creator:read Get item details
PUT
/api/wl/v1/proposal-creator/:id
Details

Fully update / replace a item in Proposal Creator. Send the complete resource payload. Path: {id}.

Expected: Native admin JSON for the updated item. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
proposal-creator:write Replace item
DELETE
/api/wl/v1/proposal-creator/:id
Details

Permanently delete a item from Proposal Creator. Path: {id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
proposal-creator:delete Delete item
Customer Service 34 endpoints customer-service
customer-service:health customer-service:read customer-service:write customer-service:delete
Method Path Scope Summary
GET
/api/wl/v1/customer-service/health
Details

Lightweight health check for Customer Service. Verifies the feature is enabled for this White Label and that the token includes customer-service:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "customer-service"
  }
}
customer-service:health Confirm Customer Service is enabled for this White Label token
GET
/api/wl/v1/customer-service/ping
Details

List ping for Customer Service, optionally filtered by query params. Path: ping.

Expected: Native admin JSON list or payload for ping (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read List ping
GET
/api/wl/v1/customer-service/tickets
Details

List tickets for Customer Service, optionally filtered by query params. Path: tickets.

Expected: Native admin JSON list or payload for tickets (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read List tickets
GET
/api/wl/v1/customer-service/tickets/stats
Details

List tickets for Customer Service, optionally filtered by query params. Path: tickets/stats.

Expected: Native admin JSON list or payload for stats (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read List tickets
GET
/api/wl/v1/customer-service/tickets/:id
Details

Retrieve one ticket (and related fields) from Customer Service by id. Path: tickets/{id}.

Expected: Native admin JSON for one ticket (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:read Get ticket details
PUT
/api/wl/v1/customer-service/tickets/:id
Details

Fully update / replace a ticket in Customer Service. Send the complete resource payload. Path: tickets/{id}.

Expected: Native admin JSON for the updated ticket. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace ticket
DELETE
/api/wl/v1/customer-service/tickets/:id
Details

Permanently delete a ticket from Customer Service. Path: tickets/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
customer-service:delete Delete ticket
POST
/api/wl/v1/customer-service/tickets/:id/messages
Details

Create a nested resource or trigger an action on message in Customer Service. Path: tickets/{id}/messages.

Expected: Native admin JSON for the created message (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create nested message / run action
POST
/api/wl/v1/customer-service/tickets/:id/internal-notes
Details

Create a nested resource or trigger an action on internal note in Customer Service. Path: tickets/{id}/internal-notes.

Expected: Native admin JSON for the created internal note (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create nested internal note / run action
POST
/api/wl/v1/customer-service/customers
Details

Create a new customer in Customer Service. Send the native admin JSON body. Path: customers.

Expected: Native admin JSON for the created customers (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create customer
GET
/api/wl/v1/customer-service/customers
Details

List customers for Customer Service, optionally filtered by query params. Path: customers.

Expected: Native admin JSON list or payload for customers (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read List customers
POST
/api/wl/v1/customer-service/customers/init-tracking
Details

Create a new customer in Customer Service. Send the native admin JSON body. Path: customers/init-tracking.

Expected: Native admin JSON for the created init tracking (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create customer
GET
/api/wl/v1/customer-service/customers/init-tracking
Details

List customers for Customer Service, optionally filtered by query params. Path: customers/init-tracking.

Expected: Native admin JSON list or payload for init tracking (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read List customers
GET
/api/wl/v1/customer-service/customers/:id/tracking-config
Details

Retrieve one tracking config (and related fields) from Customer Service by id. Path: customers/{id}/tracking-config.

Expected: Native admin JSON list or payload for tracking config (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read Get tracking config details
POST
/api/wl/v1/customer-service/customers/:id/init-tracking
Details

Create a nested resource or trigger an action on init tracking in Customer Service. Path: customers/{id}/init-tracking.

Expected: Native admin JSON for the created init tracking (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create nested init tracking / run action
PUT
/api/wl/v1/customer-service/customers/:id/tracking-config/:configId
Details

Fully update / replace a tracking config in Customer Service. Send the complete resource payload. Path: customers/{id}/tracking-config/{configId}.

Expected: Native admin JSON for the updated tracking config. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace tracking config
GET
/api/wl/v1/customer-service/customers/:id/tracking-code
Details

Retrieve one tracking code (and related fields) from Customer Service by id. Path: customers/{id}/tracking-code.

Expected: Native admin JSON list or payload for tracking code (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read Get tracking code details
GET
/api/wl/v1/customer-service/customers/:customerId/iframe-key
Details

Retrieve one iframe key (and related fields) from Customer Service by id. Path: customers/{customerId}/iframe-key.

Expected: Native admin JSON list or payload for iframe key (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read Get iframe key details
POST
/api/wl/v1/customer-service/customers/:customerId/iframe-keys/regenerate
Details

Create a nested resource or trigger an action on regenerate in Customer Service. Path: customers/{customerId}/iframe-keys/regenerate.

Expected: Native admin JSON for the created regenerate (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create nested regenerate / run action
GET
/api/wl/v1/customer-service/customers/:id
Details

Retrieve one customer (and related fields) from Customer Service by id. Path: customers/{id}.

Expected: Native admin JSON for one customer (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:read Get customer details
PUT
/api/wl/v1/customer-service/customers/:id
Details

Fully update / replace a customer in Customer Service. Send the complete resource payload. Path: customers/{id}.

Expected: Native admin JSON for the updated customer. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace customer
DELETE
/api/wl/v1/customer-service/customers/:id
Details

Permanently delete a customer from Customer Service. Path: customers/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
customer-service:delete Delete customer
PUT
/api/wl/v1/customer-service/customers/:id/lock
Details

Fully update / replace a lock in Customer Service. Send the complete resource payload. Path: customers/{id}/lock.

Expected: Native admin JSON for the updated lock. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace lock
PUT
/api/wl/v1/customer-service/customers/:id/active
Details

Fully update / replace a active in Customer Service. Send the complete resource payload. Path: customers/{id}/active.

Expected: Native admin JSON for the updated active. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace active
PUT
/api/wl/v1/customer-service/customers/:id/rate-limit
Details

Fully update / replace a rate limit in Customer Service. Send the complete resource payload. Path: customers/{id}/rate-limit.

Expected: Native admin JSON for the updated rate limit. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace rate limit
PUT
/api/wl/v1/customer-service/customers/:id/features
Details

Fully update / replace a feature in Customer Service. Send the complete resource payload. Path: customers/{id}/features.

Expected: Native admin JSON for the updated feature. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace feature
PUT
/api/wl/v1/customer-service/customers/:id/task-manager-projects
Details

Fully update / replace a task manager project in Customer Service. Send the complete resource payload. Path: customers/{id}/task-manager-projects.

Expected: Native admin JSON for the updated task manager project. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace task manager project
PUT
/api/wl/v1/customer-service/customers/:id/subscription
Details

Fully update / replace a subscription in Customer Service. Send the complete resource payload. Path: customers/{id}/subscription.

Expected: Native admin JSON for the updated subscription. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
customer-service:write Replace subscription
POST
/api/wl/v1/customer-service/customers/:id/notifications
Details

Create a nested resource or trigger an action on notification in Customer Service. Path: customers/{id}/notifications.

Expected: Native admin JSON for the created notification (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
customer-service:write Create nested notification / run action
GET
/api/wl/v1/customer-service/customers/:id/notifications
Details

Retrieve one notification (and related fields) from Customer Service by id. Path: customers/{id}/notifications.

Expected: Native admin JSON list or payload for notification (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read Get notification details
GET
/api/wl/v1/customer-service/customers/:id/payment-history
Details

Retrieve one payment history (and related fields) from Customer Service by id. Path: customers/{id}/payment-history.

Expected: Native admin JSON list or payload for payment history (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read Get payment history details
GET
/api/wl/v1/customer-service/iframe-keys
Details

List iframe keys for Customer Service, optionally filtered by query params. Path: iframe-keys.

Expected: Native admin JSON list or payload for iframe keys (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read List iframe keys
DELETE
/api/wl/v1/customer-service/iframe-keys/:keyId
Details

Permanently delete a iframe key from Customer Service. Path: iframe-keys/{keyId}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
customer-service:delete Delete iframe key
GET
/api/wl/v1/customer-service/tracking/analytics
Details

Fetch analytics for tracking in Customer Service (tracking/analytics).

Expected: Native admin JSON list or payload for analytics (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
customer-service:read Fetch analytics for tracking
Tracker 18 endpoints tracker
tracker:health tracker:read tracker:write tracker:delete
Method Path Scope Summary
GET
/api/wl/v1/tracker/health
Details

Lightweight health check for Tracker. Verifies the feature is enabled for this White Label and that the token includes tracker:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "tracker"
  }
}
tracker:health Confirm Tracker is enabled for this White Label token
POST
/api/wl/v1/tracker/visit
Details

Create a new visit in Tracker. Send the native admin JSON body. Path: visit.

Expected: Native admin JSON for the created visit (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:write Create visit
PUT
/api/wl/v1/tracker/visit/:visitId
Details

Fully update / replace a visit in Tracker. Send the complete resource payload. Path: visit/{visitId}.

Expected: Native admin JSON for the updated visit. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
tracker:write Replace visit
POST
/api/wl/v1/tracker/event
Details

Create a new event in Tracker. Send the native admin JSON body. Path: event.

Expected: Native admin JSON for the created event (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:write Create event
POST
/api/wl/v1/tracker/scripts
Details

Create a new script in Tracker. Send the native admin JSON body. Path: scripts.

Expected: Native admin JSON for the created scripts (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:write Create script
GET
/api/wl/v1/tracker/scripts
Details

List scripts for Tracker, optionally filtered by query params. Path: scripts.

Expected: Native admin JSON list or payload for scripts (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
tracker:read List scripts
DELETE
/api/wl/v1/tracker/scripts/:scriptId
Details

Permanently delete a script from Tracker. Path: scripts/{scriptId}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
tracker:delete Delete script
GET
/api/wl/v1/tracker/pages
Details

List pages for Tracker, optionally filtered by query params. Path: pages.

Expected: Native admin JSON list or payload for pages (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
tracker:read List pages
GET
/api/wl/v1/tracker/scripts/:scriptId/pages
Details

Retrieve one page (and related fields) from Tracker by id. Path: scripts/{scriptId}/pages.

Expected: Native admin JSON list or payload for page (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
tracker:read Get page details
POST
/api/wl/v1/tracker/scripts/:scriptId/assign
Details

Assign this assign in Tracker. Send a JSON body as required by the admin API. Path: scripts/{scriptId}/assign.

Expected: Native admin JSON for the created assign (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:write Assign assign
DELETE
/api/wl/v1/tracker/scripts/:scriptId/assign
Details

Permanently delete a assign from Tracker. Path: scripts/{scriptId}/assign.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
tracker:delete Delete assign
PATCH
/api/wl/v1/tracker/scripts/:scriptId/assign/pause
Details

Partially update a pause in Tracker. Send only the fields to change. Path: scripts/{scriptId}/assign/pause.

Expected: Native admin JSON for the updated pause. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
tracker:write Update pause
GET
/api/wl/v1/tracker/visits/:scriptId/grouped
Details

Retrieve one grouped (and related fields) from Tracker by id. Path: visits/{scriptId}/grouped.

Expected: Native admin JSON list or payload for grouped (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
tracker:read Get grouped details
GET
/api/wl/v1/tracker/events/:scriptId/grouped
Details

Retrieve one grouped (and related fields) from Tracker by id. Path: events/{scriptId}/grouped.

Expected: Native admin JSON list or payload for grouped (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
tracker:read Get grouped details
GET
/api/wl/v1/tracker/visits/:scriptId
Details

Retrieve one visit (and related fields) from Tracker by id. Path: visits/{scriptId}.

Expected: Native admin JSON for one visit (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:read Get visit details
GET
/api/wl/v1/tracker/events/:scriptId
Details

Retrieve one event (and related fields) from Tracker by id. Path: events/{scriptId}.

Expected: Native admin JSON for one event (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:read Get event details
GET
/api/wl/v1/tracker/analytics/:scriptId
Details

Retrieve one analytic (and related fields) from Tracker by id. Path: analytics/{scriptId}.

Expected: Native admin JSON for one analytic (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:read Get analytic details
GET
/api/wl/v1/tracker/map/:scriptId
Details

Retrieve one map (and related fields) from Tracker by id. Path: map/{scriptId}.

Expected: Native admin JSON for one map (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
tracker:read Get map details
Social Media Manager 47 endpoints social-media-manager
social-media-manager:health social-media-manager:read social-media-manager:write social-media-manager:delete
Method Path Scope Summary
GET
/api/wl/v1/social-media-manager/health
Details

Lightweight health check for Social Media Manager. Verifies the feature is enabled for this White Label and that the token includes social-media-manager:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "social-media-manager"
  }
}
social-media-manager:health Confirm Social Media Manager is enabled for this White Label token
GET
/api/wl/v1/social-media-manager/scheduler/posts
Details

List scheduler for Social Media Manager, optionally filtered by query params. Path: scheduler/posts.

Expected: Native admin JSON list or payload for posts (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List scheduler
POST
/api/wl/v1/social-media-manager/scheduler/posts/:id/cancel
Details

Cancel this cancel in Social Media Manager. Send a JSON body as required by the admin API. Path: scheduler/posts/{id}/cancel.

Expected: Native admin JSON for the created cancel (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Cancel cancel
GET
/api/wl/v1/social-media-manager/scheduler/logs
Details

List scheduler for Social Media Manager, optionally filtered by query params. Path: scheduler/logs.

Expected: Native admin JSON list or payload for logs (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List scheduler
GET
/api/wl/v1/social-media-manager/scheduler/logs/:postId
Details

Retrieve one log (and related fields) from Social Media Manager by id. Path: scheduler/logs/{postId}.

Expected: Native admin JSON for one log (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get log details
GET
/api/wl/v1/social-media-manager/strategies
Details

List strategies for Social Media Manager, optionally filtered by query params. Path: strategies.

Expected: Native admin JSON list or payload for strategies (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List strategies
GET
/api/wl/v1/social-media-manager/strategies/reminders
Details

List strategies for Social Media Manager, optionally filtered by query params. Path: strategies/reminders.

Expected: Native admin JSON list or payload for reminders (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List strategies
GET
/api/wl/v1/social-media-manager/strategies/:id
Details

Retrieve one strategie (and related fields) from Social Media Manager by id. Path: strategies/{id}.

Expected: Native admin JSON for one strategie (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get strategie details
POST
/api/wl/v1/social-media-manager/strategies
Details

Create a new strategie in Social Media Manager. Send the native admin JSON body. Path: strategies.

Expected: Native admin JSON for the created strategies (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create strategie
PUT
/api/wl/v1/social-media-manager/strategies/:id
Details

Fully update / replace a strategie in Social Media Manager. Send the complete resource payload. Path: strategies/{id}.

Expected: Native admin JSON for the updated strategie. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
social-media-manager:write Replace strategie
DELETE
/api/wl/v1/social-media-manager/strategies/:id
Details

Permanently delete a strategie from Social Media Manager. Path: strategies/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
social-media-manager:delete Delete strategie
GET
/api/wl/v1/social-media-manager/strategies/tasks/:taskId
Details

Retrieve one task (and related fields) from Social Media Manager by id. Path: strategies/tasks/{taskId}.

Expected: Native admin JSON for one task (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get task details
POST
/api/wl/v1/social-media-manager/strategies/:strategyId/tasks
Details

Create a nested resource or trigger an action on task in Social Media Manager. Path: strategies/{strategyId}/tasks.

Expected: Native admin JSON for the created task (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create nested task / run action
PUT
/api/wl/v1/social-media-manager/strategies/tasks/:taskId
Details

Fully update / replace a task in Social Media Manager. Send the complete resource payload. Path: strategies/tasks/{taskId}.

Expected: Native admin JSON for the updated task. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
social-media-manager:write Replace task
DELETE
/api/wl/v1/social-media-manager/strategies/tasks/:taskId
Details

Permanently delete a task from Social Media Manager. Path: strategies/tasks/{taskId}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
social-media-manager:delete Delete task
POST
/api/wl/v1/social-media-manager/strategies/tasks/:taskId/assign-post
Details

Create a nested resource or trigger an action on assign post in Social Media Manager. Path: strategies/tasks/{taskId}/assign-post.

Expected: Native admin JSON for the created assign post (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create nested assign post / run action
POST
/api/wl/v1/social-media-manager/strategies/tasks/:taskId/remove-post
Details

Create a nested resource or trigger an action on remove post in Social Media Manager. Path: strategies/tasks/{taskId}/remove-post.

Expected: Native admin JSON for the created remove post (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create nested remove post / run action
GET
/api/wl/v1/social-media-manager/strategies/:id/tasks-by-week
Details

Retrieve one tasks by week (and related fields) from Social Media Manager by id. Path: strategies/{id}/tasks-by-week.

Expected: Native admin JSON list or payload for tasks by week (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read Get tasks by week details
GET
/api/wl/v1/social-media-manager/strategies/:id/week/:weekNumber
Details

Retrieve one week (and related fields) from Social Media Manager by id. Path: strategies/{id}/week/{weekNumber}.

Expected: Native admin JSON for one week (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get week details
GET
/api/wl/v1/social-media-manager/performance/dashboard
Details

List performance for Social Media Manager, optionally filtered by query params. Path: performance/dashboard.

Expected: Native admin JSON list or payload for dashboard (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List performance
GET
/api/wl/v1/social-media-manager/performance/strategy/:id
Details

Retrieve one strategy (and related fields) from Social Media Manager by id. Path: performance/strategy/{id}.

Expected: Native admin JSON for one strategy (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get strategy details
GET
/api/wl/v1/social-media-manager/performance/trends
Details

List performance for Social Media Manager, optionally filtered by query params. Path: performance/trends.

Expected: Native admin JSON list or payload for trends (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List performance
POST
/api/wl/v1/social-media-manager/performance/snapshot
Details

Create a new performance in Social Media Manager. Send the native admin JSON body. Path: performance/snapshot.

Expected: Native admin JSON for the created snapshot (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create performance
GET
/api/wl/v1/social-media-manager/performance/export/csv
Details

List performance for Social Media Manager, optionally filtered by query params. Path: performance/export/csv.

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
social-media-manager:read List performance
GET
/api/wl/v1/social-media-manager/oauth/facebook/auth-url
Details

Browser-only Social Media Manager flow at oauth/facebook/auth-url. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

social-media-manager:read GET oauth/facebook/auth-url — browser OAuth / redirect flow
GET
/api/wl/v1/social-media-manager/oauth/instagram/auth-url
Details

Browser-only Social Media Manager flow at oauth/instagram/auth-url. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

social-media-manager:read GET oauth/instagram/auth-url — browser OAuth / redirect flow
GET
/api/wl/v1/social-media-manager/oauth/linkedin/auth-url
Details

Browser-only Social Media Manager flow at oauth/linkedin/auth-url. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

social-media-manager:read GET oauth/linkedin/auth-url — browser OAuth / redirect flow
GET
/api/wl/v1/social-media-manager/oauth/facebook/callback
Details

Browser-only Social Media Manager flow at oauth/facebook/callback. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

social-media-manager:read GET oauth/facebook/callback — browser OAuth / redirect flow
GET
/api/wl/v1/social-media-manager/oauth/instagram/callback
Details

Browser-only Social Media Manager flow at oauth/instagram/callback. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

social-media-manager:read GET oauth/instagram/callback — browser OAuth / redirect flow
GET
/api/wl/v1/social-media-manager/oauth/linkedin/callback
Details

Browser-only Social Media Manager flow at oauth/linkedin/callback. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

social-media-manager:read GET oauth/linkedin/callback — browser OAuth / redirect flow
GET
/api/wl/v1/social-media-manager/tracking/public
Details

List tracking for Social Media Manager, optionally filtered by query params. Path: tracking/public.

Expected: Native admin JSON list or payload for public (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List tracking
GET
/api/wl/v1/social-media-manager/tracking
Details

List tracking for Social Media Manager, optionally filtered by query params. Path: tracking.

Expected: Native admin JSON list or payload for tracking (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List tracking
GET
/api/wl/v1/social-media-manager/tracking/pages
Details

List tracking for Social Media Manager, optionally filtered by query params. Path: tracking/pages.

Expected: Native admin JSON list or payload for pages (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List tracking
POST
/api/wl/v1/social-media-manager/tracking
Details

Create a new tracking in Social Media Manager. Send the native admin JSON body. Path: tracking.

Expected: Native admin JSON for the created tracking (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create tracking
POST
/api/wl/v1/social-media-manager/tracking/test
Details

Test tracking in Social Media Manager. Send a JSON body as required by the admin API. Path: tracking/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
social-media-manager:write Test tracking
GET
/api/wl/v1/social-media-manager/accounts
Details

List accounts for Social Media Manager, optionally filtered by query params. Path: accounts.

Expected: Native admin JSON list or payload for accounts (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List accounts
GET
/api/wl/v1/social-media-manager/accounts/:id
Details

Retrieve one account (and related fields) from Social Media Manager by id. Path: accounts/{id}.

Expected: Native admin JSON for one account (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get account details
POST
/api/wl/v1/social-media-manager/accounts
Details

Create a new account in Social Media Manager. Send the native admin JSON body. Path: accounts.

Expected: Native admin JSON for the created accounts (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create account
DELETE
/api/wl/v1/social-media-manager/accounts/:id
Details

Permanently delete a account from Social Media Manager. Path: accounts/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
social-media-manager:delete Delete account
POST
/api/wl/v1/social-media-manager/accounts/:id/test
Details

Test this test in Social Media Manager. Send a JSON body as required by the admin API. Path: accounts/{id}/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
social-media-manager:write Test test
GET
/api/wl/v1/social-media-manager/posts
Details

List posts for Social Media Manager, optionally filtered by query params. Path: posts.

Expected: Native admin JSON list or payload for posts (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
social-media-manager:read List posts
GET
/api/wl/v1/social-media-manager/posts/:id
Details

Retrieve one post (and related fields) from Social Media Manager by id. Path: posts/{id}.

Expected: Native admin JSON for one post (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:read Get post details
POST
/api/wl/v1/social-media-manager/posts
Details

Create a new post in Social Media Manager. Send the native admin JSON body. Path: posts.

Expected: Native admin JSON for the created posts (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
social-media-manager:write Create post
PUT
/api/wl/v1/social-media-manager/posts/:id
Details

Fully update / replace a post in Social Media Manager. Send the complete resource payload. Path: posts/{id}.

Expected: Native admin JSON for the updated post. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
social-media-manager:write Replace post
DELETE
/api/wl/v1/social-media-manager/posts/:id
Details

Permanently delete a post from Social Media Manager. Path: posts/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
social-media-manager:delete Delete post
PATCH
/api/wl/v1/social-media-manager/posts/:id/status
Details

Partially update a statu in Social Media Manager. Send only the fields to change. Path: posts/{id}/status.

Expected: Native admin JSON for the updated statu. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
social-media-manager:write Update statu
POST
/api/wl/v1/social-media-manager/posts/:id/publish
Details

Publish this publish in Social Media Manager. Send a JSON body as required by the admin API. Path: posts/{id}/publish.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
social-media-manager:write Publish publish
Platform Ads Manager 46 endpoints platform-ads-manager
platform-ads-manager:health platform-ads-manager:read platform-ads-manager:write platform-ads-manager:delete
Method Path Scope Summary
GET
/api/wl/v1/platform-ads-manager/health
Details

Lightweight health check for Platform Ads Manager. Verifies the feature is enabled for this White Label and that the token includes platform-ads-manager:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "platform-ads-manager"
  }
}
platform-ads-manager:health Confirm Platform Ads Manager is enabled for this White Label token
GET
/api/wl/v1/platform-ads-manager
Details

List or fetch the root Platform Ads Manager collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List Platform Ads Manager resources
GET
/api/wl/v1/platform-ads-manager/oauth/:provider/callback
Details

Browser-only Platform Ads Manager flow at oauth/{provider}/callback. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

platform-ads-manager:read GET oauth/{provider}/callback — browser OAuth / redirect flow
GET
/api/wl/v1/platform-ads-manager/hub
Details

List hub for Platform Ads Manager, optionally filtered by query params. Path: hub.

Expected: Native admin JSON list or payload for hub (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List hub
GET
/api/wl/v1/platform-ads-manager/settings
Details

List settings for Platform Ads Manager, optionally filtered by query params. Path: settings.

Expected: Native admin JSON list or payload for settings (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List settings
GET
/api/wl/v1/platform-ads-manager/config/:provider
Details

Retrieve one config (and related fields) from Platform Ads Manager by id. Path: config/{provider}.

Expected: Native admin JSON for one config (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:read Get config details
PUT
/api/wl/v1/platform-ads-manager/config/:provider
Details

Fully update / replace a config in Platform Ads Manager. Send the complete resource payload. Path: config/{provider}.

Expected: Native admin JSON for the updated config. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
platform-ads-manager:write Replace config
GET
/api/wl/v1/platform-ads-manager/capabilities
Details

List capabilities for Platform Ads Manager, optionally filtered by query params. Path: capabilities.

Expected: Native admin JSON list or payload for capabilities (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List capabilities
GET
/api/wl/v1/platform-ads-manager/connections
Details

List connections for Platform Ads Manager, optionally filtered by query params. Path: connections.

Expected: Native admin JSON list or payload for connections (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List connections
POST
/api/wl/v1/platform-ads-manager/oauth/:provider/auth-url
Details

Browser-only Platform Ads Manager flow at oauth/{provider}/auth-url. Not intended for server-side API tokens; use from a browser redirect.

Expected: HTTP redirect (302/303) to the OAuth provider or callback URL — not a JSON body.

{
  "redirect": true
}

Note: Browser-oriented route — prefer server-side use where possible.

platform-ads-manager:write POST oauth/{provider}/auth-url — browser OAuth / redirect flow
DELETE
/api/wl/v1/platform-ads-manager/connections/:id
Details

Permanently delete a connection from Platform Ads Manager. Path: connections/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
platform-ads-manager:delete Delete connection
GET
/api/wl/v1/platform-ads-manager/accounts
Details

List accounts for Platform Ads Manager, optionally filtered by query params. Path: accounts.

Expected: Native admin JSON list or payload for accounts (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List accounts
GET
/api/wl/v1/platform-ads-manager/accounts/remote
Details

List accounts for Platform Ads Manager, optionally filtered by query params. Path: accounts/remote.

Expected: Native admin JSON list or payload for remote (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List accounts
POST
/api/wl/v1/platform-ads-manager/accounts/link
Details

Create a new account in Platform Ads Manager. Send the native admin JSON body. Path: accounts/link.

Expected: Native admin JSON for the created link (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create account
PATCH
/api/wl/v1/platform-ads-manager/accounts/:id
Details

Partially update a account in Platform Ads Manager. Send only the fields to change. Path: accounts/{id}.

Expected: Native admin JSON for the updated account. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
platform-ads-manager:write Update account
POST
/api/wl/v1/platform-ads-manager/accounts/:id/unlink
Details

Create a nested resource or trigger an action on unlink in Platform Ads Manager. Path: accounts/{id}/unlink.

Expected: Native admin JSON for the created unlink (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested unlink / run action
GET
/api/wl/v1/platform-ads-manager/accounts/:id/billing
Details

Retrieve one billing (and related fields) from Platform Ads Manager by id. Path: accounts/{id}/billing.

Expected: Native admin JSON list or payload for billing (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read Get billing details
POST
/api/wl/v1/platform-ads-manager/accounts/:id/billing
Details

Create a nested resource or trigger an action on billing in Platform Ads Manager. Path: accounts/{id}/billing.

Expected: Native admin JSON for the created billing (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested billing / run action
GET
/api/wl/v1/platform-ads-manager/billing
Details

List billing for Platform Ads Manager, optionally filtered by query params. Path: billing.

Expected: Native admin JSON list or payload for billing (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List billing
GET
/api/wl/v1/platform-ads-manager/launch-jobs/:id
Details

Retrieve one launch job (and related fields) from Platform Ads Manager by id. Path: launch-jobs/{id}.

Expected: Native admin JSON for one launch job (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:read Get launch job details
POST
/api/wl/v1/platform-ads-manager/sync/structure
Details

Create a new sync in Platform Ads Manager. Send the native admin JSON body. Path: sync/structure.

Expected: Native admin JSON for the created structure (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create sync
POST
/api/wl/v1/platform-ads-manager/sync/metrics
Details

Create a new sync in Platform Ads Manager. Send the native admin JSON body. Path: sync/metrics.

Expected: Native admin JSON for the created metrics (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create sync
GET
/api/wl/v1/platform-ads-manager/analytics/overview
Details

Fetch overview for analytics in Platform Ads Manager (analytics/overview).

Expected: Native admin JSON list or payload for overview (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read Fetch overview for analytics
GET
/api/wl/v1/platform-ads-manager/analytics/entity/:type/:id
Details

Retrieve one entity (and related fields) from Platform Ads Manager by id. Path: analytics/entity/{type}/{id}.

Expected: Native admin JSON for one entity (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:read Get entity details
GET
/api/wl/v1/platform-ads-manager/analytics/export
Details

Export analytics in Platform Ads Manager (analytics/export).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
platform-ads-manager:read Export analytics
POST
/api/wl/v1/platform-ads-manager/ai-draft
Details

Create a new ai draft in Platform Ads Manager. Send the native admin JSON body. Path: ai-draft.

Expected: Native admin JSON for the created ai draft (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create ai draft
POST
/api/wl/v1/platform-ads-manager/creatives
Details

Create a new creative in Platform Ads Manager. Send the native admin JSON body. Path: creatives.

Expected: Native admin JSON for the created creatives (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create creative
GET
/api/wl/v1/platform-ads-manager/plans
Details

List plans for Platform Ads Manager, optionally filtered by query params. Path: plans.

Expected: Native admin JSON list or payload for plans (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read List plans
GET
/api/wl/v1/platform-ads-manager/plans/:planId
Details

Retrieve one plan (and related fields) from Platform Ads Manager by id. Path: plans/{planId}.

Expected: Native admin JSON for one plan (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:read Get plan details
POST
/api/wl/v1/platform-ads-manager/plans/:planId/apply
Details

Create a nested resource or trigger an action on apply in Platform Ads Manager. Path: plans/{planId}/apply.

Expected: Native admin JSON for the created apply (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested apply / run action
POST
/api/wl/v1/platform-ads-manager/google/campaigns/from-social-post
Details

Create a new google in Platform Ads Manager. Send the native admin JSON body. Path: google/campaigns/from-social-post.

Expected: Native admin JSON for the created from social post (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create google
GET
/api/wl/v1/platform-ads-manager/:provider/campaigns
Details

Retrieve one campaign (and related fields) from Platform Ads Manager by id. Path: {provider}/campaigns.

Expected: Native admin JSON list or payload for campaign (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read Get campaign details
POST
/api/wl/v1/platform-ads-manager/:provider/campaigns
Details

Create a nested resource or trigger an action on campaign in Platform Ads Manager. Path: {provider}/campaigns.

Expected: Native admin JSON for the created campaign (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested campaign / run action
GET
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id
Details

Retrieve one campaign (and related fields) from Platform Ads Manager by id. Path: {provider}/campaigns/{id}.

Expected: Native admin JSON for one campaign (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:read Get campaign details
PUT
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id
Details

Fully update / replace a campaign in Platform Ads Manager. Send the complete resource payload. Path: {provider}/campaigns/{id}.

Expected: Native admin JSON for the updated campaign. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
platform-ads-manager:write Replace campaign
POST
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id/launch
Details

Create a nested resource or trigger an action on launch in Platform Ads Manager. Path: {provider}/campaigns/{id}/launch.

Expected: Native admin JSON for the created launch (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested launch / run action
POST
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id/schedule
Details

Create a nested resource or trigger an action on schedule in Platform Ads Manager. Path: {provider}/campaigns/{id}/schedule.

Expected: Native admin JSON for the created schedule (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested schedule / run action
POST
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id/schedule/cancel
Details

Cancel this cancel in Platform Ads Manager. Send a JSON body as required by the admin API. Path: {provider}/campaigns/{id}/schedule/cancel.

Expected: Native admin JSON for the created cancel (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Cancel cancel
POST
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id/status
Details

Check status of this statu in Platform Ads Manager. Send a JSON body as required by the admin API. Path: {provider}/campaigns/{id}/status.

Expected: Native admin JSON for the created statu (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Check status of statu
PUT
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id/budget
Details

Fully update / replace a budget in Platform Ads Manager. Send the complete resource payload. Path: {provider}/campaigns/{id}/budget.

Expected: Native admin JSON for the updated budget. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
platform-ads-manager:write Replace budget
POST
/api/wl/v1/platform-ads-manager/:provider/campaigns/:id/link-social-post
Details

Create a nested resource or trigger an action on link social post in Platform Ads Manager. Path: {provider}/campaigns/{id}/link-social-post.

Expected: Native admin JSON for the created link social post (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested link social post / run action
POST
/api/wl/v1/platform-ads-manager/:provider/entities/:type/:id/status
Details

Check status of this statu in Platform Ads Manager. Send a JSON body as required by the admin API. Path: {provider}/entities/{type}/{id}/status.

Expected: Native admin JSON for the created statu (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Check status of statu
GET
/api/wl/v1/platform-ads-manager/:provider/ads
Details

Retrieve one ads (and related fields) from Platform Ads Manager by id. Path: {provider}/ads.

Expected: Native admin JSON list or payload for ads (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
platform-ads-manager:read Get ads details
GET
/api/wl/v1/platform-ads-manager/:provider/ads/:id
Details

Retrieve one ads (and related fields) from Platform Ads Manager by id. Path: {provider}/ads/{id}.

Expected: Native admin JSON for one ads (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:read Get ads details
POST
/api/wl/v1/platform-ads-manager/:provider/creatives
Details

Create a nested resource or trigger an action on creative in Platform Ads Manager. Path: {provider}/creatives.

Expected: Native admin JSON for the created creative (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
platform-ads-manager:write Create nested creative / run action
POST
/api/wl/v1/platform-ads-manager/:provider/sync
Details

Sync this sync in Platform Ads Manager. Send a JSON body as required by the admin API. Path: {provider}/sync.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
platform-ads-manager:write Sync sync
AIKit 114 endpoints aikit
aikit:health aikit:read aikit:write aikit:delete
Method Path Scope Summary
GET
/api/wl/v1/aikit/health
Details

Lightweight health check for AIKit. Verifies the feature is enabled for this White Label and that the token includes aikit:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "aikit"
  }
}
aikit:health Confirm AIKit is enabled for this White Label token
GET
/api/wl/v1/aikit/settings
Details

List settings for AIKit, optionally filtered by query params. Path: settings.

Expected: Native admin JSON list or payload for settings (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List settings
PUT
/api/wl/v1/aikit/settings
Details

Fully update / replace a settings in AIKit. Send the complete resource payload. Path: settings.

Expected: Native admin JSON for the updated settings. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace settings
GET
/api/wl/v1/aikit/agents
Details

List agents for AIKit, optionally filtered by query params. Path: agents.

Expected: Native admin JSON list or payload for agents (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List agents
GET
/api/wl/v1/aikit/agents/:id
Details

Retrieve one agent (and related fields) from AIKit by id. Path: agents/{id}.

Expected: Native admin JSON for one agent (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get agent details
POST
/api/wl/v1/aikit/agents
Details

Create a new agent in AIKit. Send the native admin JSON body. Path: agents.

Expected: Native admin JSON for the created agents (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create agent
PUT
/api/wl/v1/aikit/agents/:id
Details

Fully update / replace a agent in AIKit. Send the complete resource payload. Path: agents/{id}.

Expected: Native admin JSON for the updated agent. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace agent
DELETE
/api/wl/v1/aikit/agents/:id
Details

Permanently delete a agent from AIKit. Path: agents/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete agent
POST
/api/wl/v1/aikit/agents/:id/test
Details

Test this test in AIKit. Send a JSON body as required by the admin API. Path: agents/{id}/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
aikit:write Test test
GET
/api/wl/v1/aikit/providers/openai/models
Details

List providers for AIKit, optionally filtered by query params. Path: providers/openai/models.

Expected: Native admin JSON list or payload for models (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List providers
GET
/api/wl/v1/aikit/providers/cursor/models
Details

List providers for AIKit, optionally filtered by query params. Path: providers/cursor/models.

Expected: Native admin JSON list or payload for models (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List providers
GET
/api/wl/v1/aikit/orchestration
Details

List orchestration for AIKit, optionally filtered by query params. Path: orchestration.

Expected: Native admin JSON list or payload for orchestration (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List orchestration
PUT
/api/wl/v1/aikit/orchestration
Details

Fully update / replace a orchestration in AIKit. Send the complete resource payload. Path: orchestration.

Expected: Native admin JSON for the updated orchestration. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace orchestration
GET
/api/wl/v1/aikit/chatbot
Details

List chatbot for AIKit, optionally filtered by query params. Path: chatbot.

Expected: Native admin JSON list or payload for chatbot (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List chatbot
PUT
/api/wl/v1/aikit/chatbot
Details

Fully update / replace a chatbot in AIKit. Send the complete resource payload. Path: chatbot.

Expected: Native admin JSON for the updated chatbot. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace chatbot
POST
/api/wl/v1/aikit/chatbot/chat
Details

Send a chat request to chatbot in AIKit. Send a JSON body as required by the admin API. Path: chatbot/chat.

Expected: Native admin JSON for the created chat (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Send a chat request to chatbot
GET
/api/wl/v1/aikit/public-site-chatbot
Details

List public site chatbot for AIKit, optionally filtered by query params. Path: public-site-chatbot.

Expected: Native admin JSON list or payload for public site chatbot (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List public site chatbot
PUT
/api/wl/v1/aikit/public-site-chatbot
Details

Fully update / replace a public site chatbot in AIKit. Send the complete resource payload. Path: public-site-chatbot.

Expected: Native admin JSON for the updated public site chatbot. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace public site chatbot
GET
/api/wl/v1/aikit/prompts
Details

List prompts for AIKit, optionally filtered by query params. Path: prompts.

Expected: Native admin JSON list or payload for prompts (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List prompts
POST
/api/wl/v1/aikit/prompts
Details

Create a new prompt in AIKit. Send the native admin JSON body. Path: prompts.

Expected: Native admin JSON for the created prompts (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create prompt
POST
/api/wl/v1/aikit/prompts/seed
Details

Create a new prompt in AIKit. Send the native admin JSON body. Path: prompts/seed.

Expected: Native admin JSON for the created seed (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create prompt
GET
/api/wl/v1/aikit/prompts/page/:slug
Details

Retrieve one page (and related fields) from AIKit by id. Path: prompts/page/{slug}.

Expected: Native admin JSON for one page (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get page details
PUT
/api/wl/v1/aikit/prompts/:id
Details

Fully update / replace a prompt in AIKit. Send the complete resource payload. Path: prompts/{id}.

Expected: Native admin JSON for the updated prompt. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace prompt
DELETE
/api/wl/v1/aikit/prompts/:id
Details

Permanently delete a prompt from AIKit. Path: prompts/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete prompt
GET
/api/wl/v1/aikit/autowrite
Details

List autowrite for AIKit, optionally filtered by query params. Path: autowrite.

Expected: Native admin JSON list or payload for autowrite (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List autowrite
POST
/api/wl/v1/aikit/autowrite
Details

Create a new autowrite in AIKit. Send the native admin JSON body. Path: autowrite.

Expected: Native admin JSON for the created autowrite (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create autowrite
POST
/api/wl/v1/aikit/autowrite/:id/run
Details

Run this run in AIKit. Send a JSON body as required by the admin API. Path: autowrite/{id}/run.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
aikit:write Run run
GET
/api/wl/v1/aikit/autowrite/articles
Details

List autowrite for AIKit, optionally filtered by query params. Path: autowrite/articles.

Expected: Native admin JSON list or payload for articles (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List autowrite
DELETE
/api/wl/v1/aikit/autowrite/articles/:id
Details

Permanently delete a article from AIKit. Path: autowrite/articles/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete article
POST
/api/wl/v1/aikit/autowrite/articles/:id/regenerate-content
Details

Create a nested resource or trigger an action on regenerate content in AIKit. Path: autowrite/articles/{id}/regenerate-content.

Expected: Native admin JSON for the created regenerate content (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create nested regenerate content / run action
POST
/api/wl/v1/aikit/autowrite/articles/:id/regenerate-image
Details

Create a nested resource or trigger an action on regenerate image in AIKit. Path: autowrite/articles/{id}/regenerate-image.

Expected: Native admin JSON for the created regenerate image (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create nested regenerate image / run action
GET
/api/wl/v1/aikit/autowrite/articles/:id/log
Details

Retrieve one log (and related fields) from AIKit by id. Path: autowrite/articles/{id}/log.

Expected: Native admin JSON list or payload for log (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read Get log details
PUT
/api/wl/v1/aikit/autowrite/articles/:id/content
Details

Fully update / replace a content in AIKit. Send the complete resource payload. Path: autowrite/articles/{id}/content.

Expected: Native admin JSON for the updated content. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace content
POST
/api/wl/v1/aikit/autowrite/articles/:id/assign
Details

Assign this assign in AIKit. Send a JSON body as required by the admin API. Path: autowrite/articles/{id}/assign.

Expected: Native admin JSON for the created assign (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Assign assign
GET
/api/wl/v1/aikit/autowrite/:id
Details

Retrieve one autowrite (and related fields) from AIKit by id. Path: autowrite/{id}.

Expected: Native admin JSON for one autowrite (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get autowrite details
DELETE
/api/wl/v1/aikit/autowrite/:id
Details

Permanently delete a autowrite from AIKit. Path: autowrite/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete autowrite
GET
/api/wl/v1/aikit/repurpose
Details

List repurpose for AIKit, optionally filtered by query params. Path: repurpose.

Expected: Native admin JSON list or payload for repurpose (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List repurpose
POST
/api/wl/v1/aikit/repurpose
Details

Create a new repurpose in AIKit. Send the native admin JSON body. Path: repurpose.

Expected: Native admin JSON for the created repurpose (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create repurpose
DELETE
/api/wl/v1/aikit/repurpose/:id
Details

Permanently delete a repurpose from AIKit. Path: repurpose/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete repurpose
GET
/api/wl/v1/aikit/repurpose/:id
Details

Retrieve one repurpose (and related fields) from AIKit by id. Path: repurpose/{id}.

Expected: Native admin JSON for one repurpose (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get repurpose details
POST
/api/wl/v1/aikit/repurpose/:id/post-to-n8n
Details

Create a nested resource or trigger an action on post to n8n in AIKit. Path: repurpose/{id}/post-to-n8n.

Expected: Native admin JSON for the created post to n8n (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create nested post to n8n / run action
POST
/api/wl/v1/aikit/repurpose/:id/pause
Details

Pause this pause in AIKit. Send a JSON body as required by the admin API. Path: repurpose/{id}/pause.

Expected: Native admin JSON for the created pause (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Pause pause
GET
/api/wl/v1/aikit/rss
Details

List rss for AIKit, optionally filtered by query params. Path: rss.

Expected: Native admin JSON list or payload for rss (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List rss
POST
/api/wl/v1/aikit/rss
Details

Create a new rs in AIKit. Send the native admin JSON body. Path: rss.

Expected: Native admin JSON for the created rss (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create rs
POST
/api/wl/v1/aikit/rss/test-rapidapi
Details

Create a new rs in AIKit. Send the native admin JSON body. Path: rss/test-rapidapi.

Expected: Native admin JSON for the created test rapidapi (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create rs
PUT
/api/wl/v1/aikit/rss/:id
Details

Fully update / replace a rss in AIKit. Send the complete resource payload. Path: rss/{id}.

Expected: Native admin JSON for the updated rss. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace rss
DELETE
/api/wl/v1/aikit/rss/:id
Details

Permanently delete a rss from AIKit. Path: rss/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete rss
POST
/api/wl/v1/aikit/rss/:id/run
Details

Run this run in AIKit. Send a JSON body as required by the admin API. Path: rss/{id}/run.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
aikit:write Run run
GET
/api/wl/v1/aikit/rss/subscribers
Details

List rss for AIKit, optionally filtered by query params. Path: rss/subscribers.

Expected: Native admin JSON list or payload for subscribers (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List rss
GET
/api/wl/v1/aikit/rss/campaigns
Details

List rss for AIKit, optionally filtered by query params. Path: rss/campaigns.

Expected: Native admin JSON list or payload for campaigns (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List rss
POST
/api/wl/v1/aikit/rss/campaign/send
Details

Create a new rs in AIKit. Send the native admin JSON body. Path: rss/campaign/send.

Expected: Native admin JSON for the created send (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create rs
GET
/api/wl/v1/aikit/rss/generated-content
Details

List rss for AIKit, optionally filtered by query params. Path: rss/generated-content.

Expected: Native admin JSON list or payload for generated content (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List rss
PATCH
/api/wl/v1/aikit/rss/generated-content/:id/status
Details

Partially update a statu in AIKit. Send only the fields to change. Path: rss/generated-content/{id}/status.

Expected: Native admin JSON for the updated statu. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Update statu
PUT
/api/wl/v1/aikit/rss/generated-content/:id
Details

Fully update / replace a generated content in AIKit. Send the complete resource payload. Path: rss/generated-content/{id}.

Expected: Native admin JSON for the updated generated content. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace generated content
DELETE
/api/wl/v1/aikit/rss/generated-content/:id
Details

Permanently delete a generated content from AIKit. Path: rss/generated-content/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete generated content
GET
/api/wl/v1/aikit/rss/stats
Details

List rss for AIKit, optionally filtered by query params. Path: rss/stats.

Expected: Native admin JSON list or payload for stats (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List rss
GET
/api/wl/v1/aikit/rss/:id
Details

Retrieve one rss (and related fields) from AIKit by id. Path: rss/{id}.

Expected: Native admin JSON for one rss (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get rss details
GET
/api/wl/v1/aikit/scheduled
Details

List scheduled for AIKit, optionally filtered by query params. Path: scheduled.

Expected: Native admin JSON list or payload for scheduled (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List scheduled
POST
/api/wl/v1/aikit/scheduled
Details

Create a new scheduled in AIKit. Send the native admin JSON body. Path: scheduled.

Expected: Native admin JSON for the created scheduled (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create scheduled
PUT
/api/wl/v1/aikit/scheduled/:id
Details

Fully update / replace a scheduled in AIKit. Send the complete resource payload. Path: scheduled/{id}.

Expected: Native admin JSON for the updated scheduled. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace scheduled
DELETE
/api/wl/v1/aikit/scheduled/:id
Details

Permanently delete a scheduled from AIKit. Path: scheduled/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete scheduled
GET
/api/wl/v1/aikit/scheduled/:id/digest-log
Details

Retrieve one digest log (and related fields) from AIKit by id. Path: scheduled/{id}/digest-log.

Expected: Native admin JSON list or payload for digest log (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read Get digest log details
GET
/api/wl/v1/aikit/scheduled/all
Details

List scheduled for AIKit, optionally filtered by query params. Path: scheduled/all.

Expected: Native admin JSON list or payload for all (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List scheduled
POST
/api/wl/v1/aikit/scheduled/all
Details

Create a new scheduled in AIKit. Send the native admin JSON body. Path: scheduled/all.

Expected: Native admin JSON for the created all (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create scheduled
PUT
/api/wl/v1/aikit/scheduled/all/:id
Details

Fully update / replace a all in AIKit. Send the complete resource payload. Path: scheduled/all/{id}.

Expected: Native admin JSON for the updated all. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace all
POST
/api/wl/v1/aikit/scheduled/action/run-now
Details

Create a new scheduled in AIKit. Send the native admin JSON body. Path: scheduled/action/run-now.

Expected: Native admin JSON for the created run now (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create scheduled
POST
/api/wl/v1/aikit/scheduled/action/toggle
Details

Create a new scheduled in AIKit. Send the native admin JSON body. Path: scheduled/action/toggle.

Expected: Native admin JSON for the created toggle (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create scheduled
POST
/api/wl/v1/aikit/scheduled/action/delete
Details

Create a new scheduled in AIKit. Send the native admin JSON body. Path: scheduled/action/delete.

Expected: Native admin JSON for the created delete (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create scheduled
GET
/api/wl/v1/aikit/finetune
Details

List finetune for AIKit, optionally filtered by query params. Path: finetune.

Expected: Native admin JSON list or payload for finetune (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List finetune
POST
/api/wl/v1/aikit/finetune
Details

Create a new finetune in AIKit. Send the native admin JSON body. Path: finetune.

Expected: Native admin JSON for the created finetune (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create finetune
POST
/api/wl/v1/aikit/finetune/:id/start
Details

Create a nested resource or trigger an action on start in AIKit. Path: finetune/{id}/start.

Expected: Native admin JSON for the created start (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create nested start / run action
POST
/api/wl/v1/aikit/finetune/:id/sync
Details

Sync this sync in AIKit. Send a JSON body as required by the admin API. Path: finetune/{id}/sync.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
aikit:write Sync sync
POST
/api/wl/v1/aikit/finetune/:id/cancel
Details

Cancel this cancel in AIKit. Send a JSON body as required by the admin API. Path: finetune/{id}/cancel.

Expected: Native admin JSON for the created cancel (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Cancel cancel
GET
/api/wl/v1/aikit/finetune/:id/log
Details

Retrieve one log (and related fields) from AIKit by id. Path: finetune/{id}/log.

Expected: Native admin JSON list or payload for log (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read Get log details
POST
/api/wl/v1/aikit/finetune/:id/register
Details

Create a nested resource or trigger an action on register in AIKit. Path: finetune/{id}/register.

Expected: Native admin JSON for the created register (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create nested register / run action
GET
/api/wl/v1/aikit/finetune/models
Details

List finetune for AIKit, optionally filtered by query params. Path: finetune/models.

Expected: Native admin JSON list or payload for models (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List finetune
GET
/api/wl/v1/aikit/finetune/chat/conversations
Details

List finetune for AIKit, optionally filtered by query params. Path: finetune/chat/conversations.

Expected: Native admin JSON list or payload for conversations (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List finetune
POST
/api/wl/v1/aikit/finetune/chat/conversations
Details

Create a new finetune in AIKit. Send the native admin JSON body. Path: finetune/chat/conversations.

Expected: Native admin JSON for the created conversations (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create finetune
GET
/api/wl/v1/aikit/finetune/chat/conversations/:id/messages
Details

Retrieve one message (and related fields) from AIKit by id. Path: finetune/chat/conversations/{id}/messages.

Expected: Native admin JSON list or payload for message (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read Get message details
POST
/api/wl/v1/aikit/finetune/chat/send
Details

Create a new finetune in AIKit. Send the native admin JSON body. Path: finetune/chat/send.

Expected: Native admin JSON for the created send (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create finetune
GET
/api/wl/v1/aikit/finetune/verify
Details

List finetune for AIKit, optionally filtered by query params. Path: finetune/verify.

Expected: Native admin JSON list or payload for verify (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List finetune
DELETE
/api/wl/v1/aikit/finetune/:id
Details

Permanently delete a finetune from AIKit. Path: finetune/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete finetune
GET
/api/wl/v1/aikit/export
Details

Export AIKit (export).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
aikit:read Export AIKit
POST
/api/wl/v1/aikit/import
Details

Import AIKit. Send a JSON body as required by the admin API. Path: import.

Expected: Native admin JSON for the created import (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Import AIKit
POST
/api/wl/v1/aikit/import/preview
Details

Create a new import in AIKit. Send the native admin JSON body. Path: import/preview.

Expected: Native admin JSON for the created preview (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create import
POST
/api/wl/v1/aikit/import/apply
Details

Create a new import in AIKit. Send the native admin JSON body. Path: import/apply.

Expected: Native admin JSON for the created apply (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create import
GET
/api/wl/v1/aikit/decision
Details

List decision for AIKit, optionally filtered by query params. Path: decision.

Expected: Native admin JSON list or payload for decision (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List decision
GET
/api/wl/v1/aikit/decision/catalog
Details

List decision for AIKit, optionally filtered by query params. Path: decision/catalog.

Expected: Native admin JSON list or payload for catalog (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List decision
GET
/api/wl/v1/aikit/decision/dashboard-snapshot
Details

List decision for AIKit, optionally filtered by query params. Path: decision/dashboard-snapshot.

Expected: Native admin JSON list or payload for dashboard snapshot (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List decision
GET
/api/wl/v1/aikit/decision/logs/:id
Details

Retrieve one log (and related fields) from AIKit by id. Path: decision/logs/{id}.

Expected: Native admin JSON for one log (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get log details
GET
/api/wl/v1/aikit/decision/logs
Details

List decision for AIKit, optionally filtered by query params. Path: decision/logs.

Expected: Native admin JSON list or payload for logs (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List decision
GET
/api/wl/v1/aikit/decision/:id
Details

Retrieve one decision (and related fields) from AIKit by id. Path: decision/{id}.

Expected: Native admin JSON for one decision (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get decision details
POST
/api/wl/v1/aikit/decision
Details

Create a new decision in AIKit. Send the native admin JSON body. Path: decision.

Expected: Native admin JSON for the created decision (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create decision
PUT
/api/wl/v1/aikit/decision/:id
Details

Fully update / replace a decision in AIKit. Send the complete resource payload. Path: decision/{id}.

Expected: Native admin JSON for the updated decision. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace decision
DELETE
/api/wl/v1/aikit/decision/:id
Details

Permanently delete a decision from AIKit. Path: decision/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete decision
POST
/api/wl/v1/aikit/decision/:id/execute
Details

Create a nested resource or trigger an action on execute in AIKit. Path: decision/{id}/execute.

Expected: Native admin JSON for the created execute (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create nested execute / run action
GET
/api/wl/v1/aikit/cs-ticket-ai/config
Details

List cs ticket ai for AIKit, optionally filtered by query params. Path: cs-ticket-ai/config.

Expected: Native admin JSON list or payload for config (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List cs ticket ai
PUT
/api/wl/v1/aikit/cs-ticket-ai/config
Details

Fully update / replace a config in AIKit. Send the complete resource payload. Path: cs-ticket-ai/config.

Expected: Native admin JSON for the updated config. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace config
GET
/api/wl/v1/aikit/cs-ticket-ai/runs
Details

List cs ticket ai for AIKit, optionally filtered by query params. Path: cs-ticket-ai/runs.

Expected: Native admin JSON list or payload for runs (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List cs ticket ai
GET
/api/wl/v1/aikit/cs-ticket-ai/runs/:id
Details

Retrieve one run (and related fields) from AIKit by id. Path: cs-ticket-ai/runs/{id}.

Expected: Native admin JSON for one run (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get run details
GET
/api/wl/v1/aikit/content-builder/runs
Details

List content builder for AIKit, optionally filtered by query params. Path: content-builder/runs.

Expected: Native admin JSON list or payload for runs (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List content builder
GET
/api/wl/v1/aikit/content-builder/runs/:id
Details

Retrieve one run (and related fields) from AIKit by id. Path: content-builder/runs/{id}.

Expected: Native admin JSON for one run (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:read Get run details
POST
/api/wl/v1/aikit/content-builder/run
Details

Run content builder in AIKit. Send a JSON body as required by the admin API. Path: content-builder/run.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
aikit:write Run content builder
POST
/api/wl/v1/aikit/form-fill
Details

Create a new form fill in AIKit. Send the native admin JSON body. Path: form-fill.

Expected: Native admin JSON for the created form fill (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create form fill
POST
/api/wl/v1/aikit/page-chat
Details

Create a new page chat in AIKit. Send the native admin JSON body. Path: page-chat.

Expected: Native admin JSON for the created page chat (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create page chat
GET
/api/wl/v1/aikit/chat/conversations
Details

List chat for AIKit, optionally filtered by query params. Path: chat/conversations.

Expected: Native admin JSON list or payload for conversations (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List chat
POST
/api/wl/v1/aikit/chat/conversations
Details

Create a new chat in AIKit. Send the native admin JSON body. Path: chat/conversations.

Expected: Native admin JSON for the created conversations (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create chat
GET
/api/wl/v1/aikit/chat/conversations/:id/messages
Details

Retrieve one message (and related fields) from AIKit by id. Path: chat/conversations/{id}/messages.

Expected: Native admin JSON list or payload for message (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read Get message details
PATCH
/api/wl/v1/aikit/chat/conversations/:id
Details

Partially update a conversation in AIKit. Send only the fields to change. Path: chat/conversations/{id}.

Expected: Native admin JSON for the updated conversation. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Update conversation
PUT
/api/wl/v1/aikit/chat/conversations/:id
Details

Fully update / replace a conversation in AIKit. Send the complete resource payload. Path: chat/conversations/{id}.

Expected: Native admin JSON for the updated conversation. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
aikit:write Replace conversation
DELETE
/api/wl/v1/aikit/chat/conversations/:id
Details

Permanently delete a conversation from AIKit. Path: chat/conversations/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
aikit:delete Delete conversation
POST
/api/wl/v1/aikit/chat/send
Details

Create a new chat in AIKit. Send the native admin JSON body. Path: chat/send.

Expected: Native admin JSON for the created send (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
aikit:write Create chat
GET
/api/wl/v1/aikit/usage/stats
Details

List usage for AIKit, optionally filtered by query params. Path: usage/stats.

Expected: Native admin JSON list or payload for stats (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read List usage
GET
/api/wl/v1/aikit/dashboard/analytics
Details

Fetch analytics for dashboard in AIKit (dashboard/analytics).

Expected: Native admin JSON list or payload for analytics (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
aikit:read Fetch analytics for dashboard
Accounting 51 endpoints accounting
accounting:health accounting:read accounting:write accounting:delete
Method Path Scope Summary
GET
/api/wl/v1/accounting/health
Details

Lightweight health check for Accounting. Verifies the feature is enabled for this White Label and that the token includes accounting:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "accounting"
  }
}
accounting:health Confirm Accounting is enabled for this White Label token
GET
/api/wl/v1/accounting/config
Details

List config for Accounting, optionally filtered by query params. Path: config.

Expected: Native admin JSON list or payload for config (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List config
PUT
/api/wl/v1/accounting/config
Details

Fully update / replace a config in Accounting. Send the complete resource payload. Path: config.

Expected: Native admin JSON for the updated config. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace config
POST
/api/wl/v1/accounting/config/message-broker/test
Details

Test config in Accounting. Send a JSON body as required by the admin API. Path: config/message-broker/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
accounting:write Test config
POST
/api/wl/v1/accounting/config/open-banking/test
Details

Test config in Accounting. Send a JSON body as required by the admin API. Path: config/open-banking/test.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
accounting:write Test config
GET
/api/wl/v1/accounting/settings
Details

List settings for Accounting, optionally filtered by query params. Path: settings.

Expected: Native admin JSON list or payload for settings (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List settings
GET
/api/wl/v1/accounting/fx-rates
Details

List fx rates for Accounting, optionally filtered by query params. Path: fx-rates.

Expected: Native admin JSON list or payload for fx rates (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List fx rates
GET
/api/wl/v1/accounting/fx-rates/latest
Details

List fx rates for Accounting, optionally filtered by query params. Path: fx-rates/latest.

Expected: Native admin JSON list or payload for latest (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List fx rates
POST
/api/wl/v1/accounting/fx-rates
Details

Create a new fx rate in Accounting. Send the native admin JSON body. Path: fx-rates.

Expected: Native admin JSON for the created fx rates (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create fx rate
POST
/api/wl/v1/accounting/income/sync
Details

Sync income in Accounting. Send a JSON body as required by the admin API. Path: income/sync.

Expected: Native admin JSON acknowledging the job/action (often includes id/status). May be async — poll a status/report endpoint afterward.

{
  "success": true,
  "data": {
    "id": "…",
    "status": "running"
  }
}
accounting:write Sync income
POST
/api/wl/v1/accounting/income
Details

Create a new income in Accounting. Send the native admin JSON body. Path: income.

Expected: Native admin JSON for the created income (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create income
DELETE
/api/wl/v1/accounting/income/:id
Details

Permanently delete a income from Accounting. Path: income/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
accounting:delete Delete income
GET
/api/wl/v1/accounting/income
Details

List income for Accounting, optionally filtered by query params. Path: income.

Expected: Native admin JSON list or payload for income (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List income
POST
/api/wl/v1/accounting/invoices
Details

Create a new invoice in Accounting. Send the native admin JSON body. Path: invoices.

Expected: Native admin JSON for the created invoices (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create invoice
GET
/api/wl/v1/accounting/invoices
Details

List invoices for Accounting, optionally filtered by query params. Path: invoices.

Expected: Native admin JSON list or payload for invoices (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List invoices
GET
/api/wl/v1/accounting/invoices/:id
Details

Retrieve one invoice (and related fields) from Accounting by id. Path: invoices/{id}.

Expected: Native admin JSON for one invoice (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get invoice details
GET
/api/wl/v1/accounting/invoices/:id/download
Details

Download a specific download in Accounting (invoices/{id}/download).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
accounting:read Download download
DELETE
/api/wl/v1/accounting/invoices/:id
Details

Permanently delete a invoice from Accounting. Path: invoices/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
accounting:delete Delete invoice
PUT
/api/wl/v1/accounting/invoices/:id/status
Details

Fully update / replace a statu in Accounting. Send the complete resource payload. Path: invoices/{id}/status.

Expected: Native admin JSON for the updated statu. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace statu
POST
/api/wl/v1/accounting/expenses
Details

Create a new expense in Accounting. Send the native admin JSON body. Path: expenses.

Expected: Native admin JSON for the created expenses (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create expense
PUT
/api/wl/v1/accounting/expenses/:id/receipt
Details

Fully update / replace a receipt in Accounting. Send the complete resource payload. Path: expenses/{id}/receipt.

Expected: Native admin JSON for the updated receipt. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace receipt
DELETE
/api/wl/v1/accounting/expenses/:id
Details

Permanently delete a expense from Accounting. Path: expenses/{id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
accounting:delete Delete expense
GET
/api/wl/v1/accounting/expenses
Details

List expenses for Accounting, optionally filtered by query params. Path: expenses.

Expected: Native admin JSON list or payload for expenses (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List expenses
GET
/api/wl/v1/accounting/summaries
Details

List summaries for Accounting, optionally filtered by query params. Path: summaries.

Expected: Native admin JSON list or payload for summaries (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List summaries
GET
/api/wl/v1/accounting/summaries/:year/:month
Details

Retrieve one summarie (and related fields) from Accounting by id. Path: summaries/{year}/{month}.

Expected: Native admin JSON for one summarie (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get summarie details
POST
/api/wl/v1/accounting/summaries/:year/:month/recalculate
Details

Create a nested resource or trigger an action on recalculate in Accounting. Path: summaries/{year}/{month}/recalculate.

Expected: Native admin JSON for the created recalculate (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create nested recalculate / run action
PUT
/api/wl/v1/accounting/summaries/:year/:month/close
Details

Fully update / replace a close in Accounting. Send the complete resource payload. Path: summaries/{year}/{month}/close.

Expected: Native admin JSON for the updated close. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace close
PUT
/api/wl/v1/accounting/summaries/:year/:month/close/request
Details

Fully update / replace a request in Accounting. Send the complete resource payload. Path: summaries/{year}/{month}/close/request.

Expected: Native admin JSON for the updated request. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace request
PUT
/api/wl/v1/accounting/summaries/:year/:month/close/approve
Details

Fully update / replace a approve in Accounting. Send the complete resource payload. Path: summaries/{year}/{month}/close/approve.

Expected: Native admin JSON for the updated approve. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace approve
PUT
/api/wl/v1/accounting/summaries/:year/:month/reopen
Details

Fully update / replace a reopen in Accounting. Send the complete resource payload. Path: summaries/{year}/{month}/reopen.

Expected: Native admin JSON for the updated reopen. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace reopen
GET
/api/wl/v1/accounting/comparative/mom/:year/:month
Details

Retrieve one mom (and related fields) from Accounting by id. Path: comparative/mom/{year}/{month}.

Expected: Native admin JSON for one mom (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get mom details
GET
/api/wl/v1/accounting/comparative/yoy/:year/:month
Details

Retrieve one yoy (and related fields) from Accounting by id. Path: comparative/yoy/{year}/{month}.

Expected: Native admin JSON for one yoy (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get yoy details
GET
/api/wl/v1/accounting/reconciliation
Details

List reconciliation for Accounting, optionally filtered by query params. Path: reconciliation.

Expected: Native admin JSON list or payload for reconciliation (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List reconciliation
POST
/api/wl/v1/accounting/reconciliation
Details

Create a new reconciliation in Accounting. Send the native admin JSON body. Path: reconciliation.

Expected: Native admin JSON for the created reconciliation (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create reconciliation
POST
/api/wl/v1/accounting/reconciliation/sync-gateways
Details

Create a new reconciliation in Accounting. Send the native admin JSON body. Path: reconciliation/sync-gateways.

Expected: Native admin JSON for the created sync gateways (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create reconciliation
POST
/api/wl/v1/accounting/reconciliation/sync-open-banking
Details

Create a new reconciliation in Accounting. Send the native admin JSON body. Path: reconciliation/sync-open-banking.

Expected: Native admin JSON for the created sync open banking (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create reconciliation
GET
/api/wl/v1/accounting/reconciliation/:id/suggest
Details

Retrieve one suggest (and related fields) from Accounting by id. Path: reconciliation/{id}/suggest.

Expected: Native admin JSON list or payload for suggest (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read Get suggest details
PUT
/api/wl/v1/accounting/reconciliation/:id/match
Details

Fully update / replace a match in Accounting. Send the complete resource payload. Path: reconciliation/{id}/match.

Expected: Native admin JSON for the updated match. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace match
PUT
/api/wl/v1/accounting/reconciliation/:id/ignore
Details

Fully update / replace a ignore in Accounting. Send the complete resource payload. Path: reconciliation/{id}/ignore.

Expected: Native admin JSON for the updated ignore. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
accounting:write Replace ignore
DELETE
/api/wl/v1/accounting/data
Details

Permanently delete a data from Accounting. Path: data.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
accounting:delete Delete data
POST
/api/wl/v1/accounting/data/seed
Details

Create a new data in Accounting. Send the native admin JSON body. Path: data/seed.

Expected: Native admin JSON for the created seed (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create data
POST
/api/wl/v1/accounting/reports
Details

Create a new report in Accounting. Send the native admin JSON body. Path: reports.

Expected: Native admin JSON for the created reports (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:write Create report
GET
/api/wl/v1/accounting/reviews/monthly/:year/:month
Details

Retrieve one monthly (and related fields) from Accounting by id. Path: reviews/monthly/{year}/{month}.

Expected: Native admin JSON for one monthly (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get monthly details
GET
/api/wl/v1/accounting/reviews/quarterly/:year/:quarter
Details

Retrieve one quarterly (and related fields) from Accounting by id. Path: reviews/quarterly/{year}/{quarter}.

Expected: Native admin JSON for one quarterly (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get quarterly details
GET
/api/wl/v1/accounting/reviews/yearly/:year
Details

Retrieve one yearly (and related fields) from Accounting by id. Path: reviews/yearly/{year}.

Expected: Native admin JSON for one yearly (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get yearly details
GET
/api/wl/v1/accounting/reviews/full
Details

List reviews for Accounting, optionally filtered by query params. Path: reviews/full.

Expected: Native admin JSON list or payload for full (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List reviews
GET
/api/wl/v1/accounting/reviews/export
Details

Export reviews in Accounting (reviews/export).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
accounting:read Export reviews
GET
/api/wl/v1/accounting/reports
Details

List reports for Accounting, optionally filtered by query params. Path: reports.

Expected: Native admin JSON list or payload for reports (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List reports
GET
/api/wl/v1/accounting/recommendations/:year/:month
Details

Retrieve one recommendation (and related fields) from Accounting by id. Path: recommendations/{year}/{month}.

Expected: Native admin JSON for one recommendation (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
accounting:read Get recommendation details
GET
/api/wl/v1/accounting/recommendations
Details

List recommendations for Accounting, optionally filtered by query params. Path: recommendations.

Expected: Native admin JSON list or payload for recommendations (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List recommendations
GET
/api/wl/v1/accounting
Details

List or fetch the root Accounting collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
accounting:read List Accounting resources
Password Keeper 9 endpoints password-keeper
password-keeper:health password-keeper:read password-keeper:write password-keeper:delete
Method Path Scope Summary
GET
/api/wl/v1/password-keeper/health
Details

Lightweight health check for Password Keeper. Verifies the feature is enabled for this White Label and that the token includes password-keeper:health.

Expected: JSON: { success: true, data: { status: "ok", featureId, whiteLabelId, scopes } }

{
  "success": true,
  "data": {
    "status": "ok",
    "featureId": "password-keeper"
  }
}
password-keeper:health Confirm Password Keeper is enabled for this White Label token
POST
/api/wl/v1/password-keeper
Details

Create a new item in Password Keeper. Send the native admin JSON body. Path: (root).

Expected: Native admin JSON for the created resource (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
password-keeper:write Create item
GET
/api/wl/v1/password-keeper
Details

List or fetch the root Password Keeper collection.

Expected: Native admin JSON list or payload for resource (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
password-keeper:read List Password Keeper resources
GET
/api/wl/v1/password-keeper/categories
Details

List categories for Password Keeper, optionally filtered by query params. Path: categories.

Expected: Native admin JSON list or payload for categories (often { success, data: […] } or { items/rows }). Empty arrays when none exist.

{
  "success": true,
  "data": []
}
password-keeper:read List categories
GET
/api/wl/v1/password-keeper/export
Details

Export Password Keeper (export).

Expected: File download or binary/JSON export payload (Content-Type depends on the export format).

{
  "download": true
}
password-keeper:read Export Password Keeper
POST
/api/wl/v1/password-keeper/import
Details

Import Password Keeper. Send a JSON body as required by the admin API. Path: import.

Expected: Native admin JSON for the created import (often { success, data } with the new id). 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
password-keeper:write Import Password Keeper
GET
/api/wl/v1/password-keeper/:id
Details

Retrieve one item (and related fields) from Password Keeper by id. Path: {id}.

Expected: Native admin JSON for one item (often { success, data } or the document itself). 404 if not found / not in your tenant.

{
  "success": true,
  "data": {
    "id": "…"
  }
}
password-keeper:read Get item details
PUT
/api/wl/v1/password-keeper/:id
Details

Fully update / replace a item in Password Keeper. Send the complete resource payload. Path: {id}.

Expected: Native admin JSON for the updated item. 404 if missing; 4xx on validation errors.

{
  "success": true,
  "data": {
    "id": "…",
    "updated": true
  }
}
password-keeper:write Replace item
DELETE
/api/wl/v1/password-keeper/:id
Details

Permanently delete a item from Password Keeper. Path: {id}.

Expected: Native admin JSON confirming deletion (often { success: true } or { deleted: true }). 404 if already gone.

{
  "success": true,
  "deleted": true
}
password-keeper:delete Delete item

Checklist

How clients integrate

A practical path from enabled feature to production traffic.

  • Enable the feature in PTM White Label → Features.
  • Confirm health: GET /api/wl/v1/{featureId}/health.
  • Call scoped read/write endpoints with your wlt_ token.
  • For browser clients, verify domain DNS TXT so CORS allowlisting can activate.
  • Monitor usage in PTM Usage.
# Example: feature health then a read call
TOKEN="wlt_YOUR_TOKEN"
BASE="https://ptm.systemsolveit.com/api/wl/v1/website-analyzer"

curl -sS "$BASE/health" -H "Authorization: Bearer $TOKEN"
curl -sS "$BASE/" -H "Authorization: Bearer $TOKEN" -H "Accept: application/json"

Ready to ship under your brand?

Request White Label access in PTM, create your first token, and explore the live feature playground.

Support

Frequently Asked Questions

What is SSIT White Label?

White Label lets partner organizations call SSIT feature APIs through a scoped gateway (/api/wl/v1) using their own branding and API tokens, without giving clients direct access to the SSIT admin console.

How do I join as an organization?

Create an account on System Solve IT, open Partner Tenant Manager (PTM), complete organization onboarding, subscribe to the features you need, then submit a White Label access request for SSIT review.

How do I get an API token?

After your White Label request is approved and a WLL- license is issued, open PTM → White Label → Tokens and create a token. The wlt_ secret is shown once — store it server-side.

How do scopes work?

Each enabled feature grants coarse scopes such as feature:health, feature:read, feature:write, and feature:delete. Tokens inherit scopes from the features enabled on your White Label.

Where is the interactive playground?

Live feature toggles and the API playground stay inside the authenticated PTM portal at /white-label/features. This public page is the SEO documentation and reference guide.

Can I call the gateway from a browser?

Prefer server-side calls. Browser clients need a verified domain (DNS TXT) for CORS. Never embed wlt_ secrets in frontend code.

What is the difference between the gateway and PTM management APIs?

The partner gateway (/api/wl/v1) is for shipping product features to your customers with a White Label token. PTM management APIs (/api/white-label/*) require a logged-in PTM session to configure licenses, features, and tokens.

How many features and endpoints are available?

The catalog currently exposes 16 White Label features and 533 documented endpoints, generated from the live SSIT feature registry.

Need help choosing a plan? Compare pricing or schedule a meeting.

Discover our enterprise software development services, custom solutions, and IT consulting.

Build with White Label

Documentation here · live configuration and playground in PTM.

Open White Label in PTM

Shopping Cart

Your cart is empty

Start shopping to add items to your cart

Shop Now
B2B AI agents & automation
Train agents for SEO, social, and ops workflows—then connect them through APIs so your team or your clients ship faster with less manual work.
Grow traffic & lock down your code — free
Two professional-grade audits. Instant AI reports. No signup required.
Website Intelligence Audit
SEO · Core Web Vitals · AI Hub
Hot
GitHub Security Audit
CVEs · Secrets · SAST · Supply chain