GET /api/v1/me
The bootstrap call. It answers four questions at once:
owner, admin or member);| Role in the organization | This endpoint |
|---|---|
owner | Allowed |
admin | Allowed |
member | Allowed |
Membership is enough — an agent has to be able to discover that it may not write.
None.
curl -H "x-api-key: $VILLASLOT_API_KEY" \
"https://villaslot.app/api/v1/me"200 OK — the context.{
"success": true,
"data": {
"organization": {"id": "a379bb76-…", "name": "TechCorp Solutions", "slug": "techcorp-solutions"},
"key": {"userId": "8105d4bd-…", "organizationRole": "owner"},
"settings": {
"timezone": "Asia/Makassar",
"currency": "IDR",
"bufferMinutes": 30,
"holdExpirationHours": 24,
"configured": true
},
"plan": {
"name": "free",
"hasSubscription": true,
"limits": {
"properties": {"limit": 1, "usage": 4, "remaining": 0},
"bookings": {"limit": 10, "usage": 7, "remaining": 3},
"customers": {"limit": 15, "usage": 4, "remaining": 11}
}
}
}
}401 Unauthorized — missing or invalid key, or a key whose bearer left the organization.429 Too Many Requests — over 120 requests in a minute for this key.settings.configured: false means no currency has been chosen yet. Creating a booking will
be refused until one is.plan.limits.*.remaining: 0 is a promise, not a hint: the same verdict is checked again by the
service before any write, and the creation will answer 409.