Hotline Topics API (V1)

Topics API conçu pour l'intégration Hotline Telegram CRM avec des systèmes externes. Ce document décrit les principales méthodes de l'interface.
La méthode main permet d'obtenir des informations sur la source du sujet du côté du groupe backend. Il existe également une méthode pour envoyer un message entrant à un sujet en user_id utilisateur.
Exemples d'extension des fonctionnalités du système Hotline en utilisant Topics API via votre robot assistant sont décrits dans un article séparé.
Attention: Cette page contient des fragments avec traduction automatique. Si vous avez du mal à comprendre ces informations, essayez de changer la langue en anglais ou en russe et utilisez votre système de traduction de site Web de confiance.
Adresse de l'interface
https://n8n.production.hotline.tg/webhook/topic_action
  • Processus uniquement POST demandes
  • Actuellement, pour accéder à l'interface, il est nécessaire d'avoir un Header x-api-key, qui indique le jeton émis service d'assistance
  • Chaque instance a également son propre api_key, ce qui s'avère être @hotlinetg_bot pour chaque instance, et qui est indiqué directement dans le corps des requêtes JSON
Méthode 1 : Informations disponibles sur le sujet
Exemple de demande :
{
    "action": "info_by_topic",
    "group_id": "2101424779", # as it appers in topic public link (without -100)
    "topic_id": "$TOPIC_ID",  # as it appers in topic public link

    "instance": "$INSTANCE",
    "api_key": "$KEY"
}
Exemple de réponse pour un utilisateur :
{
    "result": "topic_info",
    "group_id": $GROUP_ID,
    "topic_id": $TOPIC_ID,

    "frontend_type": "private",
    "instance_name": "$INSTANCE_NAME",
    "instance_frontend_user_id": $INSTANCE_FRONTEND_USER_ID,
    "instance_id": $INSTANCE_ID,

    "chat_id": $CHAT_ID,
    "thread_id": $THREAD_ID,

    "topic_last_date": "$LAST_DATE",
    "topic_status": "$STATUS",
    "topic_title": "$TITLE",

    "user_id": $USER_ID,
    "user_name": "$NAME",
    "user_first_name": "$FNAME",
    "user_last_name": "$LNAME",
    "user_username": "$USERNAME",
    "user_lang": "None",
    "user_phone": "None"
}
Exemple de réponse pour les groupes :
{
    "result":"topic_info",

    "group_id": $GROUP_ID,
    "topic_id": $TOPIC_ID,

    "frontend_type": "group",
    "instance_name": "$INSTANCE_NAME",
    "instance_frontend_user_id": $INSTANCE_FRONTEND_USER_ID,
    "instance_id": $INSTANCE_ID,

    "frontend_chat_id": $CHAT_ID,

    "topic_last_date": "$LAST_DATE",
    "topic_status": "$STATUS",
    "topic_title": "$TITLE"
}
Caractéristiques:
  1. Topic_status a 3 valeurs : "fermé", "user_answered", "support_answered" (affichées dans le titre du sujet sous la forme d'un carré noir, violet et jaune, respectivement)
  2. Types de frontend_type : privé (utilisateur régulier), bot, secret, groupe, supergroupe, sujet, canal
  3. Pour l'instant, les informations complètes sont fournies uniquement pour les sujets suivants : privé, bot, secret
  4. Si plusieurs instances sont attachées à un groupe backend, vous pouvez utiliser n'importe laquelle d'entre elles pour obtenir des informations sur les sujets du groupe (l'instance d'un sujet spécifique sera affichée dans les champs de réponse correspondants)
Méthode 2 : message entrant vers le sujet par user_id
Exemple de demande :
{
    "action": "incoming_in_topic",
    "user_id": $USER_ID1,
    "message": "/ `test` *incoming* _message_ \n\n [@hotlinetg_support]",

    "instance": "$INSTANCE",
    "api_key": "$KEY"
}
Exemple de réponse :
{
    "result": "message_sent",
    "topic_link": "https://t.me/c/2101424779/1591",
    "message": "/ `test` *incoming* _message_ \n\n [@hotlinetg_support]",
    "chat_id": $CHAT_ID,
    "thread_id": "$THREAD_ID"
}
Accéder à Topics API
Pour obtenir x-api-key jeton pour accéder à l'API, ou calculer le coût d'intégration et de support, vous devez écrire au support @hotlinetg_support.