Key introspection
GET /partner/v1/me
Section titled “GET /partner/v1/me”No scope required — every valid key may ask what it is. This is the call to wire up first: it proves the key works, names the agency behind it and lists what the key is allowed to do, so a misconfigured integration fails on your first line rather than three endpoints later.
curl -H "Authorization: Bearer hr_live_…" \ https://api.myrentalcalendar.com/partner/v1/me{ "tenant": { "id": "0190c…", "name": "Marina Stays", "slug": "marina-stays", "currency": "AED", "timezone": "Asia/Dubai" }, "key": { "id": "0190d…", "name": "Reporting dashboard", "prefix": "hr_live_a4f2…", "scopes": ["read:units", "read:availability"], "createdAt": "2026-08-01T09:12:44.000Z", "expiresAt": null }, "rateLimit": { "requestsPerMinute": 60, "sharedWith": ["rest", "mcp"] }, "quota": { "month": "2026-08", "used": 12480, "quota": 50000, "remaining": 37520, "resetsAt": "2026-09-01T00:00:00.000Z" }}| Field | Notes |
|---|---|
tenant.currency | The agency’s base currency — every amount from every endpoint is in its minor unit |
tenant.timezone | The agency’s local time; check-in/check-out times and day boundaries are meant in it |
key.scopes | Exactly what this key may call. A request outside them answers 403 SCOPE_MISSING |
key.expiresAt | null for a key without an expiry date; past that moment the key answers 401 |
rateLimit | The per-key ceiling actually enforced, shared between REST and MCP |
quota | The agency’s month against its quota — all keys together (budgets) |
A 401 here means the key is wrong, revoked, expired or the agency account is
inactive; a 403 FEATURE_DISABLED means the key is fine but the agency’s plan
no longer includes API access.