Connect to the veedo API
Use Premium API keys to read your sales, catalog, vendors, customers and analytics from bots, scripts and spreadsheets.
6 min read
veedo exposes a JSON HTTP API under /api/v1. With a Premium store you can mint an API key and call read-only endpoints for that store — Discord bots, Google Sheets, custom dashboards, LSL HTTP, or anything that can send a Bearer token.
API keys never write. They cannot create products, pair vendors, change settings or trigger deliveries. For those, use the dashboard while signed in.
What you need
- A Premium store (plans).
- Your store ID (a UUID). Shown under Settings → Team & security next to API keys.
- An API key that starts with
vd_live_. - The public origin of the app, usually
https://veedo.store.
Create a key
- 1Open Settings → Team & security.
- 2Under API keys, press + New key.
- 3Name it (for example “Discord sales bot”) and pick a scope.
- 4Copy the token immediately — veedo only shows it once.
You can keep up to 10 active keys per store. Revoke any key you no longer use.
Scopes
| Scope | Can read |
|---|---|
read (read-only) | Sales, analytics, catalog, vendors and customers |
orders | Sales only (transactions and related sales reads) |
Authenticate every request
Send the key as a Bearer token. Keys only work on GET (and HEAD) requests for the store they belong to.
- Header:
Authorization: Bearer vd_live_… - Path always includes your store ID:
/api/v1/stores/{storeId}/… - Do not put the key in query strings, LMs, notecards or public repos.
First request
List products (replace the store ID and key):
curl -sS -H "Authorization: Bearer vd_live_YOUR_KEY" "https://veedo.store/api/v1/stores/STORE_ID/products"
Successful responses look like { "ok": true, "data": … }. Failures look like { "ok": false, "error": { "code": "…", "message": "…" } } with an HTTP status such as 401 or 403.
Error codes you'll see
| HTTP | Code | Meaning |
|---|---|---|
| 401 | unauthorized | Missing, wrong or revoked key, or key for a different store |
| 403 | forbidden | Key scope can't read that resource, or method isn't GET |
| 400 | validation_error | Bad query parameter or body |
| 404 | not_found | Unknown id |
| 500 | internal_error | Something broke on our side — retry later |
Limits and safety
- List endpoints accept
?limit=(default 50, max 100) where noted in the API reference. - Treat keys like passwords. If one leaks, revoke it and create another.
- Keys are hashed at rest; veedo only stores a short prefix for display.
- Session cookies from the dashboard are separate — API keys do not log you into the website UI.
Building something that needs write access? There is no write API key today. Automate reads with keys, and keep changes in the dashboard or ask us via support if you need a partner integration.
Read next
- API endpoint referenceEvery read endpoint an API key can call, with paths, scopes and query parameters.
- Sales integrations and inbound hooksPoint CasperVend, mdVendor and the SL Marketplace at veedo so external sales land in your dashboard.
- In-world vendor APIHow paired vendors and delivery servers authenticate, record payments, retry safely, and confirm deliveries — with example requests and responses.
- Free, Premium and paying in L$What each plan includes, how much Premium costs and how to pay at an in-world terminal.
- Your team and account securityInvite helpers with the right access, turn on two-step sign-in and protect your vendors.
Didn't find what you need? Open a ticket and the veedo team will reply in your dashboard and by IM.
Contact support