Read the signed-in guest account for this installation
View .mdGET /v1/developer/guest/me
Operation ID: getDeveloperGuestSelf
Returns self identity plus memberships, bookings, saves, and canonical payment-on-file state filtered to this installation collection. TEST returns sandbox bookings and personal partner benefits only; LIVE excludes sandbox rows. membershipProgram contains the advertised benefit catalog, not guest eligibility. Personal benefits do not require membership. An active, unexpired award includes redemption.code and redemption.expiresAt only for the authenticated guest with a verified email; otherwise redemption is null. Capture with an email does not authenticate its owner: sign in with that same verified email to read saved offers. Keep codes out of logs, analytics, URLs and public HTML. Other personal perk types are not yet projected.
Contract status
Section titled “Contract status”| Field | Value |
|---|---|
| Maturity | beta |
| Required capability | guest_auth.write |
| Freshness class | authenticated-state |
| Quota cost | 1 |
All operations require a Kismet Developer Bearer credential. Collection and resource authority is resolved from the credential’s installation grants; identifiers in the URL never grant access.
Request parameters
Section titled “Request parameters”| Name | In | Type | Required | Description |
|---|---|---|---|---|
bookingCursor |
query | string | no | |
bookingLimit |
query | integer | no | |
saveCursor |
query | string | no | |
saveLimit |
query | integer | no | |
x-kismet-guest-token |
header | string | yes | Server-only Kismet guest access token held by the same-origin BFF. Never expose it to browser JavaScript. |
Request body
Section titled “Request body”This operation has no JSON request body.
Set KISMET_API_ORIGIN=https://api.ksmt.app and configure KISMET_DEVELOPER_API_KEY in your environment. Run server-credential requests from your backend, not browser code.
Guest access tokens come from the signed-in guest session held by your backend. Forward a CSRF proof only after your same-origin backend validates it. If shown, KISMET_SITE_ORIGIN is the authorized origin of your site. Do not substitute a guest ID or an invented token.
curl --request GET \ "$KISMET_API_ORIGIN/v1/developer/guest/me" \ --header "Authorization: Bearer $KISMET_DEVELOPER_API_KEY" \ --header "Accept: application/json" \ --header "x-kismet-guest-token: $GUEST_ACCESS_TOKEN"Responses
Section titled “Responses”| Status | Meaning |
|---|---|
| 200 | Success. |
| 400 | Invalid request parameters or body. |
| 401 | Missing, invalid, expired, or inappropriate credential/session. |
| 403 | Credential lacks the required grant/capability, or an origin/CSRF check failed. |
| 404 | The authorized resource was not found. |
| 429 | Rate limit or quota exceeded; inspect response metadata before retrying. |
| 503 | A required Kismet dependency is temporarily unavailable. |
200 response example
Section titled “200 response example”{ "identity": { "id": "77777777-7777-4777-8777-777777777777", "guestProfileId": "88888888-8888-4888-8888-888888888888", "phone": null, "firstName": "Taylor", "lastName": "Guest", "displayName": "Taylor Guest", "avatarUrl": null, "emailVerified": true, "phoneVerified": false }, "memberships": [], "bookings": { "data": [], "page": { "limit": 20, "nextCursor": null } }, "saves": { "data": [], "page": { "limit": 20, "nextCursor": null } }, "hasPaymentOnFile": false, "benefits": []}200 response schema
Section titled “200 response schema”Content type: application/json. Required fields, nullable values, and nested structures are defined below.
View complete response schema
{ "type": "object", "additionalProperties": false, "required": [ "identity", "memberships", "bookings", "saves", "hasPaymentOnFile" ], "properties": { "identity": { "type": "object", "additionalProperties": false, "required": [ "id", "guestProfileId", "email", "phone", "firstName", "lastName", "displayName", "avatarUrl", "emailVerified", "phoneVerified" ], "properties": { "id": { "type": "string" }, "guestProfileId": { "type": "string" }, "email": { "type": [ "null", "string" ] }, "phone": { "type": [ "null", "string" ] }, "firstName": { "type": [ "null", "string" ] }, "lastName": { "type": [ "null", "string" ] }, "displayName": { "type": [ "null", "string" ] }, "avatarUrl": { "type": [ "null", "string" ] }, "emailVerified": { "type": "boolean" }, "phoneVerified": { "type": "boolean" } } }, "memberships": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "collection", "status", "tier", "joinedAt" ], "properties": { "collection": { "type": "object", "additionalProperties": false, "required": [ "id", "slug", "name" ], "properties": { "id": { "type": "string" }, "slug": { "type": "string" }, "name": { "type": "string" } } }, "status": { "type": "string", "enum": [ "ACTIVE", "CANCELED" ] }, "tier": { "type": [ "null", "string" ] }, "joinedAt": { "type": "string", "format": "date-time" } } } }, "bookings": { "type": "object", "additionalProperties": false, "required": [ "data", "page" ], "properties": { "data": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "id", "confirmationCode", "status", "isSandbox", "checkIn", "checkOut", "nights", "guests", "currency", "totalPaidMinor", "balanceDueMinor", "vacationRental" ], "properties": { "id": { "type": "string" }, "confirmationCode": { "type": [ "null", "string" ] }, "status": { "type": "string" }, "isSandbox": { "type": "boolean" }, "checkIn": { "type": "string", "format": "date-time" }, "checkOut": { "type": "string", "format": "date-time" }, "nights": { "type": "integer" }, "guests": { "type": [ "null", "integer" ] }, "currency": { "type": "string" }, "totalPaidMinor": { "type": [ "null", "integer" ] }, "balanceDueMinor": { "type": [ "null", "integer" ] }, "vacationRental": { "type": "object", "additionalProperties": false, "required": [ "slug", "name" ], "properties": { "slug": { "type": "string" }, "name": { "type": "string" } } } } } }, "page": { "type": "object", "additionalProperties": false, "required": [ "limit", "nextCursor" ], "properties": { "limit": { "type": "integer" }, "nextCursor": { "type": [ "null", "string" ] } } } } }, "saves": { "type": "object", "additionalProperties": false, "required": [ "data", "page" ], "properties": { "data": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "id", "savedAt", "checkIn", "checkOut", "vacationRental" ], "properties": { "id": { "type": "string" }, "savedAt": { "type": "string", "format": "date-time" }, "checkIn": { "type": [ "null", "string" ], "format": "date-time" }, "checkOut": { "type": [ "null", "string" ], "format": "date-time" }, "quote": { "type": [ "null", "object" ], "additionalProperties": false, "required": [ "totalMinor", "currency", "quotedAt", "expiresAt" ], "properties": { "totalMinor": { "type": "integer" }, "currency": { "type": "string" }, "quotedAt": { "type": "string", "format": "date-time" }, "expiresAt": { "type": "string", "format": "date-time" } } }, "vacationRental": { "type": "object", "additionalProperties": false, "required": [ "slug", "name" ], "properties": { "slug": { "type": "string" }, "name": { "type": "string" }, "imageUrl": { "type": [ "null", "string" ] } } } } } }, "page": { "type": "object", "additionalProperties": false, "required": [ "limit", "nextCursor" ], "properties": { "limit": { "type": "integer" }, "nextCursor": { "type": [ "null", "string" ] } } } } }, "hasPaymentOnFile": { "type": "boolean" }, "benefits": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "perkId", "name", "headline", "promise", "provider", "state", "awardedAt", "redeemBy", "deliveredVia", "redemption" ], "properties": { "perkId": { "type": "string" }, "name": { "type": "string" }, "headline": { "type": "string" }, "promise": { "type": "string" }, "provider": { "type": "string" }, "state": { "type": "string", "enum": [ "pending", "awarded", "redeemed", "expired", "revoked", "failed" ] }, "awardedAt": { "type": [ "null", "string" ] }, "redeemBy": { "type": [ "null", "string" ] }, "deliveredVia": { "type": [ "null", "string" ], "enum": [ "email", null ] }, "redemption": { "type": [ "null", "object" ], "additionalProperties": false, "required": [ "code", "expiresAt" ], "properties": { "code": { "type": "string", "minLength": 1, "maxLength": 512 }, "expiresAt": { "type": [ "null", "string" ], "format": "date-time" } } } } } }, "membershipProgram": { "type": [ "null", "object" ], "additionalProperties": false, "description": "Collection-wide advertised benefits, not personal entitlements. Null means unavailable. Membership and offer conditions still apply; reading never joins or awards.", "required": [ "programEnabled", "collectionId", "benefits", "partnerBenefits" ], "properties": { "programEnabled": { "type": "boolean" }, "collectionId": { "type": "string" }, "benefits": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "id", "name", "description", "items" ], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "description": { "type": [ "null", "string" ] }, "items": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "label" ], "properties": { "label": { "type": "string" }, "description": { "type": [ "null", "string" ] } } } } } } }, "partnerBenefits": { "type": "array", "items": { "type": "object", "additionalProperties": false, "required": [ "id", "name", "headline", "promise", "provider", "awardWhen" ], "properties": { "id": { "type": "string" }, "name": { "type": "string" }, "headline": { "type": "string" }, "promise": { "type": "string" }, "provider": { "type": "string" }, "awardWhen": { "type": "string" } } } } } } }}