Vremly API
A REST API over shoots, customers, media delivery, invoicing and webhooks. Call it from GoHighLevel, n8n, a cron job or a single line of curl — an API key is all it takes.
Authenticate with x-api-key. The organization comes from the key, so there is no tenant header to get wrong.
$ curl -X POST \ https://api.vremly.com/webhooks/subscriptions \ -H "x-api-key: $VREMLY_API_KEY" \ -d '{"url":"https://example.com/hooks", "events":["DELIVERY_APPROVED"]}'{ "event": "DELIVERY_APPROVED", "data": { "projectId": "proj_xyz789", "approvedAt": "2026-09-05T12:00:00.000Z" }}Issue a key, send a first authenticated request, and read the response you get back.
Every endpoint, generated from the backend’s own source rather than written by hand — 854 routes, with the request and response shapes the server really uses.
Subscribe to events, verify the signature over the raw body, and handle at-least-once delivery correctly.
Register a URL and Vremly posts to it. Each request carries X-Webhook-Signature as t=<unix>,v1=<hmac> — an HMAC-SHA256 over the timestamp, a dot, and the raw body.
PROJECT_DELIVERED and DELIVERY_APPROVED are different moments. The first fires when the company sends the work; the second when the client accepts it. A sent delivery can still come back as a revision request, so a pipeline stage that means “fulfilled” wants approval.
A key carries scopes and the server checks them per route, not per controller. Grant the least an integration needs — a workflow that only reads delivery status should hold READ, so a mistake in that workflow cannot change anything.
A request whose key lacks the scope returns 403 naming what was needed and what the key holds. Rate limits are three simultaneous windows — 3 per second, 20 per 10 seconds, 100 per minute — bucketed per key, so platforms that share egress IPs do not compete for one allowance.
Vremly ships an MCP server, so an AI assistant can work with your projects, customers and invoices directly. One command, nothing to clone:
npx -y github:RelayDigital/vremly-mcpIt exposes three tools — search, describe, call — which reach every endpoint without a thousand-entry tool list. What the assistant may do is decided by the API key you give it and enforced server-side, so a read-only key cannot be talked into writing.
For everything else there is an llms.txt index and the specification itself, which is the authority whenever prose disagrees with it.