partner-api

Partner API

src/main/integrations/partner-api/ — цільові контракти партнерських API для Golden, Chathouse, Prime й Udate.

Тут зібрані тільки поля, потрібні логікам нового Electron. Це не повна схема партнерських відповідей.

Формат картки:

  • назва операції — стабільна назва для посилань із сервісів;
  • окремий endpoint кожного проєкту;
  • Request і Response згорнуті, як блоки у Swagger;
  • TODO означає, що контракт треба підтвердити живою відповіддю.

Огляд

— API придатне; — є обмеження або непідтверджений контракт; — окремого API немає.

#ОпераціяGoldenChathousePrimeUdate
1Логін TU
2Online RU
3Перевірка online RU
4Профіль RU
5Chat history
6Mail history
7Unanswered
8Open Limits
9Блокування
10Медіа TU
11Chat-повідомлення
12Лист
13Створення діалогу
14Newsfeed
15Усі діалоги
16Тримання online TU
17Перевірка online TU
18Activity Alerts
19Stories
20Exclusive Posts

1. Логін TU

Використовує: логін TU.

Golden · основна chat-сесія

POST https://goldenbride.net/goldenbride/services/rlogin

Golden · official API-сесія

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Chathouse

POST https://external-api.chatshouse.com/v1/truq/login

Prime

POST https://talkytimes.com/platform/auth/login

2. Отримання online RU

Використовує: RU-онлайн сервіс.

Golden

POST https://goldenbride.net/goldenbride/services/chat/v26

Chathouse

GET https://external-api.chatshouse.com/v1/truq/dialogs

Prime

POST https://talkytimes.com/platform/chat/dialogs/by-criteria

3. Точкова перевірка online RU

Використовується лише коли RU id уже відомий. Не будує повний online-пул.

Prime

POST https://talkytimes.com/platform/online

Golden / Chathouse

Окремий цільовий запит поки не використовується.

4. Отримання профілю RU

Використовує: сервіс профілів RU.

Golden

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

isSatellite

У перевіреному DTO getMan поля isSatellite немає. Треба зняти живі відповіді для звичайного RU і satellite та визначити, чи ознака приходить іншим полем або іншим API.

Chathouse · точково

GET https://external-api.chatshouse.com/v1/truq/profile/{ruUlid}

Chathouse · inline

GET /dialogs, GET /dialogs/{ruUlid}, mail і socket payload уже можуть містити contact, user або sender. Отриманий профіль передається у RUProfileService.upsertProfiles() без окремого запиту.

Prime

POST https://talkytimes.com/platform/connections/profiles

5. Отримання chat history

Використовують: таски, відкриття діалогу, історія контакту.

Golden

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Chathouse

GET https://external-api.chatshouse.com/v1/truq/dialogs/{ruUlid}

Prime

POST https://talkytimes.com/platform/chat/messages

6. Отримання mail history

Використовують: mail-таски, відкриття листування, перевірка перед Follow-up mail.

Golden

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Побічний запит поточного клієнта

Поточний getMail() автоматично викликає loadLetter для кожного непрочитаного вхідного листа. У цільовому adapter треба вирішити окремо: читання списку не повинно непомітно створювати додаткові запити й змінювати статус листа.

Chathouse

GET https://external-api.chatshouse.com/v1/truq/inmails/{ruUlid}

Prime · знайти correspondence

POST https://talkytimes.com/platform/correspondence/get

Prime · сторінка листів

POST https://talkytimes.com/platform/correspondence/emails-history

7. Отримання unanswered

Використовує: RU Unanswered сервіс. Запускається після логіну TU, реконекту socket і далі за страховочним інтервалом.

Golden

Повної колонки немає. Перевіряються лише відомі кандидати через chat history і mail history.

Chathouse

GET https://external-api.chatshouse.com/v1/truq/dialogs

Відповідь має форму з отримання online RU. Один прохід дає кандидатів на Unanswered chat/mail, Like та Open Limits.

Prime · chat

POST https://talkytimes.com/platform/chat/dialogs/by-criteria

Prime · mail

POST https://talkytimes.com/platform/connections/mails

8. Пошук Open Limits

Використовує: Open Limits сервіс.

Chathouse

Окремого запиту немає. Кандидати беруться з уже виконаного tab='new' у RU Unanswered проході.

Prime · кандидати

Основні кандидати надходять із criteria=[] у RU All Dialogs проході.

Prime · актуальні chat/mail limits

POST https://talkytimes.com/platform/chat/restriction

Prime · блокування і relation

POST https://talkytimes.com/platform/connection/get

Golden

Open Limits не підтримується.

9. Отримання блокувань

Використовує: сервіс блокувань.

Golden

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Перевірити live response

Поточний service читає поле result, а TypeScript response-interface описує list. Перед реалізацією потрібен контракт-тест живої відповіді.

Chathouse

Окремого повного endpoint не знайдено:

  • GET /dialogs повертає blocked_by_ru;
  • socket може віддати trusted_user_block;
  • зняття блокування треба підтвердити на живому трафіку.

Prime

Використовує POST /platform/connection/get, описаний у Open Limits. Він повертає обидва напрямки: blockedByMe та blockedByInterlocutor.

10. Отримання медіа TU

Використовує: медіа.

Golden · chat media

POST https://goldenbride.net/goldenbride/services/chat/v21

Golden · mail photo

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Chathouse

GET https://external-api.chatshouse.com/v1/truq/media

Prime · photo

POST https://talkytimes.com/platform/gallery/photo/list

Prime · video

POST https://talkytimes.com/platform/gallery/video/list

Prime · audio

POST https://talkytimes.com/platform/upload/get-mail-media-gallery

11. Відправлення chat-повідомлення

Використовують: ручний чат і сендер.

Golden · socket

WebSocket method sendPrivateMessage

Chathouse

POST https://external-api.chatshouse.com/v1/truq/messages

Prime

POST https://talkytimes.com/platform/chat/send/text

12. Відправлення листа

Використовують: ручний лист і сендер.

Golden · один лист

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Golden · mail sender

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Chathouse

POST https://external-api.chatshouse.com/v1/truq/inmails

Prime

POST https://talkytimes.com/platform/correspondence/send-letter

13. Створення діалогу Prime

Використовує: створення діалогів Prime.

Доступні chat-request limits TU

POST https://talkytimes.com/platform/chat/dialogs/request-limit/info-list

Доступність RU

POST https://talkytimes.com/platform/chat/dialogs/request-limit/users-info

Online batch перевіряється операцією перевірки online RU. Відсутність попереднього діалогу — chat history, поточні chat/mail limits — POST /platform/chat/restriction.

Captcha

POST https://talkytimes.com/platform/captcha/get

POST https://talkytimes.com/platform/captcha/verify

Відкрити діалог

POST https://talkytimes.com/platform/chat/dialog/request-limit

Після успіху перше повідомлення надсилається звичайною операцією відправлення chat-повідомлення.

14. Newsfeed Prime

Використовує: Newsfeed Prime.

Список

POST https://talkytimes.com/platform/news-feed/post/list

Створити

POST https://talkytimes.com/platform/news-feed/post/create

Опублікувати

POST https://talkytimes.com/platform/news-feed/post/send

Видалити

POST https://talkytimes.com/platform/news-feed/post/delete

15. Отримання всіх діалогів

Використовує: RU All Dialogs сервіс.

Chathouse

GET https://external-api.chatshouse.com/v1/truq/dialogs

Прохід сторінок за next. Відповідь має форму Chathouse з отримання online RU і містить chat/mail limits для RU сторінки.

Prime

POST https://talkytimes.com/platform/chat/dialogs/by-criteria

Відповідь має форму Prime з отримання online RU. Dialog містить chat limit. Окремий mail-limit запит не належить цьому проходу: його викликає конкретна логіка після відбору кандидата.

16. Тримання online TU

Використовує: сервіс онлайну TU.

Golden

POST https://goldenbride.net/goldenbride/services/chat/v5

Chathouse

POST https://external-api.chatshouse.com/v1/sup/trusted-user/ping-list

Prime

Окремого ping-запиту немає. Online TU тримає активний Centrifuge WS-конект.

17. Перевірка online TU

Використовує: сервіс онлайну TU.

Golden · список TU агенції

POST https://goldenbride.net/usermodule/services/agencyhelper/v2

Chathouse · список TU admin

GET https://external-api.chatshouse.com/v1/sup/trusted-user

Prime · список TU admin

POST https://datame.cloud/platform/trusted-user/collection

18. Activity Alerts Udate

Використовує: Activity Alerts Udate.

GraphQL operation ActivityAlerts

Для Task Factory зараз використовується лише type = ONLINE_LIMIT. Наступна сторінка запитується за cursor.

19. Stories Udate

Використовує: Stories Udate.

ОпераціяGraphQL operationОсновні параметри
Активна Story TUReferredUserStoryid TU
Доступні mediaReferredUserStoryMediaid TU
Опублікувати StoryComposeStoryidReferredUser, content[]

ReferredUserStory повертає pages із timeLeft, viewCount та photo/video content. ReferredUserStoryMedia повертає photo/video, moderationStatus і storyUsageLimitReached. ComposeStory приймає AgencyStoryInput[] і повертає створену Story.

Масове видалення Stories Director/Client Manager виконується окремою Udate server-операцією через admin media API.

20. Exclusive Posts Prime

Використовує: Exclusive Posts Prime.

ОпераціяEndpoint
Список posts у діалозіPOST /platform/chat/dialog/media/posts
Один postPOST /platform/chat/dialog/post
Відправити postPOST /platform/chat/send/new-post

Успішне відправлення повертає idMessage. Post у списку містить id, textPreview, photo/video, isPurchased, price і discount.

Заповнити

  • Golden isSatellite: знайти фактичне джерело ознаки.
  • Chathouse media: підтвердити точні поля photo/video item.
  • Prime chat history: підтвердити top-level response і pagination.
  • Golden blackList: підтвердити result чи list.
  • Додати partner API блокування/розблокування з боку TU після проєктування ручної дії.
  • Додати детальні Udate-контракти основних операцій 1–17 під час проєктування відповідних Electron-сервісів.