API examples
Representative external API examples for the routes technical buyers usually test first.
The examples below intentionally focus on how customers control and integrate the product from the outside: published schema access, ticket workflows, workflow triggers, webhook management, search, reporting, and cloud actions.
Pull the published OpenAPI spec
GET /api/openapi.json
200 OK
{
"openapi": "3.1.0",
"info": { "...": "VexylCloud Platform API" }
}
List or create tenant API keys
GET /api/admin/api-keys
Cookie: <authenticated VexylCloud session>
200 OK
[
{
"id": "key_123",
"name": "PSA Sync",
"key_prefix": "vxc_a1b2c3d4",
"scopes": ["*"],
"is_active": true
}
]
Create a ticket from another system
POST /api/psa/tickets
Content-Type: application/json
Cookie: <authenticated VexylCloud session>
{
"subject": "VPN outage for Acme HQ",
"description": "Users cannot reach line-of-business apps over VPN.",
"priority": "high",
"type": "incident",
"source": "api",
"customer_id": "cst_123",
"tags": ["network", "vpn"]
}
Trigger an existing workflow
POST /api/psa/workflows/trigger
Content-Type: application/json
Cookie: <authenticated VexylCloud session>
{
"trigger": "manual",
"entityType": "ticket",
"entityId": "tkt_123",
"context": {
"source": "external-automation",
"reason": "Escalate to after-hours flow"
}
}
Create a tenant webhook
POST /api/admin/webhooks
Content-Type: application/json
Cookie: <authenticated VexylCloud session>
{
"name": "Operations Feed",
"url": "https://example.com/hooks/vexylcloud",
"events": ["ticket.created", "ticket.updated"],
"is_active": true
}
Example outbound webhook delivery
POST https://example.com/hooks/vexylcloud
Content-Type: application/json
X-Webhook-Event: ticket.updated
X-Webhook-Signature: sha256=<hmac>
{
"event": "ticket.updated",
"timestamp": "2026-03-24T23:11:25.000Z",
"data": {
"ticket_id": "12345",
"status": "waiting-on-customer"
}
}
Search the tenant context
GET /api/search?q=acme
Cookie: <authenticated VexylCloud session>
200 OK
{
"devices": [...],
"organizations": [...],
"users": [...]
}
Read cloud providers and VMs
GET /api/cloud/providers
GET /api/cloud/vms?provider=aws
Cookie: <authenticated VexylCloud session>
Read asset inventory for reporting
GET /api/rmm/reports/asset-inventory
Cookie: <authenticated VexylCloud session>
Use Authentication first, then review Webhooks and Rate Limits so the automation behaves safely in the real operating environment.