4781 lines
120 KiB
Markdown
4781 lines
120 KiB
Markdown
# Feeld API Documentation
|
|
|
|
**Extracted from Proxyman captures on 2026-01-24**
|
|
|
|
## Overview
|
|
|
|
- **GraphQL Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
- **Authentication**: Firebase Auth (Google SecureToken API)
|
|
- **App Version**: 8.7.8
|
|
- **iOS Version**: 18.6.2
|
|
|
|
### Known API Limitations
|
|
|
|
| Missing Feature | Notes |
|
|
|-----------------|-------|
|
|
| "Profiles I Liked" query | No endpoint exists. Liked profiles are removed from discover feed. |
|
|
| "Profiles I Passed" query | No endpoint exists. Passed profiles are removed from discover feed. |
|
|
| Undo like/pass | No mutation observed for undoing interactions. |
|
|
|
|
## Table of Contents
|
|
|
|
### Authentication
|
|
- [FirebaseTokenRefresh](#firebasetokenrefresh)
|
|
- [AuthProviderQuery](#authproviderquery)
|
|
- [AuthProviderSigninMutation](#authprovidersigninmutation)
|
|
- [AuthProviderSignupMutation](#authprovidersignupmutation)
|
|
- [AuthProviderStatusSyncQuery](#authproviderstatussyncquery)
|
|
|
|
### Profile
|
|
- [ProfileQuery](#profilequery)
|
|
- [AnalyticsQuery](#analyticsquery)
|
|
- [PhotoSelectorQuery](#photoselectorquery)
|
|
- [IsIncognitoQuery](#isincognitoquery)
|
|
- [LastSeenProviderUpdateProfile](#lastseenproviderupdateprofile)
|
|
|
|
### Discovery
|
|
- [DiscoverProfiles](#discoverprofiles)
|
|
- [DiscoverSearchSettingsQuery](#discoversearchsettingsquery)
|
|
- [SearchSettingsUpdate](#searchsettingsupdate)
|
|
- [AvailableDesires](#availabledesires)
|
|
|
|
### Interactions
|
|
- [WhoLikesMe](#wholikesme)
|
|
- [FilteredWhoLikesMe](#filteredwholikesme)
|
|
- [WhoPingsMe](#whopingsme)
|
|
- [ProfileLike](#profilelike) *(NEW)*
|
|
|
|
### Messages/Chat
|
|
- [HeaderSummaries](#headersummaries)
|
|
- [ListSummaries](#listsummaries)
|
|
- [GetChatSummary](#getchatsummary) *(NEW)*
|
|
- [ChatAttachment CDN](#chatattachment-cdn) *(NEW - REST)*
|
|
- [ChatAttachment Thumbnail](#chatattachment-thumbnail) *(NEW - REST)*
|
|
|
|
### Real-time
|
|
- [WebSocket Subscription](#websocket-subscription) *(NEW)*
|
|
|
|
### Account
|
|
- [AccountAcceptLegalNotices](#accountacceptlegalnotices)
|
|
- [AccountAddNotificationToken](#accountaddnotificationtoken)
|
|
- [hasLinkedReflection](#haslinkedreflection)
|
|
|
|
### Subscriptions
|
|
- [UpliftPurchaseQuery](#upliftpurchasequery)
|
|
|
|
### Location
|
|
- [DeviceLocationUpdate](#devicelocationupdate)
|
|
|
|
---
|
|
|
|
## Required Headers
|
|
|
|
```
|
|
Authorization: Bearer <firebase_jwt_token>
|
|
x-profile-id: profile#<uuid>
|
|
x-app-version: 8.7.8
|
|
x-device-os: ios
|
|
x-os-version: 18.6.2
|
|
Content-Type: application/json
|
|
x-transaction-id: <uuid>
|
|
x-event-analytics-id: <uuid>
|
|
```
|
|
|
|
---
|
|
|
|
## AccountAcceptLegalNotices
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"legalNoticeType": "PRIVACY_POLICY",
|
|
"version": "2025-09-10T00:00:00.000Z"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation AccountAcceptLegalNotices($input: [AccountAcceptLegalNoticeInput!]!) {
|
|
accountAcceptLegalNotices(input: $input) {
|
|
id
|
|
__typename
|
|
}
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"accountAcceptLegalNotices": {
|
|
"id": "account#bc637253-ed67-4eca-8018-a940bcce0f45",
|
|
"__typename": "Account"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "11d70923-c7c2-4259-8bb3-6ed0bfd6a679"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AccountAddNotificationToken
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"token": "chLtoJmdT0d0iOQwf7abCa:APA91bGWB7axxdJawCowSah-UdB259_XcxZ76Nt4N_v0KRxo6et8bULp6W_auBNU0P5mCeYlDVRKRjilZrqumBhB7n7WiMoB910oGjx6AIb1p8inEAfN2Ms"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation AccountAddNotificationToken($token: String!) {
|
|
accountAddNotificationToken(input: {token: $token})
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"accountAddNotificationToken": true
|
|
},
|
|
"extensions": {
|
|
"requestId": "e6da835d-7ab6-44ce-abb4-157b7a7d8c81"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AnalyticsQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query AnalyticsQuery($profileId: String!) {
|
|
account {
|
|
...AnalyticsAccountFragment
|
|
__typename
|
|
}
|
|
profile(id: $profileId) {
|
|
...AnalyticsOwnProfileFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment AnalyticsAccountFragment on Account {
|
|
id
|
|
analyticsId
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsOwnProfileFragment on Profile {
|
|
id
|
|
age
|
|
ageRange
|
|
bio
|
|
desires
|
|
desiringFor
|
|
analyticsId
|
|
distanceMax
|
|
hasHiddenBio
|
|
hiddenBio
|
|
interests
|
|
isUplift
|
|
recentlyOnline
|
|
isIncognito
|
|
status
|
|
isMajestic
|
|
gender
|
|
dateOfBirth
|
|
lookingFor
|
|
sexuality
|
|
allowPWM
|
|
enableChatContentModeration
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"errors": [
|
|
{
|
|
"message": "Must accept legal notices <{\"privacy_policy\":\"2025-09-10T00:00:00.000Z\"}>",
|
|
"locations": [
|
|
{
|
|
"line": 2,
|
|
"column": 3
|
|
}
|
|
],
|
|
"path": [
|
|
"account"
|
|
],
|
|
"extensions": {
|
|
"code": "UNAUTHENTICATED",
|
|
"originalError": {
|
|
"message": "Must accept legal notices <{\"privacy_policy\":\"2025-09-10T00:00:00.000Z\"}>",
|
|
"error": "ACCOUNT_MISSING_PP",
|
|
"statusCode": 401
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"data": null,
|
|
"extensions": {
|
|
"requestId": "ef0ca535-84df-4e74-b225-46491db3b914"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AuthProviderQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query AuthProviderQuery {
|
|
account {
|
|
...AuthProviderFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment AuthProviderFragment on Account {
|
|
id
|
|
email
|
|
analyticsId
|
|
status
|
|
createdAt
|
|
isFinishedOnboarding
|
|
isMajestic
|
|
upliftExpirationTimestamp
|
|
isUplift
|
|
isDistanceInMiles
|
|
language
|
|
ageVerificationStatus
|
|
verificationNumber
|
|
challenges
|
|
...AppSettingsOptionsAccountFragment
|
|
location {
|
|
device {
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
profiles {
|
|
...AuthProfile
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AppSettingsOptionsAccountFragment on Account {
|
|
appSettings {
|
|
receiveMarketingNotifications
|
|
receiveNewsEmailNotifications
|
|
receivePromotionsEmailNotifications
|
|
receiveNewsPushNotifications
|
|
receivePromotionsPushNotifications
|
|
receiveNewConnectionPushNotifications
|
|
receiveNewPingPushNotifications
|
|
receiveNewMessagePushNotifications
|
|
receiveNewLikePushNotifications
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AuthProfile on Profile {
|
|
imaginaryName
|
|
verificationLimits {
|
|
attemptsAvailable
|
|
__typename
|
|
}
|
|
connectionGoals
|
|
canVerify
|
|
photos {
|
|
pictureUrl
|
|
pictureStatus
|
|
...PictureVerificationMeta
|
|
...GetPictureUrlFragment
|
|
__typename
|
|
}
|
|
verificationStatus
|
|
reflectionResponseIds
|
|
...ChatUser
|
|
...AnalyticsOwnProfileFragment
|
|
reflectionResponseIds
|
|
__typename
|
|
}
|
|
|
|
fragment PictureVerificationMeta on Picture {
|
|
id
|
|
verification {
|
|
status
|
|
updatedAt
|
|
sessionUrl
|
|
failureReason
|
|
attempts
|
|
__typename
|
|
}
|
|
enrollment {
|
|
sessionId
|
|
status
|
|
updatedAt
|
|
failureReason
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ChatUser on Profile {
|
|
id
|
|
streamToken
|
|
streamUserId
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsOwnProfileFragment on Profile {
|
|
id
|
|
age
|
|
ageRange
|
|
bio
|
|
desires
|
|
desiringFor
|
|
analyticsId
|
|
distanceMax
|
|
hasHiddenBio
|
|
hiddenBio
|
|
interests
|
|
isUplift
|
|
recentlyOnline
|
|
isIncognito
|
|
status
|
|
isMajestic
|
|
gender
|
|
dateOfBirth
|
|
lookingFor
|
|
sexuality
|
|
allowPWM
|
|
enableChatContentModeration
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"errors": [
|
|
{
|
|
"message": "Must accept legal notices <{\"privacy_policy\":\"2025-09-10T00:00:00.000Z\"}>",
|
|
"locations": [
|
|
{
|
|
"line": 2,
|
|
"column": 3
|
|
}
|
|
],
|
|
"path": [
|
|
"account"
|
|
],
|
|
"extensions": {
|
|
"code": "UNAUTHENTICATED",
|
|
"originalError": {
|
|
"message": "Must accept legal notices <{\"privacy_policy\":\"2025-09-10T00:00:00.000Z\"}>",
|
|
"error": "ACCOUNT_MISSING_PP",
|
|
"statusCode": 401
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"data": null,
|
|
"extensions": {
|
|
"requestId": "4ffd7a09-3563-450c-abef-61f0a76a26b1"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AuthProviderSigninMutation
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"deviceFingerprint": "iOS;a2f1f31e-80b8-4a7d-b471-691b1ad44781;sB4klOf9/U7LUB4q0fOcIQ==;B/Psee6XHGZD2nLDmTORUwKzEruAEXwi1BHTR2ySYUeAAsalgdmQabNy+WPWulJNfP5TsKPoc6WkdWKjXclyv8GWGDv+ApKf+7+NkeHAYjYbsCD2nldnvKNz1AbXqrv8N3l0ysgkL1Q2Bz3yzFIa5N+pbqJRJTBnKQcGvT9xy7JFNTGVyUxJWxtZH/urwVZV2NlQDG5D8sC43rM6enUNmucg3IHQax2/B8sVX/xqxhKf/mKeD1MisrF5nvzCepuf5/9Zxl4Lqrpa0lwHLv47S/91QdJyfCGLgemuCmi4UgPSMVRBCKCwOtrl6ftZk0dQT3jMZjnfJFLcN4jT1ty6unQsgrG6w9D2TB3VS2gkY9QdtinUDUJ4HOGoF2cuaj/+MADHX79AIH1BkU8nEeLO3kIuLsl5QGMWp3YR4ATA9PJrQHo8oyPzHfBsJTO++TMCg+VX7jzVkURJ3dL7QCA1Gb44iGd5DzOmFKO2NvZyu5Mn/R3PT2MZMwBGR+ujQ/BMu9oWYeXRV0hHnEmjuOFaf8rxs98Ps3ih7V8LynJJMbQKT+3EhWejZj9AmFRZYXNwzrWptAGns2W4N95GbWdxm45c7vOTTXCxemScu/ppbHWwTs/LGPJofUHJbExO851zpXqfgZLDCvJc++ufNlwSmjG2w/hJ0FWW05lmatY5GsqHzNAOWw7OtFN+MKoTvZj6Oq54heUpz6XS4SkGLTyGrTkozwh3dtgJ5dyyaumWXFKke0pq4dtsxwS3iem+lDOLNHL0ty3AU0f/TVMdYXWHYLH8Wyxgh1ExnvhuMJgJ1h9+qECADafoiCf/hvxikfXAFpFVgnCIj2/Ffd4b0ZWMVdVR3Bh4nF3JVnNPRUwyuKOi20eCw92mJtDg+Ff98sntLj5NkPKRvdQUbNJV7xiDQILvGV6pf5S8yJHuY6BQfTzypLzHpNukR77btRxjDAam7OMXswiF3gAGhPDo8mXZto45bPjyP41/T2XmAV6aEeG3912IRD9Q/xAlPa2YdDLSfVUv9j6N5yoJtpW2xgvus+O/l9dlqV+6dV207CPx7WwFgGFEPMqV0HrYB+te2VKbyyltnPUQUMXiusjGJ7/B8m/tKYlBHM3bI5a2v4uoCHewauHVrQla6O9s6qnPNGOQJaRviBVuhm8Q5LnvSqZhTqU+hhx76wHBiQ6TimyjWqxeSpk3n11zmQj3rimBHKkYFtN4h48+AGq+6yecP3W6wsx+R/mdB39XabYoy2Hc6A16KbsQvA/2G9I3iEOCpQ5vwVUWd35fIlGoWB80HZA8yL8uGmxOLTZ2QFUWPLqBWzu75jjFT0l7VTzkb+5e4pVGRgHa3tr3tpTB7m3xqDG+sVwaiJVu4zFmVyNQqOKn8Ycjcv2GQFmb2pj/fGO6cx9aarUy4uUBgPQk3bnLsFeZ5vn0vxUTtmYZWaUQQww8dgVJriiMmVyohXTixrlI1J47hyKkFLjp9QO2vo1e7qhCWS4YPh3EVTcW9lcjjfTqQi2xRPJueAmhxEO0nFZOzZZnuSqei9ui7uPokqQ8iTwUwdwlXMfHY/UbInoQqbZYLOpRDccI6AcsPsr9psL//2CcYVX/Nl3ju8MiHOmKxJ9u0TCnzFcQLUiUZKekfB4wb4VWnfg/JGwVnke7XbRMHf4XUqLx0sSDuytMFyvCgbcdHEU0GoFKjqQFyjfcXG+TrYrcnzqdAAOyQ8YeKCnGUgdKRn/tl/1lWIV8bI8Sn7oT4wSZ+MwTPAqpsMG8TMU4mtc/tEL+N2sbGB7rQD/QGQTLvGy70YWNBG++BNAMls/I4+DJFxMnOOndlDXqWdMucH0UO6MusUv3E90Kv11Qof6GjIA7q66GPvrS3dnn9uojzpUa4qdAJyfO3WPfJV4+PI9cxICyz7CinTeCwhX9WSy6X0YDc57qbsa/GmZfTnBYbvjyepwOYXdd0+bIFAXVbsJoB+BuuMmR9WNh3IhXBGLI/TRxano1NMXQZlE6gtztwVK34F2r1SkcgTXseQNoqT17mwXoeeIUu7CBMKJnoKSf4zb/DTQaJVhQZBQS5NfC6NXVTLo1tAAZN0yLkGUYjjyPWQaJUYtsAsGk94GzU21smlhnu95ENmaOa/RvoI/KtyyliJTD+FAZagLU0bdDqB9mZN/GQrNH4wlexnBWxzQWAbCwJ9pmZ2ECRoNQukDbSjhE738jEac6RuKYblob9wpVKFO70UNo4TLfGAZMjzIDhoRFsES0ZojNC2M2Jv3kSY2VvGHECPP7TqmD8CcziYRmv3C6VKTYgJkKlpk5betmLL02NtT7+bXXlTNrYtc4vi9SJWVo8PmV8ZGwFz0slAcsKs7jhueyS5gYGz+WYGy05R0aQr2JLcAhc8xgdaMBlehSuSpSgGHo+5QEXoePPrya75ETiBRqeks9Y9j3nPAqj18AhySldIagnnPYMI6ywN5OEb9X9AN0cVck3RYdg8bDJrn9mmhFEy0SpYYcu7K+N+BWoTy9HXa/SUb5TkTiq6WNDFuDIwHokSwtwAAFZOaEe0nRnL03lZmgHCUZXLPL/i5H5g4sui+WPm22Wjyp/sa0J5zSmKAFaktNWQL2JfCxpwbG8BvyEno7OqegZVzBBZJ3YxrtbUAFo3SHjwO3naUl3rcf/Zf9N6RjoLKyiL5LwhNW0xXiVzajVdVWhP+KzpUPQUC8pVfjC48kf8XrTyTKF6M59gjgec0Wr0r7lLsoA3WFRt/vP5zZs2mbmztW0uPvyGCHQS3UIMg3JFyE8C4lHhl3dXSNvL0pOy9B2vM=",
|
|
"deviceDetails": "eyJ2ZXJzaW9uIjoxLCJkZXZpY2VJZCI6ImlQaG9uZTE0LDQiLCJkZXZpY2VNb2RlbCI6ImlQaG9uZSAxMyBtaW5pIiwiZGV2aWNlTWFudWZhY3R1cmVyIjoiQXBwbGUiLCJkZXZpY2VUeXBlIjoiSGFuZHNldCIsInN5c3RlbU5hbWUiOiJpT1MiLCJzeXN0ZW1WZXJzaW9uIjoiMTguNi4yIiwic2NyZWVuU2l6ZSI6IjM3NXg4MTIiLCJwaXhlbERlbnNpdHkiOjMsImlzSmFpbEJyb2tlbiI6ZmFsc2UsImlzRW11bGF0b3IiOmZhbHNlLCJpc0hvb2tlZCI6ZmFsc2UsImlzRGVidWdnZWRNb2RlIjpmYWxzZSwiY2FuTW9ja0xvY2F0aW9uIjpmYWxzZSwiaXNPbkV4dGVybmFsU3RvcmFnZSI6ZmFsc2UsImlzRGV2ZWxvcG1lbnRNb2RlIjpmYWxzZX0=",
|
|
"appCheckToken": "eyJraWQiOiJ2ckU4dWciLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxOjU5NDE1Mjc2MTYwMzppb3M6ZjUyY2YxNWVmZmY4Mjc4NjFiMjEzNiIsImF1ZCI6WyJwcm9qZWN0cy81OTQxNTI3NjE2MDMiLCJwcm9qZWN0cy9mMi1wcm9kLTUzNDc1Il0sInByb3ZpZGVyIjoiZGV2aWNlX2NoZWNrX2FwcF9hdHRlc3QiLCJpc3MiOiJodHRwczovL2ZpcmViYXNlYXBwY2hlY2suZ29vZ2xlYXBpcy5jb20vNTk0MTUyNzYxNjAzIiwiZXhwIjoxNzY5MjU3ODExLCJpYXQiOjE3NjkyNTQyMTEsImp0aSI6IlE5VnBxZDFEZmVOYXR4QUtMRU5TTGdjYWV0cC1HREtqMWRvVXhWcE5GR2cifQ.aF9ZDNHy26wxPBtdERS98FSDRD2JK2bcLt78ErwQG7DFu8X6tEz8JAempzAUSrdfubxuKWzah3mT-evRTa3XXQuovyvuP9V1rlveZE_V-eGmIvvWgs_jd--jUUowmpAyY7nMLi-9V_9gg8QnJRwTO1F_8gO1go61UtidYOm4ZBo7-_NBRSof-9F81RBKiD2JgMraEs-2KfbkhkBvXHhDQCQC8tvwJUa-EMNIVcLaYYPkezm-jt4oUaT0tifQquZrU71468P3X2swa-ib8s3eSUnNxOCt41QyPkOgETEe56gmR3tHI6wRgQpbDAaLSM9mWC86vqIiDE667msBD37rvMfhCwl1V_9uNwVP9xgbuQ8rd0dztEgv3P-C0HlOUcgmofJ9PAWN1OL3eQJPh--78AZhpzRj5PZhCkXFXPKd5kgCeVcIFMp2nx9LOhPqYhn2hIzDAavcTM383Arkps7IKqfIvnFYFEcbe4_x-91OG9_OFtEas2Xv7neDXQrCdaKz",
|
|
"deviceId": "269BEA7B-62CE-424B-9CEB-78F4E654EB15",
|
|
"deviceLocation": {
|
|
"latitude": 33.027,
|
|
"longitude": -97.061,
|
|
"city": "",
|
|
"country": ""
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation AuthProviderSigninMutation($input: SignInInput!) {
|
|
signin(input: $input) {
|
|
...AuthProviderFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment AuthProviderFragment on Account {
|
|
id
|
|
email
|
|
analyticsId
|
|
status
|
|
createdAt
|
|
isFinishedOnboarding
|
|
isMajestic
|
|
upliftExpirationTimestamp
|
|
isUplift
|
|
isDistanceInMiles
|
|
language
|
|
ageVerificationStatus
|
|
verificationNumber
|
|
challenges
|
|
...AppSettingsOptionsAccountFragment
|
|
location {
|
|
device {
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
profiles {
|
|
...AuthProfile
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AppSettingsOptionsAccountFragment on Account {
|
|
appSettings {
|
|
receiveMarketingNotifications
|
|
receiveNewsEmailNotifications
|
|
receivePromotionsEmailNotifications
|
|
receiveNewsPushNotifications
|
|
receivePromotionsPushNotifications
|
|
receiveNewConnectionPushNotifications
|
|
receiveNewPingPushNotifications
|
|
receiveNewMessagePushNotifications
|
|
receiveNewLikePushNotifications
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AuthProfile on Profile {
|
|
imaginaryName
|
|
verificationLimits {
|
|
attemptsAvailable
|
|
__typename
|
|
}
|
|
connectionGoals
|
|
canVerify
|
|
photos {
|
|
pictureUrl
|
|
pictureStatus
|
|
...PictureVerificationMeta
|
|
...GetPictureUrlFragment
|
|
__typename
|
|
}
|
|
verificationStatus
|
|
reflectionResponseIds
|
|
...ChatUser
|
|
...AnalyticsOwnProfileFragment
|
|
reflectionResponseIds
|
|
__typename
|
|
}
|
|
|
|
fragment PictureVerificationMeta on Picture {
|
|
id
|
|
verification {
|
|
status
|
|
updatedAt
|
|
sessionUrl
|
|
failureReason
|
|
attempts
|
|
__typename
|
|
}
|
|
enrollment {
|
|
sessionId
|
|
status
|
|
updatedAt
|
|
failureReason
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ChatUser on Profile {
|
|
id
|
|
streamToken
|
|
streamUserId
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsOwnProfileFragment on Profile {
|
|
id
|
|
age
|
|
ageRange
|
|
bio
|
|
desires
|
|
desiringFor
|
|
analyticsId
|
|
distanceMax
|
|
hasHiddenBio
|
|
hiddenBio
|
|
interests
|
|
isUplift
|
|
recentlyOnline
|
|
isIncognito
|
|
status
|
|
isMajestic
|
|
gender
|
|
dateOfBirth
|
|
lookingFor
|
|
sexuality
|
|
allowPWM
|
|
enableChatContentModeration
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"errors": [
|
|
{
|
|
"message": "Must accept legal notices <{\"privacy_policy\":\"2025-09-10T00:00:00.000Z\"}>",
|
|
"locations": [
|
|
{
|
|
"line": 2,
|
|
"column": 3
|
|
}
|
|
],
|
|
"path": [
|
|
"signin"
|
|
],
|
|
"extensions": {
|
|
"code": "UNAUTHENTICATED",
|
|
"originalError": {
|
|
"message": "Must accept legal notices <{\"privacy_policy\":\"2025-09-10T00:00:00.000Z\"}>",
|
|
"error": "ACCOUNT_MISSING_PP",
|
|
"statusCode": 401
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"data": null,
|
|
"extensions": {
|
|
"requestId": "16ac9234-0d07-4e6d-8c43-bc2726de1f15"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AuthProviderSignupMutation
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"deviceFingerprintId": "iOS;a2f1f31e-80b8-4a7d-b471-691b1ad44781;/c1ltFDol/sJVsYD2s45wA==;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",
|
|
"deviceDetails": "eyJ2ZXJzaW9uIjoxLCJkZXZpY2VJZCI6ImlQaG9uZTE0LDQiLCJkZXZpY2VNb2RlbCI6ImlQaG9uZSAxMyBtaW5pIiwiZGV2aWNlTWFudWZhY3R1cmVyIjoiQXBwbGUiLCJkZXZpY2VUeXBlIjoiSGFuZHNldCIsInN5c3RlbU5hbWUiOiJpT1MiLCJzeXN0ZW1WZXJzaW9uIjoiMTguNi4yIiwic2NyZWVuU2l6ZSI6IjM3NXg4MTIiLCJwaXhlbERlbnNpdHkiOjMsImlzSmFpbEJyb2tlbiI6ZmFsc2UsImlzRW11bGF0b3IiOmZhbHNlLCJpc0hvb2tlZCI6ZmFsc2UsImlzRGVidWdnZWRNb2RlIjpmYWxzZSwiY2FuTW9ja0xvY2F0aW9uIjpmYWxzZSwiaXNPbkV4dGVybmFsU3RvcmFnZSI6ZmFsc2UsImlzRGV2ZWxvcG1lbnRNb2RlIjpmYWxzZX0=",
|
|
"appCheckToken": "eyJraWQiOiJ2ckU4dWciLCJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJzdWIiOiIxOjU5NDE1Mjc2MTYwMzppb3M6ZjUyY2YxNWVmZmY4Mjc4NjFiMjEzNiIsImF1ZCI6WyJwcm9qZWN0cy81OTQxNTI3NjE2MDMiLCJwcm9qZWN0cy9mMi1wcm9kLTUzNDc1Il0sInByb3ZpZGVyIjoiZGV2aWNlX2NoZWNrX2FwcF9hdHRlc3QiLCJpc3MiOiJodHRwczovL2ZpcmViYXNlYXBwY2hlY2suZ29vZ2xlYXBpcy5jb20vNTk0MTUyNzYxNjAzIiwiZXhwIjoxNzY5MjU3ODExLCJpYXQiOjE3NjkyNTQyMTEsImp0aSI6IlE5VnBxZDFEZmVOYXR4QUtMRU5TTGdjYWV0cC1HREtqMWRvVXhWcE5GR2cifQ.aF9ZDNHy26wxPBtdERS98FSDRD2JK2bcLt78ErwQG7DFu8X6tEz8JAempzAUSrdfubxuKWzah3mT-evRTa3XXQuovyvuP9V1rlveZE_V-eGmIvvWgs_jd--jUUowmpAyY7nMLi-9V_9gg8QnJRwTO1F_8gO1go61UtidYOm4ZBo7-_NBRSof-9F81RBKiD2JgMraEs-2KfbkhkBvXHhDQCQC8tvwJUa-EMNIVcLaYYPkezm-jt4oUaT0tifQquZrU71468P3X2swa-ib8s3eSUnNxOCt41QyPkOgETEe56gmR3tHI6wRgQpbDAaLSM9mWC86vqIiDE667msBD37rvMfhCwl1V_9uNwVP9xgbuQ8rd0dztEgv3P-C0HlOUcgmofJ9PAWN1OL3eQJPh--78AZhpzRj5PZhCkXFXPKd5kgCeVcIFMp2nx9LOhPqYhn2hIzDAavcTM383Arkps7IKqfIvnFYFEcbe4_x-91OG9_OFtEas2Xv7neDXQrCdaKz",
|
|
"deviceUId": "269BEA7B-62CE-424B-9CEB-78F4E654EB15"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation AuthProviderSignupMutation($input: AccountCreateInput!) {
|
|
signup(input: $input) {
|
|
...AuthProviderFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment AuthProviderFragment on Account {
|
|
id
|
|
email
|
|
analyticsId
|
|
status
|
|
createdAt
|
|
isFinishedOnboarding
|
|
isMajestic
|
|
upliftExpirationTimestamp
|
|
isUplift
|
|
isDistanceInMiles
|
|
language
|
|
ageVerificationStatus
|
|
verificationNumber
|
|
challenges
|
|
...AppSettingsOptionsAccountFragment
|
|
location {
|
|
device {
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
profiles {
|
|
...AuthProfile
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AppSettingsOptionsAccountFragment on Account {
|
|
appSettings {
|
|
receiveMarketingNotifications
|
|
receiveNewsEmailNotifications
|
|
receivePromotionsEmailNotifications
|
|
receiveNewsPushNotifications
|
|
receivePromotionsPushNotifications
|
|
receiveNewConnectionPushNotifications
|
|
receiveNewPingPushNotifications
|
|
receiveNewMessagePushNotifications
|
|
receiveNewLikePushNotifications
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AuthProfile on Profile {
|
|
imaginaryName
|
|
verificationLimits {
|
|
attemptsAvailable
|
|
__typename
|
|
}
|
|
connectionGoals
|
|
canVerify
|
|
photos {
|
|
pictureUrl
|
|
pictureStatus
|
|
...PictureVerificationMeta
|
|
...GetPictureUrlFragment
|
|
__typename
|
|
}
|
|
verificationStatus
|
|
reflectionResponseIds
|
|
...ChatUser
|
|
...AnalyticsOwnProfileFragment
|
|
reflectionResponseIds
|
|
__typename
|
|
}
|
|
|
|
fragment PictureVerificationMeta on Picture {
|
|
id
|
|
verification {
|
|
status
|
|
updatedAt
|
|
sessionUrl
|
|
failureReason
|
|
attempts
|
|
__typename
|
|
}
|
|
enrollment {
|
|
sessionId
|
|
status
|
|
updatedAt
|
|
failureReason
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ChatUser on Profile {
|
|
id
|
|
streamToken
|
|
streamUserId
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsOwnProfileFragment on Profile {
|
|
id
|
|
age
|
|
ageRange
|
|
bio
|
|
desires
|
|
desiringFor
|
|
analyticsId
|
|
distanceMax
|
|
hasHiddenBio
|
|
hiddenBio
|
|
interests
|
|
isUplift
|
|
recentlyOnline
|
|
isIncognito
|
|
status
|
|
isMajestic
|
|
gender
|
|
dateOfBirth
|
|
lookingFor
|
|
sexuality
|
|
allowPWM
|
|
enableChatContentModeration
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"errors": [
|
|
{
|
|
"message": "Another account has been found with the provided firebaseId",
|
|
"locations": [
|
|
{
|
|
"line": 2,
|
|
"column": 3
|
|
}
|
|
],
|
|
"path": [
|
|
"signup"
|
|
],
|
|
"extensions": {
|
|
"code": "INTERNAL_SERVER_ERROR",
|
|
"status": 409,
|
|
"originalError": {
|
|
"message": "Another account has been found with the provided firebaseId",
|
|
"error": "ACCOUNT_WITH_FIREBASE_ID_EXISTS",
|
|
"statusCode": 409
|
|
}
|
|
}
|
|
}
|
|
],
|
|
"data": null,
|
|
"extensions": {
|
|
"requestId": "42ce136b-b2f7-410a-bec4-b695ef2d8e4f"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AuthProviderStatusSyncQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query AuthProviderStatusSyncQuery {
|
|
account {
|
|
...AuthProviderStatusSyncFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment AuthProviderStatusSyncFragment on Account {
|
|
id
|
|
status
|
|
isFinishedOnboarding
|
|
isMajestic
|
|
availablePings
|
|
upliftExpirationTimestamp
|
|
isUplift
|
|
profiles {
|
|
id
|
|
profileLinks(linkType: PAIR) {
|
|
linkId
|
|
linkType
|
|
profileId
|
|
__typename
|
|
}
|
|
...Constellation
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment Constellation on Profile {
|
|
constellation {
|
|
...Partner
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment Partner on Partner {
|
|
partnerId
|
|
partnerLabel
|
|
partnerProfile {
|
|
id
|
|
age
|
|
imaginaryName
|
|
dateOfBirth
|
|
gender
|
|
sexuality
|
|
isIncognito
|
|
photos {
|
|
...GetPictureUrlFragment
|
|
__typename
|
|
}
|
|
...ProfileInteractionStatusFragment
|
|
status
|
|
verificationStatus
|
|
isMajestic
|
|
__typename
|
|
}
|
|
partnerStatus
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileInteractionStatusFragment on Profile {
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"account": {
|
|
"id": "account#bc637253-ed67-4eca-8018-a940bcce0f45",
|
|
"status": "ACTIVE",
|
|
"isFinishedOnboarding": true,
|
|
"isMajestic": false,
|
|
"availablePings": 0,
|
|
"upliftExpirationTimestamp": null,
|
|
"isUplift": false,
|
|
"profiles": [
|
|
{
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"profileLinks": [],
|
|
"constellation": [],
|
|
"__typename": "Profile"
|
|
}
|
|
],
|
|
"__typename": "Account"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "3c7d4f8e-ae0e-4fb4-a46f-4d348bebd65a"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## AvailableDesires
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"locale": "en-US",
|
|
"version": 2
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query AvailableDesires($locale: String!, $version: Int) {
|
|
desiresByCategoryLocalised(locale: $locale, version: $version) {
|
|
category
|
|
desires
|
|
localisedCategory
|
|
__typename
|
|
}
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"desiresByCategoryLocalised": [
|
|
{
|
|
"category": "LIMITED_EDITION",
|
|
"desires": {
|
|
"FREEDOMME": {
|
|
"localisedString": "Freedomme",
|
|
"deprecated": true,
|
|
"free": true,
|
|
"analyticsCategory": "desires_relations"
|
|
}
|
|
},
|
|
"localisedCategory": "Limited edition",
|
|
"__typename": "LocalisedDesireCategory"
|
|
},
|
|
{
|
|
"category": "KINK_AND_FANTASY",
|
|
"desires": {
|
|
"BDSM": {
|
|
"localisedString": "BDSM",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"BRAT": {
|
|
"localisedString": "Being a brat",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks",
|
|
"search": "Brats"
|
|
},
|
|
"BRAT_TAMER": {
|
|
"localisedString": "Being a brat tamer",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks",
|
|
"search": "Brat tamers"
|
|
},
|
|
"SWITCH": {
|
|
"localisedString": "Being a switch",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks",
|
|
"search": "Switches"
|
|
},
|
|
"DOMINANTS": {
|
|
"localisedString": "Being dominant",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks",
|
|
"search": "Dominant people"
|
|
},
|
|
"SUBMISSIVES": {
|
|
"localisedString": "Being submissive",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks",
|
|
"search": "Submissive people"
|
|
},
|
|
"BONDAGE": {
|
|
"localisedString": "Bondage",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"EDGING": {
|
|
"localisedString": "Edging",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"KINK": {
|
|
"localisedString": "Kink",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"ROLE_PLAY": {
|
|
"localisedString": "Role play",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"ROUGH": {
|
|
"localisedString": "Rough",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"TOYS": {
|
|
"localisedString": "Toys",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"VANILLA": {
|
|
"localisedString": "Vanilla",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"WATCHING": {
|
|
"localisedString": "Watching",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
}
|
|
},
|
|
"localisedCategory": "Kink and fantasy",
|
|
"__typename": "LocalisedDesireCategory"
|
|
},
|
|
{
|
|
"category": "GROUP_DYNAMICS",
|
|
"desires": {
|
|
"FFF": {
|
|
"localisedString": "FFF",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"FFFF": {
|
|
"localisedString": "FFFF",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"FFM": {
|
|
"localisedString": "FFM",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"GROUP": {
|
|
"localisedString": "Group",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MFMF": {
|
|
"localisedString": "MFMF",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MMF": {
|
|
"localisedString": "MMF",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MMM": {
|
|
"localisedString": "MMM",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MMMM": {
|
|
"localisedString": "MMMM",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"PARTIES": {
|
|
"localisedString": "Parties",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"THREESOME": {
|
|
"localisedString": "Threeway",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
}
|
|
},
|
|
"localisedCategory": "Group dynamics",
|
|
"__typename": "LocalisedDesireCategory"
|
|
},
|
|
{
|
|
"category": "CASUAL_ENCOUNTERS",
|
|
"desires": {
|
|
"CASUAL": {
|
|
"localisedString": "Casual",
|
|
"free": true,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"DATES": {
|
|
"localisedString": "Dates",
|
|
"free": true,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"EXPLORATION": {
|
|
"localisedString": "Exploration",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"FLIRTING": {
|
|
"localisedString": "Flirting",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"FUN": {
|
|
"localisedString": "Fun",
|
|
"free": false,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"GGG": {
|
|
"localisedString": "GGG",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
},
|
|
"TEXTING": {
|
|
"localisedString": "Texting",
|
|
"free": false,
|
|
"analyticsCategory": "desires_kinks"
|
|
}
|
|
},
|
|
"localisedCategory": "Casual encounters",
|
|
"__typename": "LocalisedDesireCategory"
|
|
},
|
|
{
|
|
"category": "ONE_ON_ONE",
|
|
"desires": {
|
|
"FF": {
|
|
"localisedString": "FF",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MF": {
|
|
"localisedString": "MF",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MM": {
|
|
"localisedString": "MM",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"MONOGAMY": {
|
|
"localisedString": "Monogamy",
|
|
"free": false,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"RELATIONSHIP": {
|
|
"localisedString": "Relationship",
|
|
"free": false,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"SINGLES": {
|
|
"localisedString": "Singles",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
}
|
|
},
|
|
"localisedCategory": "One-on-one",
|
|
"__typename": "LocalisedDesireCategory"
|
|
},
|
|
{
|
|
"category": "OPEN_TO_EXPLORING",
|
|
"desires": {
|
|
"COUPLES": {
|
|
"localisedString": "Couples",
|
|
"free": false,
|
|
"analyticsCategory": "desires_group"
|
|
},
|
|
"ENM": {
|
|
"localisedString": "ENM",
|
|
"free": false,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"OPEN_RELATIONSHIP": {
|
|
"localisedString": "Open relationship",
|
|
"free": false,
|
|
"analyticsCategory": "desires_relations"
|
|
},
|
|
"POLY": {
|
|
"localisedString": "Poly",
|
|
"free": false,
|
|
"analyticsCategory": "desires_relations"
|
|
}
|
|
},
|
|
"localisedCategory": "Open to exploring",
|
|
"__typename": "LocalisedDesireCategory"
|
|
},
|
|
{
|
|
"category": "FRIENDSHIP_FIRST",
|
|
"desires": {
|
|
"CELIBATE": {
|
|
"localisedString": "Celibate",
|
|
"free": false,
|
|
"anal
|
|
... [truncated]
|
|
```
|
|
|
|
---
|
|
|
|
## DeviceLocationUpdate
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"latitude": 33.027,
|
|
"longitude": -97.061
|
|
}
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation DeviceLocationUpdate($input: DeviceLocationInput!) {
|
|
deviceLocationUpdate(input: $input) {
|
|
id
|
|
location {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
profiles {
|
|
id
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"deviceLocationUpdate": {
|
|
"id": "account#bc637253-ed67-4eca-8018-a940bcce0f45",
|
|
"location": {
|
|
"device": {
|
|
"latitude": 0,
|
|
"longitude": 0,
|
|
"geocode": null,
|
|
"__typename": "Location"
|
|
},
|
|
"__typename": "DeviceLocation"
|
|
},
|
|
"profiles": [
|
|
{
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"location": {
|
|
"device": {
|
|
"latitude": 0,
|
|
"longitude": 0,
|
|
"geocode": null,
|
|
"__typename": "Location"
|
|
},
|
|
"__typename": "DeviceLocation"
|
|
},
|
|
"__typename": "Profile"
|
|
}
|
|
],
|
|
"__typename": "Account"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "ab3d99b9-9e73-4bf7-9711-5d0877de40d2"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## DiscoverProfiles
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"filters": {
|
|
"ageRange": [
|
|
22,
|
|
59
|
|
],
|
|
"maxDistance": 100,
|
|
"lookingFor": [
|
|
"WOMAN",
|
|
"MAN_WOMAN_COUPLE",
|
|
"WOMAN_WOMAN_COUPLE"
|
|
],
|
|
"recentlyOnline": false,
|
|
"desiringFor": []
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Pagination (Load More)
|
|
|
|
To load more profiles, include `alreadyShownProfileIDs` in the filters with an array of profile IDs that have already been displayed:
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"filters": {
|
|
"ageRange": [22, 59],
|
|
"maxDistance": 100,
|
|
"lookingFor": ["WOMAN", "MAN_WOMAN_COUPLE", "WOMAN_WOMAN_COUPLE"],
|
|
"recentlyOnline": false,
|
|
"desiringFor": [],
|
|
"alreadyShownProfileIDs": [
|
|
"profile#04706f98-d876-4f86-8815-463680ad15ba",
|
|
"profile#3e98ff6b-86ce-4f34-93b6-ba0130d2e96c",
|
|
"profile#8b078b4e-9be3-4105-896a-91999fd85e45"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
The API will exclude these profiles and return new ones. Check `hasNextBatch` in the response to determine if more profiles are available.
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query DiscoverProfiles($input: ProfileDiscoveryInput!) {
|
|
discovery(input: $input) {
|
|
nodes {
|
|
...DiscoveryProfileFragment
|
|
__typename
|
|
}
|
|
hasNextBatch
|
|
feedGeneratedAt
|
|
generatedWithProfileUpdatedAt
|
|
feedSize
|
|
feedCapacity
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment DiscoveryProfileFragment on Profile {
|
|
...ProfileContentProfileFragment
|
|
...DiscoveryAnalyticsMetadata
|
|
...Constellation
|
|
streamUserId
|
|
analyticsId
|
|
age
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileContentProfileFragment on Profile {
|
|
bio
|
|
hiddenBio
|
|
hasHiddenBio
|
|
age
|
|
streamUserId
|
|
dateOfBirth
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
connectionGoals
|
|
desires
|
|
gender
|
|
id
|
|
status
|
|
imaginaryName
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
interests
|
|
isMajestic
|
|
isIncognito
|
|
lastSeen
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
sexuality
|
|
photos {
|
|
...PhotoCarouselPictureFragment
|
|
__typename
|
|
}
|
|
...Constellation
|
|
allowPWM
|
|
verificationStatus
|
|
enableChatContentModeration
|
|
...AnalyticsProfileFragment
|
|
...DiscoveryAnalyticsMetadata
|
|
isParticipantToEventChat
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment PhotoCarouselPictureFragment on Picture {
|
|
id
|
|
pictureIsPrivate
|
|
pictureIsSafe
|
|
pictureStatus
|
|
pictureType
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
publicId
|
|
verification {
|
|
status
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment Constellation on Profile {
|
|
constellation {
|
|
...Partner
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment Partner on Partner {
|
|
partnerId
|
|
partnerLabel
|
|
partnerProfile {
|
|
id
|
|
age
|
|
imaginaryName
|
|
dateOfBirth
|
|
gender
|
|
sexuality
|
|
isIncognito
|
|
photos {
|
|
...GetPictureUrlFragment
|
|
__typename
|
|
}
|
|
...ProfileInteractionStatusFragment
|
|
status
|
|
verificationStatus
|
|
isMajestic
|
|
__typename
|
|
}
|
|
partnerStatus
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileInteractionStatusFragment on Profile {
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsProfileFragment on Profile {
|
|
id
|
|
isUplift
|
|
lastSeen
|
|
age
|
|
gender
|
|
sexuality
|
|
verificationStatus
|
|
connectionGoals
|
|
hasHiddenBio
|
|
hiddenBio
|
|
imaginaryName
|
|
interactionStatus {
|
|
mine
|
|
theirs
|
|
message
|
|
__typename
|
|
}
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
metadata {
|
|
source
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment DiscoveryAnalyticsMetadata on Profile {
|
|
metadata {
|
|
source
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"discovery": {
|
|
"nodes": [
|
|
{
|
|
"bio": "JUSTTT moved to Texas. I miss home and need some new friends!",
|
|
"hiddenBio": null,
|
|
"hasHiddenBio": false,
|
|
"age": 29,
|
|
"streamUserId": "5fd34b3fcc5b4700420003dc",
|
|
"dateOfBirth": null,
|
|
"distance": {
|
|
"km": 1,
|
|
"mi": 1,
|
|
"__typename": "ProfileDistance"
|
|
},
|
|
"connectionGoals": [],
|
|
"desires": [
|
|
"SUBMISSIVES",
|
|
"DATES",
|
|
"KISSING",
|
|
"CONNECTION",
|
|
"MM",
|
|
"BDSM",
|
|
"PARTIES"
|
|
],
|
|
"gender": "WOMAN",
|
|
"id": "profile#86eeaab9-fae3-51ea-b32c-dc086f9d3405",
|
|
"status": "ACTIVE",
|
|
"imaginaryName": "Noki",
|
|
"interactionStatus": {
|
|
"message": null,
|
|
"mine": "NONE",
|
|
"theirs": "NONE",
|
|
"__typename": "InteractionStatusBetweenProfilesOutput"
|
|
},
|
|
"interests": [
|
|
"Botany",
|
|
"Hiking",
|
|
"Cooking",
|
|
"Working out",
|
|
"Fashion",
|
|
"Traveling",
|
|
"Reading",
|
|
"Drinking"
|
|
],
|
|
"isMajestic": false,
|
|
"isIncognito": false,
|
|
"lastSeen": null,
|
|
"location": {
|
|
"device": {
|
|
"latitude": 0,
|
|
"longitude": 0,
|
|
"geocode": null,
|
|
"__typename": "Location"
|
|
},
|
|
"__typename": "DeviceLocation"
|
|
},
|
|
"sexuality": "PANSEXUAL",
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#86eeaab9-fae3-51ea-b32c-dc086f9d3405-2e161a1d-8637-5ccc-8b0f-24e0aa5e6a65",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/6d100782-3031-40f3-acfa-19b2d1a97548?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/6d100782-3031-40f3-acfa-19b2d1a97548?__cld_token__=exp=1769340621~hmac=7b2bafa70e29dfbc222dd8f0e3902879fe924baf0186bb01fafc30975bfaa4de&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/6d100782-3031-40f3-acfa-19b2d1a97548?__cld_token__=exp=1769340621~hmac=365614e5659d4d44faf86cdd3537eead8254d21041c7d1f4647d88fc2c4370ca&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/6d100782-3031-40f3-acfa-19b2d1a97548?__cld_token__=exp=1769340621~hmac=d29c12734476051f3837aa0660e75df6a06b4dc5fcbed217140224365b57a5b1&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "6d100782-3031-40f3-acfa-19b2d1a97548",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#86eeaab9-fae3-51ea-b32c-dc086f9d3405-3aaf77c3-dc62-5fc8-859b-cbe835ff4ec0",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/f36c5bd9-1122-4212-9f08-a2c1a339a512?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/f36c5bd9-1122-4212-9f08-a2c1a339a512?__cld_token__=exp=1769340621~hmac=6f48e8047c0bebb6cdda2d4bdf8de86e93272844fe6ddaafc9d04bf6f7beac0f&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/f36c5bd9-1122-4212-9f08-a2c1a339a512?__cld_token__=exp=1769340621~hmac=57df4d36ae7f4e2093c5f8cc19d66017570f03c83f626d56b9f50072347ff46f&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/f36c5bd9-1122-4212-9f08-a2c1a339a512?__cld_token__=exp=1769340621~hmac=bb3c67c43cf57f1c0de384387f6a0e2865ac0874a16a80d3982d008581d90c9e&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "f36c5bd9-1122-4212-9f08-a2c1a339a512",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#86eeaab9-fae3-51ea-b32c-dc086f9d3405-1f65eb49-1727-47ab-a460-479f838a118d",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/db0631c1-e8f4-4ab8-95c9-0509e1fcc138?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/db0631c1-e8f4-4ab8-95c9-0509e1fcc138?__cld_token__=exp=1769340621~hmac=58728391105419a82f19380e36de34c9929537ebad9e09309337647b4c1108d9&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/db0631c1-e8f4-4ab8-95c9-0509e1fcc138?__cld_token__=exp=1769340621~hmac=f5fb6e867eb9c882c16240203b1be573346a46151724c2eae3ad627159c21aff&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/db0631c1-e8f4-4ab8-95c9-0509e1fcc138?__cld_token__=exp=1769340621~hmac=90be1f6a9356cc6d4f0222df2a1259151884e9bfb3fa2f5136d6805bb678a799&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "db0631c1-e8f4-4ab8-95c9-0509e1fcc138",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#86eeaab9-fae3-51ea-b32c-dc086f9d3405-bca2dd33-bb93-4555-847a-6741f634cb92",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/f1519921-8451-40e0-b97d-d239d6cd97a4?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/f1519921-8451-40e0-b97d-d239d6cd97a4?__cld_token__=exp=1769340621~hmac=663a99a0a40e4e7557968d9c008b19bf6bbda75aa1641e7871d958544d5605a8&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/f1519921-8451-40e0-b97d-d239d6cd97a4?__cld_token__=exp=1769340621~hmac=bc885874962f0ac8b351175e61350647768b42fa41bb7da7be112a261ad116b3&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/f1519921-8451-40e0-b97d-d239d6cd97a4?__cld_token__=exp=1769340621~hmac=b06b5d0b66303a64c0b46ed262d1c45e5ed9618cacabc76de9766ce896c49b03&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "f1519921-8451-40e0-b97d-d239d6cd97a4",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
|
|
... [truncated]
|
|
```
|
|
|
|
### Response Fields
|
|
|
|
#### `hasNextBatch`
|
|
- **Type**: `Boolean`
|
|
- **Description**: Indicates if more profiles are available for loading. Use with `alreadyShownProfileIDs` to implement pagination.
|
|
|
|
#### `feedSize`
|
|
- **Type**: `Int`
|
|
- **Description**: Total number of profiles in the current batch (typically 200).
|
|
|
|
#### `interactionStatus`
|
|
|
|
Each profile includes an `interactionStatus` object showing the interaction state between users:
|
|
|
|
| Field | Type | Description |
|
|
|-------|------|-------------|
|
|
| `mine` | `String` | Your interaction with this profile |
|
|
| `theirs` | `String` | Their interaction with you |
|
|
| `message` | `String?` | Optional message sent with their interaction |
|
|
|
|
**Possible values for `mine` and `theirs`:**
|
|
|
|
| Value | Description |
|
|
|-------|-------------|
|
|
| `NONE` | No interaction yet |
|
|
| `LIKED` | User has liked the profile |
|
|
| `DISLIKED` | User has passed/disliked the profile |
|
|
|
|
**Use cases:**
|
|
- Show "Likes you" badge when `theirs === "LIKED"`
|
|
- Show "Not interested" indicator when `theirs === "DISLIKED"`
|
|
|
|
**Important API Behavior:**
|
|
- In the discover feed, `mine` is **always** `"NONE"` for all returned profiles
|
|
- When you like a profile, it is **removed from the discover feed entirely**
|
|
- There is no API endpoint to retrieve "profiles you've liked" (no "WhoILiked" query)
|
|
- This means filtering by `mine === "LIKED"` in the discover response will always return zero results
|
|
- Filtering by `theirs` (LIKED/DISLIKED) works correctly since other users' interactions with you are preserved
|
|
|
|
**Available Endpoints by Interaction Type:**
|
|
| Filter | Available Via |
|
|
|--------|---------------|
|
|
| Profiles that like you | `WhoLikesMe` or `FilteredWhoLikesMe` queries |
|
|
| Profiles that passed on you | Visible in discover feed via `theirs === "DISLIKED"` |
|
|
| Profiles you liked | ❌ Not available (removed from feed after liking) |
|
|
| Profiles you passed on | ❌ Not available (removed from feed after passing) |
|
|
|
|
---
|
|
|
|
## DiscoverSearchSettingsQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query DiscoverSearchSettingsQuery($profileId: String!) {
|
|
profile(id: $profileId) {
|
|
...DiscoverSearchSettingsFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment DiscoverSearchSettingsFragment on Profile {
|
|
id
|
|
status
|
|
ageRange
|
|
desiringFor
|
|
desires
|
|
distanceMax
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
lookingFor
|
|
recentlyOnline
|
|
allowPWM
|
|
imaginaryName
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profile": {
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"status": "ACTIVE",
|
|
"ageRange": [
|
|
22,
|
|
59
|
|
],
|
|
"desiringFor": [],
|
|
"desires": [
|
|
"FFF",
|
|
"FFM",
|
|
"MMF",
|
|
"CASUAL",
|
|
"DATES",
|
|
"TEXTING",
|
|
"MF",
|
|
"RELATIONSHIP",
|
|
"ENM",
|
|
"OPEN_RELATIONSHIP"
|
|
],
|
|
"distanceMax": 100,
|
|
"location": {
|
|
"device": {
|
|
"latitude": 0,
|
|
"longitude": 0,
|
|
"geocode": null,
|
|
"__typename": "Location"
|
|
},
|
|
"__typename": "DeviceLocation"
|
|
},
|
|
"lookingFor": [
|
|
"WOMAN",
|
|
"MAN_WOMAN_COUPLE",
|
|
"WOMAN_WOMAN_COUPLE"
|
|
],
|
|
"recentlyOnline": null,
|
|
"allowPWM": true,
|
|
"imaginaryName": "Toni",
|
|
"__typename": "Profile"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "1a8113f8-5d11-4e43-ac94-3a111ef2b0b5"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## FilteredWhoLikesMe
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"input": {
|
|
"filters": {
|
|
"ageRange": false
|
|
},
|
|
"sortBy": "LAST_INTERACTION"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation FilteredWhoLikesMe($input: FilteredInteractionInput!, $cursor: String) {
|
|
filteredWhoLikesMe(input: $input, cursor: $cursor) {
|
|
filters {
|
|
ageRange
|
|
desires
|
|
lookingFor
|
|
sexualities
|
|
__typename
|
|
}
|
|
profiles {
|
|
nodes {
|
|
...LikesProfileFragment
|
|
__typename
|
|
}
|
|
pageInfo {
|
|
total
|
|
unfilteredTotal
|
|
hasNextPage
|
|
nextPageCursor
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment LikesProfileFragment on Profile {
|
|
id
|
|
age
|
|
gender
|
|
status
|
|
lastSeen
|
|
desires
|
|
connectionGoals
|
|
isUplift
|
|
sexuality
|
|
isMajestic
|
|
dateOfBirth
|
|
streamUserId
|
|
imaginaryName
|
|
bio
|
|
hiddenBio
|
|
hasHiddenBio
|
|
allowPWM
|
|
interests
|
|
verificationStatus
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
photos {
|
|
...PhotoCarouselPictureFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment PhotoCarouselPictureFragment on Picture {
|
|
id
|
|
pictureIsPrivate
|
|
pictureIsSafe
|
|
pictureStatus
|
|
pictureType
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
publicId
|
|
verification {
|
|
status
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"filteredWhoLikesMe": {
|
|
"filters": {
|
|
"ageRange": false,
|
|
"desires": null,
|
|
"lookingFor": null,
|
|
"sexualities": null,
|
|
"__typename": "WhoLikesMeFilters"
|
|
},
|
|
"profiles": {
|
|
"nodes": [
|
|
{
|
|
"id": "profile#1a15f043-4984-51b6-8dca-303f864d597c",
|
|
"age": 56,
|
|
"gender": "AGENDER",
|
|
"status": "ACTIVE",
|
|
"lastSeen": null,
|
|
"desires": [],
|
|
"connectionGoals": [],
|
|
"isUplift": false,
|
|
"sexuality": "ANDROGYNOSEXUAL",
|
|
"isMajestic": false,
|
|
"dateOfBirth": null,
|
|
"streamUserId": null,
|
|
"imaginaryName": "Jess",
|
|
"bio": null,
|
|
"hiddenBio": null,
|
|
"hasHiddenBio": false,
|
|
"allowPWM": false,
|
|
"interests": [],
|
|
"verificationStatus": "UNVERIFIED",
|
|
"interactionStatus": {
|
|
"message": null,
|
|
"mine": "NONE",
|
|
"theirs": "NONE",
|
|
"__typename": "InteractionStatusBetweenProfilesOutput"
|
|
},
|
|
"profilePairs": [],
|
|
"distance": null,
|
|
"location": null,
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597cc261a117-63b0-43e0-9409-125d86d262ed",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c46e35f8a-a8c9-40f5-8f54-5d64cfe87b33",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597cb057202d-1cba-4680-b0c1-2c5a87b85fc9",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597ce9ed5e25-2698-4636-9480-68f37eb1defa",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c3c9728b5-9fe8-4629-b42d-6df6722e9ef0",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
}
|
|
],
|
|
"__typename": "Profile"
|
|
},
|
|
{
|
|
"id": "profile#7d255430-37dd-514e-90e8-9ee1272c0f53",
|
|
"age": 56,
|
|
"gender": "AGENDER",
|
|
"status": "ACTIVE",
|
|
"lastSeen": null,
|
|
"desires": [],
|
|
"connectionGoals": [],
|
|
"isUplift": false,
|
|
"sexuality": "ANDROGYNOSEXUAL",
|
|
"isMajestic": false,
|
|
"dateOfBirth": null,
|
|
"streamUserId": null,
|
|
"imaginaryName": "J",
|
|
"bio": null,
|
|
"hiddenBio": null,
|
|
"hasHiddenBio": false,
|
|
"allowPWM": false,
|
|
"interests": [],
|
|
"verificationStatus": "UNVERIFIED",
|
|
"interactionStatus": {
|
|
"message": null,
|
|
"mine": "NONE",
|
|
"theirs": "NONE",
|
|
"__typename": "InteractionStatusBetweenProfilesOutput"
|
|
},
|
|
"profilePairs": [],
|
|
"distance": null,
|
|
"location": null,
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f53263777d3-155a-4d02-b4e6-8364d5ddab33",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f53ea7feb5a-4311-4f3c-8604-b6e2bb18fad8",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f53f859a93e-f790-4357-a77a-e9fc7d6e4e98",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"p
|
|
... [truncated]
|
|
```
|
|
|
|
---
|
|
|
|
## FirebaseTokenRefresh
|
|
|
|
**Type**: REST API
|
|
**Endpoint**: `https://securetoken.googleapis.com/v1/token?key=AIzaSyD9o9mzulN50-hqOwF6ww9pxUNUxwVOCXA`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"refreshToken": "AMf-vBxB7p1m84Jw8GNk1CsuEbgMInPt0lzOKXK81e-XiO13PUeA1VfkZ6gu29MN6izbLIWrBqeGaczU3DC5FY-vSePOoGAn3RZnjLWN2DzLmTiOiAH25UxTZPeE3d-g_8-JeBDgQptuP1xy1U0EGxM5msolSLEu8GBRnkxAtEhoIzVtyjCsaD1aBHdWqZiIPStLz-6YQj2j-pDoEVYr3aOBvNxnzv_vL4y91wFkVtMFaC0jOZZE39gbbSj5GH7JcHHiW-NJFcfD0BYKM9zfqs0SxPaYYuqTSQyS3lra1SVxn0XB-ZhcR-I",
|
|
"grantType": "refresh_token"
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"access_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjFjMzIxOTgzNGRhNTBlMjBmYWVhZWE3Yzg2Y2U3YjU1MzhmMTdiZTEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vZjItcHJvZC01MzQ3NSIsImF1ZCI6ImYyLXByb2QtNTM0NzUiLCJhdXRoX3RpbWUiOjE3NTQ1MDU5NTEsInVzZXJfaWQiOiJkVkRCalVRakF2WHBZMWl0aUF1N2txOTdEUHkyIiwic3ViIjoiZFZEQmpVUWpBdlhwWTFpdGlBdTdrcTk3RFB5MiIsImlhdCI6MTc2OTI1NDIxNiwiZXhwIjoxNzY5MjU3ODE2LCJlbWFpbCI6InJ5NzRwMjV4MnZAcHJpdmF0ZXJlbGF5LmFwcGxlaWQuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiYXBwbGUuY29tIjpbIjAwMTc1MS45NTZkNjJkODA2YjY0ZTgzYjFhNTBmNjBkMDBhNDYyZi4wMTU3Il0sImVtYWlsIjpbInJ5NzRwMjV4MnZAcHJpdmF0ZXJlbGF5LmFwcGxlaWQuY29tIl19LCJzaWduX2luX3Byb3ZpZGVyIjoiYXBwbGUuY29tIn19.UKzTPO_xi7sEws_QVoHfEix2JE4ynVejh6AaRebqP5xsXDl-h_RHuCBJotG3vZyTHfZ2MuJNdlF830jyXBzpw-6NOE8hSmPnV7NtjeYp0E9pc5SB7CXTCfw4UEJ4vqvlD7vZzYF9KGcT6chGnlYpXU-iMZy70HSfGCoN5KtccAdRBTNa8E3PeGHBYbnhZuDB3ix00eh4GfSVj0XIMnnIZcFeUxlapDQMJLq6u4KlVXgXKBGcsnXTvt27cHWlJ597qFHM6iqrRZG3xbZb-nCmgGY8umgx0yZCK6Sq7l_bzcS9V1rBTMtwfEM-p0on0oEKGbchh9JI1wTlUEWh6pqscg",
|
|
"expires_in": "3600",
|
|
"token_type": "Bearer",
|
|
"refresh_token": "AMf-vBxB7p1m84Jw8GNk1CsuEbgMInPt0lzOKXK81e-XiO13PUeA1VfkZ6gu29MN6izbLIWrBqeGaczU3DC5FY-vSePOoGAn3RZnjLWN2DzLmTiOiAH25UxTZPeE3d-g_8-JeBDgQptuP1xy1U0EGxM5msolSLEu8GBRnkxAtEhoIzVtyjCsaD1aBHdWqZiIPStLz-6YQj2j-pDoEVYr3aOBvNxnzv_vL4y91wFkVtMFaC0jOZZE39gbbSj5GH7JcHHiW-NJFcfD0BYKM9zfqs0SxPaYYuqTSQyS3lra1SVxn0XB-ZhcR-I",
|
|
"id_token": "eyJhbGciOiJSUzI1NiIsImtpZCI6IjFjMzIxOTgzNGRhNTBlMjBmYWVhZWE3Yzg2Y2U3YjU1MzhmMTdiZTEiLCJ0eXAiOiJKV1QifQ.eyJpc3MiOiJodHRwczovL3NlY3VyZXRva2VuLmdvb2dsZS5jb20vZjItcHJvZC01MzQ3NSIsImF1ZCI6ImYyLXByb2QtNTM0NzUiLCJhdXRoX3RpbWUiOjE3NTQ1MDU5NTEsInVzZXJfaWQiOiJkVkRCalVRakF2WHBZMWl0aUF1N2txOTdEUHkyIiwic3ViIjoiZFZEQmpVUWpBdlhwWTFpdGlBdTdrcTk3RFB5MiIsImlhdCI6MTc2OTI1NDIxNiwiZXhwIjoxNzY5MjU3ODE2LCJlbWFpbCI6InJ5NzRwMjV4MnZAcHJpdmF0ZXJlbGF5LmFwcGxlaWQuY29tIiwiZW1haWxfdmVyaWZpZWQiOnRydWUsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiYXBwbGUuY29tIjpbIjAwMTc1MS45NTZkNjJkODA2YjY0ZTgzYjFhNTBmNjBkMDBhNDYyZi4wMTU3Il0sImVtYWlsIjpbInJ5NzRwMjV4MnZAcHJpdmF0ZXJlbGF5LmFwcGxlaWQuY29tIl19LCJzaWduX2luX3Byb3ZpZGVyIjoiYXBwbGUuY29tIn19.UKzTPO_xi7sEws_QVoHfEix2JE4ynVejh6AaRebqP5xsXDl-h_RHuCBJotG3vZyTHfZ2MuJNdlF830jyXBzpw-6NOE8hSmPnV7NtjeYp0E9pc5SB7CXTCfw4UEJ4vqvlD7vZzYF9KGcT6chGnlYpXU-iMZy70HSfGCoN5KtccAdRBTNa8E3PeGHBYbnhZuDB3ix00eh4GfSVj0XIMnnIZcFeUxlapDQMJLq6u4KlVXgXKBGcsnXTvt27cHWlJ597qFHM6iqrRZG3xbZb-nCmgGY8umgx0yZCK6Sq7l_bzcS9V1rBTMtwfEM-p0on0oEKGbchh9JI1wTlUEWh6pqscg",
|
|
"user_id": "dVDBjUQjAvXpY1itiAu7kq97DPy2",
|
|
"project_id": "594152761603"
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## HeaderSummaries
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"limit": 10
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query HeaderSummaries($limit: Int = 10, $cursor: String) {
|
|
summaries: getChatSummariesForChatHeader(limit: $limit, cursor: $cursor) {
|
|
nodes {
|
|
...ChatSummary
|
|
__typename
|
|
}
|
|
pageInfo {
|
|
hasNextPage
|
|
nextPageCursor
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment ChatSummary on ChatSummary {
|
|
...ChatSummaryItem
|
|
__typename
|
|
}
|
|
|
|
fragment ChatSummaryItem on ChatSummary {
|
|
id
|
|
name
|
|
type
|
|
status
|
|
avatarSet
|
|
chatAvatarUrl
|
|
chatDescription
|
|
openedAt
|
|
memberCount
|
|
latestMessage
|
|
streamChannelId
|
|
targetProfileId
|
|
targetProfile {
|
|
isVerified
|
|
isMajestic
|
|
gender
|
|
age
|
|
sexuality
|
|
__typename
|
|
}
|
|
enableChatContentModeration
|
|
participationStatus
|
|
participationType
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"summaries": {
|
|
"nodes": [
|
|
{
|
|
"id": "chat#6dfc8238-8596-4fc0-a250-98a5b92b0ae8",
|
|
"name": "Katie",
|
|
"type": "PRIVATE",
|
|
"status": "INACTIVE",
|
|
"avatarSet": [
|
|
"https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/3cdc82af-f622-4686-bc1d-76dcf3787d41?__cld_token__=exp=1769340619~hmac=27ad6e382764efbe83196a97eb58543dc21f0ee091ce514f5dfb5a122c640703&_a=BAMAK+TI0"
|
|
],
|
|
"chatAvatarUrl": null,
|
|
"chatDescription": null,
|
|
"openedAt": null,
|
|
"memberCount": 2,
|
|
"latestMessage": null,
|
|
"streamChannelId": "7a07096e-a5c6-4dbf-b713-b67518e1b31b",
|
|
"targetProfileId": "profile#3bdbf6eb-2d05-595e-b3d5-0949453c6d06",
|
|
"targetProfile": {
|
|
"isVerified": false,
|
|
"isMajestic": false,
|
|
"gender": "WOMAN",
|
|
"age": 27,
|
|
"sexuality": "PANSEXUAL",
|
|
"__typename": "TargetProfileData"
|
|
},
|
|
"enableChatContentModeration": false,
|
|
"participationStatus": "APPROVED",
|
|
"participationType": "OWNER",
|
|
"__typename": "ChatSummary"
|
|
}
|
|
],
|
|
"pageInfo": {
|
|
"hasNextPage": false,
|
|
"nextPageCursor": null,
|
|
"__typename": "PageInfo"
|
|
},
|
|
"__typename": "PaginatedChatSummaries"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "f46bf714-5428-4b39-ac9b-106ae890bfbc"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## IsIncognitoQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query IsIncognitoQuery($profileId: String!) {
|
|
profile(id: $profileId) {
|
|
id
|
|
isIncognito
|
|
__typename
|
|
}
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profile": {
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"isIncognito": false,
|
|
"__typename": "Profile"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "58c3e180-6b81-4ffd-80f3-e3ccc2ad2504"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## LastSeenProviderUpdateProfile
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation LastSeenProviderUpdateProfile($profileId: String!) {
|
|
updatedProfileLastSeen: profileUpdateLastSeen(profileId: $profileId)
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"updatedProfileLastSeen": true
|
|
},
|
|
"extensions": {
|
|
"requestId": "e867d163-bbb2-4e70-ae91-585cd59c2e2a"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## ListSummaries
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"limit": 10
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query ListSummaries($limit: Int = 10, $cursor: String) {
|
|
summaries: getChatSummariesForChatList(limit: $limit, cursor: $cursor) {
|
|
nodes {
|
|
...ChatSummary
|
|
__typename
|
|
}
|
|
pageInfo {
|
|
hasNextPage
|
|
nextPageCursor
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment ChatSummary on ChatSummary {
|
|
...ChatSummaryItem
|
|
__typename
|
|
}
|
|
|
|
fragment ChatSummaryItem on ChatSummary {
|
|
id
|
|
name
|
|
type
|
|
status
|
|
avatarSet
|
|
chatAvatarUrl
|
|
chatDescription
|
|
openedAt
|
|
memberCount
|
|
latestMessage
|
|
streamChannelId
|
|
targetProfileId
|
|
targetProfile {
|
|
isVerified
|
|
isMajestic
|
|
gender
|
|
age
|
|
sexuality
|
|
__typename
|
|
}
|
|
enableChatContentModeration
|
|
participationStatus
|
|
participationType
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"summaries": {
|
|
"nodes": [
|
|
{
|
|
"id": "chat#090b2bcb-7e5f-46a6-9506-404a084fcb3c",
|
|
"name": "FunCouple",
|
|
"type": "PRIVATE",
|
|
"status": "ACTIVE",
|
|
"avatarSet": [
|
|
"https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/646a6c22-5b1e-4d38-b7ee-22af5610b111?__cld_token__=exp=1769340617~hmac=34e6e9406696b3b065247b215ac9118255579f6297d3406ba39aaa4a397e8af4&_a=BAMAK+TI0"
|
|
],
|
|
"chatAvatarUrl": null,
|
|
"chatDescription": null,
|
|
"openedAt": null,
|
|
"memberCount": 2,
|
|
"latestMessage": {
|
|
"id": "0727f6d4-3531-42ee-befe-f000a98807cd",
|
|
"text": "Hi. So sorry. It\u2019s been a bit crazy on the work and home front for both of us the past several weeks. Let\u2019s plan something after Thanksgiving. Family in town this coming week",
|
|
"html": "<p>Hi. So sorry. It\u2019s been a bit crazy on the work and home front for both of us the past several weeks. Let\u2019s plan something after Thanksgiving. Family in town this coming week</p>\n",
|
|
"type": "regular",
|
|
"user": {
|
|
"id": "633b20c44181730001005aee",
|
|
"name": "FunCouple",
|
|
"image": "https://res.cloudinary.com/threender/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/646a6c22-5b1e-4d38-b7ee-22af5610b111?__cld_token__=exp=1765611856~hmac=5afcc1e86834b5418abd8551fb1a4e1e05373856f7cde851c99aa34551e24b87&_a=BAMAAAeA0",
|
|
"language": "",
|
|
"role": "user",
|
|
"teams": [],
|
|
"created_at": "2022-10-03T18:05:11.88176Z",
|
|
"updated_at": "2025-12-12T06:14:21.19437Z",
|
|
"banned": false,
|
|
"online": false,
|
|
"last_active": "2026-01-24T04:47:42.919914Z",
|
|
"blocked_user_ids": [],
|
|
"shadow_banned": false,
|
|
"invisible": false,
|
|
"profileStatus": "active",
|
|
"profileIsIncognito": true
|
|
},
|
|
"member": {
|
|
"channel_role": "channel_member"
|
|
},
|
|
"attachments": [],
|
|
"latest_reactions": [],
|
|
"own_reactions": [],
|
|
"reaction_counts": {},
|
|
"reaction_scores": {},
|
|
"reply_count": 0,
|
|
"deleted_reply_count": 0,
|
|
"cid": "messaging:461b5f51-e3cb-4942-ac5c-43b213586c0b",
|
|
"created_at": "2025-11-20T14:42:24.409Z",
|
|
"updated_at": "2025-11-20T14:42:24.409Z",
|
|
"shadowed": false,
|
|
"mentioned_users": [],
|
|
"silent": false,
|
|
"pinned": false,
|
|
"pinned_at": null,
|
|
"pinned_by": null,
|
|
"pin_expires": null,
|
|
"restricted_visibility": [],
|
|
"custom_properties": {
|
|
"status": "regular",
|
|
"type": "text"
|
|
},
|
|
"__html": "<p>Hi. So sorry. It\u2019s been a bit crazy on the work and home front for both of us the past several weeks. Let\u2019s plan something after Thanksgiving. Family in town this coming week</p>\n",
|
|
"status": "received"
|
|
},
|
|
"streamChannelId": "461b5f51-e3cb-4942-ac5c-43b213586c0b",
|
|
"targetProfileId": "profile#6e25bfee-4a2b-58ac-8eb4-d5e9ed37a195",
|
|
"targetProfile": {
|
|
"isVerified": false,
|
|
"isMajestic": true,
|
|
"gender": "WOMAN",
|
|
"age": 46,
|
|
"sexuality": "BISEXUAL",
|
|
"__typename": "TargetProfileData"
|
|
},
|
|
"enableChatContentModeration": false,
|
|
"participationStatus": "APPROVED",
|
|
"participationType": "OWNER",
|
|
"__typename": "ChatSummary"
|
|
},
|
|
{
|
|
"id": "chat#ba82c33c-3634-403f-b7dd-af8f5133a5b9",
|
|
"name": "L",
|
|
"type": "PRIVATE",
|
|
"status": "ACTIVE",
|
|
"avatarSet": [
|
|
"https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/9407d5d7-bf41-49af-9aa6-a4782958fc24?__cld_token__=exp=1769340617~hmac=1df02d3539f309a5526760578843f4a8c2d15c5d0a9faff46fd4d1caf024cc3b&_a=BAMAK+TI0"
|
|
],
|
|
"chatAvatarUrl": null,
|
|
"chatDescription": null,
|
|
"openedAt": null,
|
|
"memberCount": 2,
|
|
"latestMessage": {
|
|
"id": "95109140-b984-4a2e-89d9-7ce44e566652",
|
|
"text": "Bro \u2026. That description god damn \ud83e\udd23\ud83e\udd23\ud83d\ude2e\u200d\ud83d\udca8\ud83d\ude2e\u200d\ud83d\udca8\ud83d\ude2e\u200d\ud83d\udca8",
|
|
"html": "<p>Bro \u2026. That description god damn \ud83e\udd23\ud83e\udd23\ud83d\ude2e\u200d\ud83d\udca8\ud83d\ude2e\u200d\ud83d\udca8\ud83d\ude2e\u200d\ud83d\udca8</p>\n",
|
|
"type": "regular",
|
|
"user": {
|
|
"id": "1d7c503e-fe25-42e7-a87b-475abfecdab7",
|
|
"name": "Toni",
|
|
"image": "https://res.cloudinary.com/threender/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1765611729~hmac=f6a01635999d88e92498043902fefad187da08326a17d78cb591b0e05a781259&_a=BAMAAAeA0",
|
|
"language": "",
|
|
"role": "user",
|
|
"teams": [],
|
|
"created_at": "2025-08-06T18:48:26.903821Z",
|
|
"updated_at": "2025-12-12T06:12:14.795639Z",
|
|
"banned": false,
|
|
"online": true,
|
|
"last_active": "2026-01-24T11:30:16.14179348Z",
|
|
"blocked_user_ids": [],
|
|
"shadow_banned": false,
|
|
"invisible": false,
|
|
"profileIsIncognito": false,
|
|
"profileStatus": "active"
|
|
},
|
|
"member": {
|
|
"channel_role": "channel_member"
|
|
},
|
|
"attachments": [],
|
|
"latest_reactions": [],
|
|
"own_reactions": [],
|
|
"reaction_counts": {},
|
|
"reaction_scores": {},
|
|
"reply_count": 0,
|
|
"deleted_reply_count": 0,
|
|
"cid": "messaging:4a4b09b5-86b1-41a3-a1b2-f209f8cbad65",
|
|
"created_at": "2025-11-08T21:44:00.490Z",
|
|
"updated_at": "2025-11-08T21:44:00.490Z",
|
|
"shadowed": false,
|
|
"mentioned_users": [],
|
|
"silent": false,
|
|
"pinned": false,
|
|
"pinned_at": null,
|
|
"pinned_by": null,
|
|
"pin_expires": null,
|
|
"restricted_visibility": [],
|
|
"custom_properties": {
|
|
"type": "text",
|
|
"status": "regular"
|
|
},
|
|
"__html": "<p>Bro \u2026. That description god damn \ud83e\udd23\ud83e\udd23\ud83d\ude2e\u200d\ud83d\udca8\ud83d\ude2e\u200d\ud83d\udca8\ud83d\ude2e\u200d\ud83d\udca8</p>\n",
|
|
"status": "received"
|
|
},
|
|
"streamChannelId": "4a4b09b5-86b1-41a3-a1b2-f209f8cbad65",
|
|
"targetProfileId": "profile#8957da76-4aa4-49c2-9b0d-fabedb51d792",
|
|
"targetProfile": {
|
|
"isVerified": false,
|
|
"isMajestic": true,
|
|
"gender": "WOMAN",
|
|
"age": 30,
|
|
"sexuality": "STRAIGHT",
|
|
"__typename": "TargetProfileData"
|
|
},
|
|
"enableChatContentModeration": false,
|
|
"participationStatus": "APPROVED",
|
|
"participationType": "OWNER",
|
|
"__typename": "ChatSummary"
|
|
},
|
|
{
|
|
"id": "chat#06bda534-d33c-49d3-bd3e-f971f17a1037",
|
|
"name": "SharedXGoddess",
|
|
"type": "PRIVATE",
|
|
"status": "DISCONNECTED",
|
|
"avatarSet": [
|
|
"https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/5f122019-7fb2-4329-a4fc-e5812e59b4f8?__cld_token__=exp=1769340617~hmac=4bcd8289b4c82beacdd4e0fe6c589b0ba095e64882df9870cde773796d253f80&_a=BAMAK+TI0"
|
|
],
|
|
"chatAvatarUrl": null,
|
|
"chatDescription": null,
|
|
"opened
|
|
... [truncated]
|
|
```
|
|
|
|
---
|
|
|
|
## PhotoSelectorQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query PhotoSelectorQuery($profileId: String!) {
|
|
profile(id: $profileId) {
|
|
id
|
|
photos {
|
|
...PhotoSelectorFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment PhotoSelectorFragment on Picture {
|
|
id
|
|
pictureIsPrivate
|
|
pictureIsSafe
|
|
pictureOrder
|
|
pictureStatus
|
|
pictureType
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
publicId
|
|
verification {
|
|
status
|
|
failureReason
|
|
attempts
|
|
__typename
|
|
}
|
|
enrollment {
|
|
status
|
|
failureReason
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profile": {
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-e0923a2a-ad1a-4b22-9a97-4303e44b01f9",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureOrder": 1,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1769340611~hmac=a9ca9596a54a5007af79b533e600fc61f2b4e1c619668cfbe7753861cee7a596&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1769340611~hmac=a98a1bc492e24cf231f937552ee0f4122ca3328c1a80fd129237043b25c38295&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1769340611~hmac=b954384e66532cb02503b573aa8d8e4d6ab4bb29aa2395e1a61bb71d786c8fc0&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da",
|
|
"verification": null,
|
|
"enrollment": null,
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-e9b10448-165a-4e1c-8133-7bde9591b961",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureOrder": 2,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/a35f0a6c-dda8-4011-99ec-71679df7dffd?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/a35f0a6c-dda8-4011-99ec-71679df7dffd?__cld_token__=exp=1769340611~hmac=dbd2a28b79d924aadbb0030192b21d2c56e1809be0a3589eab3f73f44220004f&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/a35f0a6c-dda8-4011-99ec-71679df7dffd?__cld_token__=exp=1769340611~hmac=90d1bd3653b70b413934815728ca5b1ac325817db89420b11e9296ae2b567d93&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/a35f0a6c-dda8-4011-99ec-71679df7dffd?__cld_token__=exp=1769340611~hmac=94a6c3779bf010d254523feca2967a7cc356c4263af759c477b18d4e48fe8169&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "a35f0a6c-dda8-4011-99ec-71679df7dffd",
|
|
"verification": null,
|
|
"enrollment": null,
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-5b7bca15-d924-47b4-a244-3d2cf19e0956",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureOrder": 3,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?__cld_token__=exp=1769340611~hmac=319ddb60dc3c19a458e11d7cc822cdac941e2291f34665752aa70ff875bf1386&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?__cld_token__=exp=1769340611~hmac=d06bb10b53ffa9384a6f9981f9987de56809c86dab86a04c359160f2174cd605&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?__cld_token__=exp=1769340611~hmac=d1b459ebb2fcff73bd368023c4e5671c8fcd781a18e393f5c3255bf1690f8f33&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a",
|
|
"verification": null,
|
|
"enrollment": null,
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-f8f823ee-dc86-4b21-9ac5-34fec4934e28",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureOrder": 4,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/4b2110a8-2114-4bbb-9927-ddca81a0d998?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/4b2110a8-2114-4bbb-9927-ddca81a0d998?__cld_token__=exp=1769340611~hmac=b22cd0d53ef1d594e8fa8d05233349063814b52a6cf1336f0538083bbbc3be06&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/4b2110a8-2114-4bbb-9927-ddca81a0d998?__cld_token__=exp=1769340611~hmac=4b5bca9116140b16e6f694e2435dcdc5e8b0146e9e66e1cbdfc24905949e192f&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/4b2110a8-2114-4bbb-9927-ddca81a0d998?__cld_token__=exp=1769340611~hmac=f8b0d654c2edd0590968cff81ee7334925b622be13de3d80175bead9428749ba&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "4b2110a8-2114-4bbb-9927-ddca81a0d998",
|
|
"verification": null,
|
|
"enrollment": null,
|
|
"__typename": "Picture"
|
|
}
|
|
],
|
|
"__typename": "Profile"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "888664f8-3c61-431f-b765-279df6f3e939"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## ProfileQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query ProfileQuery($profileId: String!) {
|
|
profile(id: $profileId) {
|
|
...ProfileContentProfileFragment
|
|
streamUserId
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment ProfileContentProfileFragment on Profile {
|
|
bio
|
|
hiddenBio
|
|
hasHiddenBio
|
|
age
|
|
streamUserId
|
|
dateOfBirth
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
connectionGoals
|
|
desires
|
|
gender
|
|
id
|
|
status
|
|
imaginaryName
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
interests
|
|
isMajestic
|
|
isIncognito
|
|
lastSeen
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
sexuality
|
|
photos {
|
|
...PhotoCarouselPictureFragment
|
|
__typename
|
|
}
|
|
...Constellation
|
|
allowPWM
|
|
verificationStatus
|
|
enableChatContentModeration
|
|
...AnalyticsProfileFragment
|
|
...DiscoveryAnalyticsMetadata
|
|
isParticipantToEventChat
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment PhotoCarouselPictureFragment on Picture {
|
|
id
|
|
pictureIsPrivate
|
|
pictureIsSafe
|
|
pictureStatus
|
|
pictureType
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
publicId
|
|
verification {
|
|
status
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment Constellation on Profile {
|
|
constellation {
|
|
...Partner
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment Partner on Partner {
|
|
partnerId
|
|
partnerLabel
|
|
partnerProfile {
|
|
id
|
|
age
|
|
imaginaryName
|
|
dateOfBirth
|
|
gender
|
|
sexuality
|
|
isIncognito
|
|
photos {
|
|
...GetPictureUrlFragment
|
|
__typename
|
|
}
|
|
...ProfileInteractionStatusFragment
|
|
status
|
|
verificationStatus
|
|
isMajestic
|
|
__typename
|
|
}
|
|
partnerStatus
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileInteractionStatusFragment on Profile {
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsProfileFragment on Profile {
|
|
id
|
|
isUplift
|
|
lastSeen
|
|
age
|
|
gender
|
|
sexuality
|
|
verificationStatus
|
|
connectionGoals
|
|
hasHiddenBio
|
|
hiddenBio
|
|
imaginaryName
|
|
interactionStatus {
|
|
mine
|
|
theirs
|
|
message
|
|
__typename
|
|
}
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
metadata {
|
|
source
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment DiscoveryAnalyticsMetadata on Profile {
|
|
metadata {
|
|
source
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profile": {
|
|
"bio": "ENM\nI don\u2019t take myself too seriously\nEducated and drama free\nCoffee is a great first date, right? \nLooking to meet interesting, like-minded individuals ",
|
|
"hiddenBio": null,
|
|
"hasHiddenBio": false,
|
|
"age": 41,
|
|
"streamUserId": "1d7c503e-fe25-42e7-a87b-475abfecdab7",
|
|
"dateOfBirth": "1984-07-11T00:00:00.000Z",
|
|
"distance": null,
|
|
"connectionGoals": [
|
|
"DATING",
|
|
"LONG_TERM_CONNECTIONS",
|
|
"NON_MONOGAMY"
|
|
],
|
|
"desires": [
|
|
"FFF",
|
|
"FFM",
|
|
"MMF",
|
|
"CASUAL",
|
|
"DATES",
|
|
"TEXTING",
|
|
"MF",
|
|
"RELATIONSHIP",
|
|
"ENM",
|
|
"OPEN_RELATIONSHIP"
|
|
],
|
|
"gender": "MAN",
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"status": "ACTIVE",
|
|
"imaginaryName": "Toni",
|
|
"interactionStatus": {
|
|
"message": null,
|
|
"mine": "OWNED",
|
|
"theirs": "OWNED",
|
|
"__typename": "InteractionStatusBetweenProfilesOutput"
|
|
},
|
|
"interests": [
|
|
"Sports",
|
|
"Reading",
|
|
"Conversation",
|
|
"Traveling",
|
|
"Coffee",
|
|
"Working out"
|
|
],
|
|
"isMajestic": false,
|
|
"isIncognito": false,
|
|
"lastSeen": null,
|
|
"location": {
|
|
"device": {
|
|
"latitude": 0,
|
|
"longitude": 0,
|
|
"geocode": null,
|
|
"__typename": "Location"
|
|
},
|
|
"__typename": "DeviceLocation"
|
|
},
|
|
"sexuality": "STRAIGHT",
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-e0923a2a-ad1a-4b22-9a97-4303e44b01f9",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1769340611~hmac=a9ca9596a54a5007af79b533e600fc61f2b4e1c619668cfbe7753861cee7a596&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1769340611~hmac=a98a1bc492e24cf231f937552ee0f4122ca3328c1a80fd129237043b25c38295&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da?__cld_token__=exp=1769340611~hmac=b954384e66532cb02503b573aa8d8e4d6ab4bb29aa2395e1a61bb71d786c8fc0&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "c2a1cf3f-6611-4d9e-a94e-19d68ba1b5da",
|
|
"verification": null,
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-e9b10448-165a-4e1c-8133-7bde9591b961",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/a35f0a6c-dda8-4011-99ec-71679df7dffd?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/a35f0a6c-dda8-4011-99ec-71679df7dffd?__cld_token__=exp=1769340611~hmac=dbd2a28b79d924aadbb0030192b21d2c56e1809be0a3589eab3f73f44220004f&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/a35f0a6c-dda8-4011-99ec-71679df7dffd?__cld_token__=exp=1769340611~hmac=90d1bd3653b70b413934815728ca5b1ac325817db89420b11e9296ae2b567d93&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/a35f0a6c-dda8-4011-99ec-71679df7dffd?__cld_token__=exp=1769340611~hmac=94a6c3779bf010d254523feca2967a7cc356c4263af759c477b18d4e48fe8169&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "a35f0a6c-dda8-4011-99ec-71679df7dffd",
|
|
"verification": null,
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-5b7bca15-d924-47b4-a244-3d2cf19e0956",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?__cld_token__=exp=1769340611~hmac=319ddb60dc3c19a458e11d7cc822cdac941e2291f34665752aa70ff875bf1386&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?__cld_token__=exp=1769340611~hmac=d06bb10b53ffa9384a6f9981f9987de56809c86dab86a04c359160f2174cd605&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a?__cld_token__=exp=1769340611~hmac=d1b459ebb2fcff73bd368023c4e5671c8fcd781a18e393f5c3255bf1690f8f33&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "9c3b2edd-b696-4c29-a4e1-59cc6ca33b1a",
|
|
"verification": null,
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#73b79341-5ff8-411c-806f-5b25cb834471-f8f823ee-dc86-4b21-9ac5-34fec4934e28",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "https://res.cloudinary.com/threender/image/upload/4b2110a8-2114-4bbb-9927-ddca81a0d998?_a=BAMAK+TI0",
|
|
"pictureUrls": {
|
|
"small": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_192,h_192,c_lfill,g_auto:faces/4b2110a8-2114-4bbb-9927-ddca81a0d998?__cld_token__=exp=1769340611~hmac=b22cd0d53ef1d594e8fa8d05233349063814b52a6cf1336f0538083bbbc3be06&_a=BAMAK+TI0",
|
|
"medium": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_480,h_480,c_lfill,g_auto:faces/4b2110a8-2114-4bbb-9927-ddca81a0d998?__cld_token__=exp=1769340611~hmac=4b5bca9116140b16e6f694e2435dcdc5e8b0146e9e66e1cbdfc24905949e192f&_a=BAMAK+TI0",
|
|
"large": "https://res.cloudinary.com/threender/image/upload/q_auto:eco,f_webp,w_960,h_960,c_lfill,g_auto:faces/4b2110a8-2114-4bbb-9927-ddca81a0d998?__cld_token__=exp=1769340611~hmac=f8b0d654c2edd0590968cff81ee7334925b622be13de3d80175bead9428749ba&_a=BAMAK+TI0",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "4b2110a8-2114-4bbb-9927-ddca81a0d998",
|
|
"verification": null,
|
|
"__typename": "Picture"
|
|
}
|
|
],
|
|
"constellation": [],
|
|
"__typename": "Profile",
|
|
"allowPWM": true,
|
|
"verificationStatus": null,
|
|
"enableChatContentModeration": false,
|
|
"isUplift": false,
|
|
"profilePairs": [],
|
|
"metadata": null,
|
|
"isParticipantToEventChat": false
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "21141eda-79c6-4888-86da-fa61f4bf3f48"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## SearchSettingsUpdate
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"recentlyOnline": null
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation SearchSettingsUpdate($ageRange: [Int], $distanceMax: Float, $desiringFor: [Desire!], $lookingFor: [LookingFor!], $recentlyOnline: Boolean) {
|
|
profileUpdate(
|
|
input: {ageRange: $ageRange, distanceMax: $distanceMax, desiringFor: $desiringFor, lookingFor: $lookingFor, recentlyOnline: $recentlyOnline}
|
|
) {
|
|
...SearchSettingsProfileFragment
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment SearchSettingsProfileFragment on Profile {
|
|
id
|
|
ageRange
|
|
distanceMax
|
|
desiringFor
|
|
lookingFor
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
recentlyOnline
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profileUpdate": {
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"ageRange": [
|
|
22,
|
|
59
|
|
],
|
|
"distanceMax": 100,
|
|
"desiringFor": [],
|
|
"lookingFor": [
|
|
"WOMAN",
|
|
"MAN_WOMAN_COUPLE",
|
|
"WOMAN_WOMAN_COUPLE"
|
|
],
|
|
"location": {
|
|
"device": {
|
|
"latitude": 0,
|
|
"longitude": 0,
|
|
"geocode": null,
|
|
"__typename": "Location"
|
|
},
|
|
"__typename": "DeviceLocation"
|
|
},
|
|
"recentlyOnline": null,
|
|
"__typename": "Profile"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "bb3fcaa7-5443-4785-843e-f5215649f61c"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## UpliftPurchaseQuery
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"profileId": "profile#73b79341-5ff8-411c-806f-5b25cb834471"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query UpliftPurchaseQuery($profileId: String!) {
|
|
profile(id: $profileId) {
|
|
id
|
|
status
|
|
__typename
|
|
}
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profile": {
|
|
"id": "profile#73b79341-5ff8-411c-806f-5b25cb834471",
|
|
"status": "ACTIVE",
|
|
"__typename": "Profile"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "79c6d62a-ca92-4399-b8b8-2fbebb34f98e"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## WhoLikesMe
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"sortBy": "LAST_INTERACTION"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query WhoLikesMe($limit: Int, $cursor: String, $sortBy: SortBy!) {
|
|
interactions: whoLikesMe(
|
|
input: {sortBy: $sortBy}
|
|
limit: $limit
|
|
cursor: $cursor
|
|
) {
|
|
nodes {
|
|
...LikesProfileFragment
|
|
__typename
|
|
}
|
|
pageInfo {
|
|
total
|
|
hasNextPage
|
|
nextPageCursor
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment LikesProfileFragment on Profile {
|
|
id
|
|
age
|
|
gender
|
|
status
|
|
lastSeen
|
|
desires
|
|
connectionGoals
|
|
isUplift
|
|
sexuality
|
|
isMajestic
|
|
dateOfBirth
|
|
streamUserId
|
|
imaginaryName
|
|
bio
|
|
hiddenBio
|
|
hasHiddenBio
|
|
allowPWM
|
|
interests
|
|
verificationStatus
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
photos {
|
|
...PhotoCarouselPictureFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment PhotoCarouselPictureFragment on Picture {
|
|
id
|
|
pictureIsPrivate
|
|
pictureIsSafe
|
|
pictureStatus
|
|
pictureType
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
publicId
|
|
verification {
|
|
status
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"interactions": {
|
|
"nodes": [
|
|
{
|
|
"id": "profile#1a15f043-4984-51b6-8dca-303f864d597c",
|
|
"age": 56,
|
|
"gender": "AGENDER",
|
|
"status": "ACTIVE",
|
|
"lastSeen": null,
|
|
"desires": [],
|
|
"connectionGoals": [],
|
|
"isUplift": false,
|
|
"sexuality": "ANDROGYNOSEXUAL",
|
|
"isMajestic": false,
|
|
"dateOfBirth": null,
|
|
"streamUserId": null,
|
|
"imaginaryName": "Jess",
|
|
"bio": null,
|
|
"hiddenBio": null,
|
|
"hasHiddenBio": false,
|
|
"allowPWM": false,
|
|
"interests": [],
|
|
"verificationStatus": "UNVERIFIED",
|
|
"interactionStatus": {
|
|
"message": null,
|
|
"mine": "NONE",
|
|
"theirs": "NONE",
|
|
"__typename": "InteractionStatusBetweenProfilesOutput"
|
|
},
|
|
"profilePairs": [],
|
|
"distance": null,
|
|
"location": null,
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c3232cbc5-5b2e-45b1-8a39-4a40308a45e0",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c35184885-c94e-4189-a857-21ff56439a5f",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c78670543-85df-4014-acc5-c910d867ce17",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c502b7c3b-1f2b-4f41-900b-a8b630177541",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#1a15f043-4984-51b6-8dca-303f864d597c45760ffc-5866-4a8e-a9a8-4b9030f3d310",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
}
|
|
],
|
|
"__typename": "Profile"
|
|
},
|
|
{
|
|
"id": "profile#7d255430-37dd-514e-90e8-9ee1272c0f53",
|
|
"age": 56,
|
|
"gender": "AGENDER",
|
|
"status": "ACTIVE",
|
|
"lastSeen": null,
|
|
"desires": [],
|
|
"connectionGoals": [],
|
|
"isUplift": false,
|
|
"sexuality": "ANDROGYNOSEXUAL",
|
|
"isMajestic": false,
|
|
"dateOfBirth": null,
|
|
"streamUserId": null,
|
|
"imaginaryName": "J",
|
|
"bio": null,
|
|
"hiddenBio": null,
|
|
"hasHiddenBio": false,
|
|
"allowPWM": false,
|
|
"interests": [],
|
|
"verificationStatus": "UNVERIFIED",
|
|
"interactionStatus": {
|
|
"message": null,
|
|
"mine": "NONE",
|
|
"theirs": "NONE",
|
|
"__typename": "InteractionStatusBetweenProfilesOutput"
|
|
},
|
|
"profilePairs": [],
|
|
"distance": null,
|
|
"location": null,
|
|
"photos": [
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f538dfd3e1b-c2b0-4af7-9672-874a4a271b2c",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "DEFAULT",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f534be38a51-c0e3-4526-834f-0bf2ad4a4091",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f5310fc8190-33c2-4896-a185-017be2cff8f8",
|
|
"pictureIsPrivate": false,
|
|
"pictureIsSafe": true,
|
|
"pictureStatus": "READY",
|
|
"pictureType": "SECONDARY",
|
|
"pictureUrl": "HIDDEN",
|
|
"pictureUrls": {
|
|
"small": "",
|
|
"medium": "",
|
|
"large": "",
|
|
"__typename": "PictureUrls"
|
|
},
|
|
"publicId": "HIDDEN",
|
|
"verification": {
|
|
"status": "UNVERIFIED",
|
|
"__typename": "PictureVerification"
|
|
},
|
|
"__typename": "Picture"
|
|
},
|
|
{
|
|
"id": "picture|profile#7d255430-37dd-514e-90e8-9ee1272c0f538a81675b-e23c-4d43-b5e4-73eb96436fb3",
|
|
"pictureIsP
|
|
... [truncated]
|
|
```
|
|
|
|
---
|
|
|
|
## WhoPingsMe
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"sortBy": "LAST_INTERACTION"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query WhoPingsMe($limit: Int, $cursor: String, $sortBy: SortBy!) {
|
|
interactions: whoPingsMe(
|
|
input: {sortBy: $sortBy}
|
|
limit: $limit
|
|
cursor: $cursor
|
|
) {
|
|
nodes {
|
|
...LikesProfileFragment
|
|
__typename
|
|
}
|
|
pageInfo {
|
|
total
|
|
hasNextPage
|
|
nextPageCursor
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment LikesProfileFragment on Profile {
|
|
id
|
|
age
|
|
gender
|
|
status
|
|
lastSeen
|
|
desires
|
|
connectionGoals
|
|
isUplift
|
|
sexuality
|
|
isMajestic
|
|
dateOfBirth
|
|
streamUserId
|
|
imaginaryName
|
|
bio
|
|
hiddenBio
|
|
hasHiddenBio
|
|
allowPWM
|
|
interests
|
|
verificationStatus
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
location {
|
|
...ProfileLocationFragment
|
|
__typename
|
|
}
|
|
photos {
|
|
...PhotoCarouselPictureFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileLocationFragment on ProfileLocation {
|
|
... on DeviceLocation {
|
|
device {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
... on VirtualLocation {
|
|
core
|
|
__typename
|
|
}
|
|
... on TeleportLocation {
|
|
current: device {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
teleport {
|
|
latitude
|
|
longitude
|
|
geocode {
|
|
city
|
|
country
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment PhotoCarouselPictureFragment on Picture {
|
|
id
|
|
pictureIsPrivate
|
|
pictureIsSafe
|
|
pictureStatus
|
|
pictureType
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
publicId
|
|
verification {
|
|
status
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"interactions": {
|
|
"nodes": [],
|
|
"pageInfo": {
|
|
"total": 0,
|
|
"hasNextPage": false,
|
|
"nextPageCursor": null,
|
|
"__typename": "PageInfo"
|
|
},
|
|
"__typename": "PaginatedProfiles"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "21f8e2f7-8044-4d44-b7b1-a79c24254cb3"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## hasLinkedReflection
|
|
|
|
**Type**: GraphQL
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query hasLinkedReflection {
|
|
hasLinkedReflection
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"hasLinkedReflection": false
|
|
},
|
|
"extensions": {
|
|
"requestId": "d8086e07-2c5b-40d5-a165-de00c0b0f218"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## ProfileLike
|
|
|
|
**Type**: GraphQL Mutation
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
**Description**: Like another user's profile. Returns status and chat object if mutual match.
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"targetProfileId": "profile#86eeaab9-fae3-51ea-b32c-dc086f9d3405"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
mutation ProfileLike($targetProfileId: String!) {
|
|
profileLike(input: {targetProfileId: $targetProfileId}) {
|
|
status
|
|
chat {
|
|
...ChatListItemChatFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment ChatListItemChatFragment on Chat {
|
|
...ChatFragment
|
|
__typename
|
|
}
|
|
|
|
fragment ChatFragment on Chat {
|
|
id
|
|
name
|
|
type
|
|
streamChatId
|
|
status
|
|
members {
|
|
...ChatMemberFragment
|
|
__typename
|
|
}
|
|
disconnectedMembers {
|
|
...ChatMemberFragment
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment ChatMemberFragment on Profile {
|
|
id
|
|
status
|
|
analyticsId
|
|
imaginaryName
|
|
streamUserId
|
|
age
|
|
dateOfBirth
|
|
sexuality
|
|
isIncognito
|
|
...ProfileInteractionStatusFragment
|
|
gender
|
|
photos {
|
|
...GetPictureUrlFragment
|
|
pictureType
|
|
__typename
|
|
}
|
|
...AnalyticsProfileFragment
|
|
__typename
|
|
}
|
|
|
|
fragment ProfileInteractionStatusFragment on Profile {
|
|
interactionStatus {
|
|
message
|
|
mine
|
|
theirs
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment GetPictureUrlFragment on Picture {
|
|
id
|
|
publicId
|
|
pictureIsSafe
|
|
pictureIsPrivate
|
|
pictureUrl
|
|
pictureUrls {
|
|
small
|
|
medium
|
|
large
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
|
|
fragment AnalyticsProfileFragment on Profile {
|
|
id
|
|
isUplift
|
|
lastSeen
|
|
age
|
|
gender
|
|
sexuality
|
|
verificationStatus
|
|
connectionGoals
|
|
hasHiddenBio
|
|
hiddenBio
|
|
imaginaryName
|
|
interactionStatus {
|
|
mine
|
|
theirs
|
|
message
|
|
__typename
|
|
}
|
|
distance {
|
|
km
|
|
mi
|
|
__typename
|
|
}
|
|
profilePairs {
|
|
identityId
|
|
__typename
|
|
}
|
|
metadata {
|
|
source
|
|
__typename
|
|
}
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"profileLike": {
|
|
"status": "SENT",
|
|
"chat": null,
|
|
"__typename": "ProfileLikeInteractionOutput"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "ee7b55ce-fe2d-48e4-991a-b03e04aa329c"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Response Status Values**:
|
|
- `SENT` - Like was sent successfully (no mutual match yet)
|
|
- `MATCHED` - Mutual like, chat object will be populated
|
|
|
|
---
|
|
|
|
## GetChatSummary
|
|
|
|
**Type**: GraphQL Query
|
|
**Endpoint**: `https://core.api.fldcore.com/graphql`
|
|
**Method**: `POST`
|
|
|
|
**Description**: Get detailed information about a specific chat conversation including latest message and participant details.
|
|
|
|
### Variables
|
|
|
|
```json
|
|
{
|
|
"streamChatId": "461b5f51-e3cb-4942-ac5c-43b213586c0b"
|
|
}
|
|
```
|
|
|
|
### Query
|
|
|
|
```graphql
|
|
query GetChatSummary($streamChatId: String!) {
|
|
summary: getChatSummary(streamChatId: $streamChatId) {
|
|
...ChatSummary
|
|
__typename
|
|
}
|
|
}
|
|
|
|
fragment ChatSummary on ChatSummary {
|
|
...ChatSummaryItem
|
|
__typename
|
|
}
|
|
|
|
fragment ChatSummaryItem on ChatSummary {
|
|
id
|
|
name
|
|
type
|
|
status
|
|
avatarSet
|
|
chatAvatarUrl
|
|
chatDescription
|
|
openedAt
|
|
memberCount
|
|
latestMessage
|
|
streamChannelId
|
|
targetProfileId
|
|
targetProfile {
|
|
isVerified
|
|
isMajestic
|
|
gender
|
|
age
|
|
sexuality
|
|
__typename
|
|
}
|
|
enableChatContentModeration
|
|
participationStatus
|
|
participationType
|
|
__typename
|
|
}
|
|
```
|
|
|
|
### Response
|
|
|
|
```json
|
|
{
|
|
"data": {
|
|
"summary": {
|
|
"id": "chat#090b2bcb-7e5f-46a6-9506-404a084fcb3c",
|
|
"name": "FunCouple",
|
|
"type": "PRIVATE",
|
|
"status": "ACTIVE",
|
|
"avatarSet": [
|
|
"https://res.cloudinary.com/threender/image/upload/..."
|
|
],
|
|
"chatAvatarUrl": null,
|
|
"chatDescription": null,
|
|
"openedAt": null,
|
|
"memberCount": 2,
|
|
"latestMessage": {
|
|
"id": "0727f6d4-3531-42ee-befe-f000a98807cd",
|
|
"text": "Hi. So sorry. It's been a bit crazy...",
|
|
"html": "<p>Hi. So sorry...</p>\n",
|
|
"type": "regular",
|
|
"user": {
|
|
"id": "633b20c44181730001005aee",
|
|
"name": "FunCouple",
|
|
"image": "https://res.cloudinary.com/threender/...",
|
|
"online": false,
|
|
"last_active": "2026-01-24T04:47:42.919914Z",
|
|
"profileStatus": "active",
|
|
"profileIsIncognito": true
|
|
},
|
|
"attachments": [],
|
|
"created_at": "2025-11-20T14:42:24.409Z",
|
|
"status": "received"
|
|
},
|
|
"streamChannelId": "461b5f51-e3cb-4942-ac5c-43b213586c0b",
|
|
"targetProfileId": "profile#6e25bfee-4a2b-58ac-8eb4-d5e9ed37a195",
|
|
"targetProfile": {
|
|
"isVerified": false,
|
|
"isMajestic": true,
|
|
"gender": "WOMAN",
|
|
"age": 46,
|
|
"sexuality": "BISEXUAL",
|
|
"__typename": "TargetProfileData"
|
|
},
|
|
"enableChatContentModeration": false,
|
|
"participationStatus": "APPROVED",
|
|
"participationType": "OWNER",
|
|
"__typename": "ChatSummary"
|
|
}
|
|
},
|
|
"extensions": {
|
|
"requestId": "a353d72b-7bcc-4230-bad7-996b780d0eb4"
|
|
}
|
|
}
|
|
```
|
|
|
|
**Chat Types**: `PRIVATE`, `GROUP`
|
|
**Participation Status**: `APPROVED`, `PENDING`
|
|
**Participation Type**: `OWNER`, `MEMBER`
|
|
|
|
---
|
|
|
|
## WebSocket Subscription
|
|
|
|
**Type**: WebSocket
|
|
**Endpoint**: `wss://core.api.fldcore.com/subscription`
|
|
**Protocol**: `graphql-transport-ws`
|
|
|
|
**Description**: Real-time subscription endpoint for receiving live updates (new messages, matches, etc.)
|
|
|
|
### Connection Headers
|
|
|
|
```
|
|
Host: core.api.fldcore.com
|
|
Sec-WebSocket-Protocol: graphql-transport-ws
|
|
Sec-WebSocket-Version: 13
|
|
Upgrade: websocket
|
|
Origin: https://core.api.fldcore.com
|
|
User-Agent: feeld-mobile
|
|
Connection: Upgrade
|
|
```
|
|
|
|
### Response (Upgrade)
|
|
|
|
```
|
|
HTTP/1.1 101 Switching Protocols
|
|
Connection: upgrade
|
|
Upgrade: websocket
|
|
Sec-WebSocket-Accept: m1fOIw/SYctjidEI0Uj3wopY704=
|
|
Sec-WebSocket-Protocol: graphql-transport-ws
|
|
```
|
|
|
|
**Note**: After connection, use `graphql-transport-ws` protocol for subscription messages.
|
|
|
|
---
|
|
|
|
## ChatAttachment CDN
|
|
|
|
**Type**: REST API
|
|
**Endpoint**: `GET /v1/cdn/chat-attachment/{profileId}/{attachmentId}`
|
|
**Method**: `GET`
|
|
|
|
**Description**: Get signed Cloudinary URL for chat attachment (full size).
|
|
|
|
### URL Pattern
|
|
|
|
```
|
|
https://core.api.fldcore.com/v1/cdn/chat-attachment/{profileId}/{attachmentId}
|
|
```
|
|
|
|
### Example
|
|
|
|
```
|
|
GET /v1/cdn/chat-attachment/73b79341-5ff8-411c-806f-5b25cb834471/b266b78f-526e-4ab9-be55-3393807f7519
|
|
```
|
|
|
|
### Response Headers
|
|
|
|
```
|
|
Content-Type: text/plain; charset=utf-8
|
|
x-attachment-is-safe: true
|
|
x-server-time: 1769255416509
|
|
```
|
|
|
|
### Response Body
|
|
|
|
```
|
|
https://res.cloudinary.com/threender/7e1e9b8c-ffa4-47be-9af0-f1a9a32a3e87?__cld_token__=exp=1769341817~hmac=c39bd1b461674...
|
|
```
|
|
|
|
---
|
|
|
|
## ChatAttachment Thumbnail
|
|
|
|
**Type**: REST API
|
|
**Endpoint**: `GET /v1/cdn/chat-attachment/{profileId}/{attachmentId}/thumb`
|
|
**Method**: `GET`
|
|
|
|
**Description**: Get signed Cloudinary URL for chat attachment thumbnail.
|
|
|
|
### URL Pattern
|
|
|
|
```
|
|
https://core.api.fldcore.com/v1/cdn/chat-attachment/{profileId}/{attachmentId}/thumb
|
|
```
|
|
|
|
### Example
|
|
|
|
```
|
|
GET /v1/cdn/chat-attachment/73b79341-5ff8-411c-806f-5b25cb834471/b266b78f-526e-4ab9-be55-3393807f7519/thumb
|
|
```
|
|
|
|
### Response Headers
|
|
|
|
```
|
|
Content-Type: text/plain; charset=utf-8
|
|
x-attachment-is-safe: true
|
|
x-server-time: 1769255416566
|
|
```
|
|
|
|
### Response Body
|
|
|
|
```
|
|
https://res.cloudinary.com/threender/c_thumb/7e1e9b8c-ffa4-47be-9af0-f1a9a32a3e87?__cld_token__=exp=1769341817~hmac=e9eb594a1114...
|
|
```
|
|
|
|
---
|
|
|