Get the caller's profile
get
https://api.expiryedge.com/v1/getMeany role (self only)60/min
Request
curl 'https://api.expiryedge.com/v1/getMe' \
-H "Authorization: Bearer $EXPIRYEDGE_API_KEY"Response
{
"id": "u_71bXq",
"email": "priya.shah@northwinddental.com",
"firstName": "Priya",
"lastName": "Shah",
"displayName": "Priya Shah",
"role": "admin",
"user_type": "organization",
"organization_id": "org_northwind",
"timezone": "America/Chicago",
"email_verified": true,
"createdAt": "2026-09-27T14:05:00.000Z"
}Returns the user profile document (internal security fields removed). Useful as a connection test.
200
The caller's profile.
idstringread-onlyemailstringread-onlyformat: emailfirstNamestringlastNamestringdisplayNamestringphotoURLstring | nullavatarstring | nullphonestring | nulladdressanyFree-form address (string or object).biostring | nulltimezonestring | nullIANA timezone.localestring | nullrolestringread-onlymemberis an alias of editor,userof viewer.Allowedadmineditorviewermemberuseruser_typestringread-onlyAllowedorganizationindividualorganization_idstring | nullread-onlystatusstringread-onlyactiveunless set otherwise (for examplemigrated).email_verifiedbooleanread-onlyAbsent on legacy accounts (treat as verified).dashboardColumnPrefsobjectnotificationPrefsobjectuiPrefsobjectcreated_atstringUTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).format: date-timecreatedAtstringUTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).format: date-timeupdated_atstringUTC timestamp, ISO 8601. Every v1 response uses this form, never a raw Firestore Timestamp ({_seconds, _nanoseconds}).format: date-time
401 | Missing, expired or invalid bearer token. |
404 | The record does not exist or is not in your organization. |
429 | Too many requests for this endpoint from your IP. Wait Retry-After seconds. |
