Telegram API Bericht Verzenden: sendMessage in curl, Python en Node

Telegram API Bericht Verzenden

Telegram API Bericht Verzenden: sendMessage en Verbonden Accounts

Een code-first walkthrough van het verzenden van een Telegram-bericht: de Bot API sendMessage endpoint in curl, Python en Node, de structurele limiet die een bot tegenhoudt om als eerste naar iemand te schrijven, en hoe je kunt verzenden vanaf een echt verbonden Telegram-account met Unipile Chat starten en sendMessage.



verzend_bericht.sh
# Bot API sendMessage curl -X POST ""https://api.telegram.org/bot$TOKEN/sendMessage"" \ -d chat_id=123456789 \ -d tekst="Hallo van de Bot API" \ -d parse_mode="Markdown"
200 OK: bericht verzonden
Beslissingsgids

Drie manieren om een Telegram-bericht te versturen, en welke je moet kiezen

Er zijn precies drie manieren om een bericht te verzenden via de Telegram-API. Ze zijn niet uitwisselbaar: elk verzendt het bericht als een ander soort afzender, met verschillende beperkingen met betrekking tot wie het kan ontvangen.
Bot-API sendMessage
Een enkele HTTP-aanroep, geverifieerd met een bot-token van BotFather. De snelste manier om meldingen, waarschuwingen en antwoorden te verzenden. Het addietje onder het gras: een bot kan alleen berichten sturen naar gebruikers die al een gesprek met de bot zijn gestart.
Het beste voor bots en notificaties
MTProto-client (Telegram API)
Volledige protocoltoegang via api_id en api_hash, gebruikt om je eigen Telegram-client vanaf nul op te bouwen (Telethon, Pyrogram, TDLib). De zwaarste optie om te implementeren en te onderhouden.
Het beste voor het bouwen van een aangepaste client
Gekoppeld gebruikersaccountEenpaal
Verstuurt als een echt Telegram-account, gekoppeld via de Apparaten-functie van Telegram (QR-code of Gehoste Authenticatie). Geen "bericht mij eerst"-beperking, en het werkt ook voor groepen en bestaande gesprekken.
Het beste voor uitgaande berichten op grote schaal
Een bot-token verkrijgen of een api_id / api_hash koppeling is een afzonderlijk onderwerp. Voor een stapsgewijze handleiding, zie onze volledige gids over Telegram API-toegang verkrijgen. Deze handleiding heeft alleen betrekking op het verzenden van het bericht zodra u over de inloggegevens beschikt.


Bouw uw Telegram-integratie
Code Handleiding

Verstuur een bericht met het Bot API sendMessage-eindpunt

De Bot API biedt één enkel HTTP-eindpunt voor het verzenden van een bericht: POST https://api.telegram.org/bot/sendMessage. Vanaf Bot API 10.2 (14 juli 2026) zijn de verplichte parameters ongewijzigd: a chat_id en een text lichaam.
ParameterTypeBeschrijving
chat_id VereistGeheel getal of tekenreeksUnieke identificatie van de doelchat, of @username voor een openbaar kanaal.
text VereistSnaarBerichttekst, 1 tot 4096 tekens na entiteitparsing.
parse_mode OptioneelSnaarMarkdownV2, HTML of verouderd Markdown, om vetschrift, links en codeopmaak weer te geven.
melding_uitschakelen OptioneelBooleaansVerzendt het bericht stil, zonder een push-notificatiegeluid.
antwoordparameters OptioneelObjectVerstuurt het bericht als een antwoord op een bestaand bericht in de chat.



krul
curl -X POST ""https://api.telegram.org/bot$TELEGRAM_BOT_TOKEN/sendMessage"" \ -H "Content-Type: application/json" \ -d '{ "chat_id": 123456789, ""text": "Uw bestelling #4821 is verzonden.", "parse_mode": "MarkdownV2" }'



send_message.py
importeer verzoekt TOKEN = "123456:ABC-your-bot-token" url = f"https://api.telegram.org/bot{TOKEN}/sendMessage" lading = { "chat_id": 123456789, "tekst": ""Uw bestelling #4821 is verzonden."", "parse_mode": "MarkdownV2" } response = verzoeken.post(url, json=payload) print(antwoord.json())



sendMessage.js
const TOKEN = "123456:ABC-your-bot-token"; const url = `https://api.telegram.org/bot${TOKEN}/sendMessage`; const response = wacht op fetch(url, { method: "POST", headers: { "Content-Type": "application/json" }, body: JSON.stringify({ chat_id: 123456789, tekst: ""Uw bestelling #4821 is verzonden."", parse_mode: "MarkdownV2" }) }); const gegevens = wacht op antwoord.json(); console.log(gegevens);
Het Basculepunt

Waarom bots geen bericht vooraf kunnen sturen, en wat dat voor jou betekent

Elke sendMessage-aanroep hierboven werkt, tot het moment dat je probeert iemand te bereiken die nooit met je bot heeft geïnteracterd. Dat is het moment waarop de Bot API tegen een muur aanloopt die geen enkele parameter, poging of workaround kan oplossen.
Een bot kan niet schrijven naar een gebruiker die er niet eerst naar heeft geschreven
Dit is een structurele regel van de Bot API, geen snelheidslimiet of een bug. Totdat een gebruiker verzendt /start (of elk bericht) naar je bot, sendMessage daarnaartoe chat_id faalt faliekant. Dit is prima voor supportbots en opt-in-notificatiebots waarbij de gebruiker eerst contact opneemt. Het faalt volledig bij uitgaande use-cases: salesoutreach, accountherstelberichten, transactionele pings naar een contactpersoon die je bot nog nooit heeft geopend.
De MTProto-client heeft deze beperking niet: een volledige Telegram API-client kan elke gebruiker een bericht sturen, op dezelfde manier als de Telegram-app doet.
Een gekoppeld gebruikersaccount heeft dit ook niet, omdat het bericht wordt verzonden door een echt Telegram-account en niet door een bot. Dit is de aanpak die in de volgende paragraaf wordt behandeld.


Bouw de gekoppelde-account-flow
Gekoppeld account

Verzenden vanaf een echt Telegram-account met Unipile

Unipile verbindt een daadwerkelijke Telegram gebruikersaccount, geen bot. Koppeling vindt plaats via Telegram's eigen Apparaten-functie, het scannen van een QR-code of Hosted Auth met providers: "TELEGRAM". Omdat het bericht afkomstig is van een echt account, is er geen restrictie van alleen-bots zoals "stuur mij eerst een bericht" om te omzeilen. Zie de Telegram API productpagina voor de volledige endpointlijst.
1
Start een nieuw gesprek met startChat
Wanneer de ontvanger geen bestaande chat heeft met het gekoppelde account, roep dan POST /chats met gebruikers-id's en text. Telegram staat slechts één individueel gesprek per gebruikerspaar toe, dus als er al een chat bestaat, bezorgt dezezelfde aanroep simpelweg het bericht daarin in plaats van een dubbele te maken.



start_chat.py
importeer verzoekt url = ""https://api6.unipile.com/v2/${accountId}/chats/send"" kopteksten = {"X-API-SLEUTEL": api_key} gegevens = { "account_id"account_id, "gebruiker_ids": [telegram_user_id], "tekst": "Hallo, ik kom even terug op je verzoek." } response = verzoeken.post(url, headers=headers, data=data) chat = antwoord.json() print(chat["chat_id"]) #-gebruikers-ID voor 1-op-1-chats
2
Verzenden naar een bestaande chat met sendMessage
Eens chat_id bestaat, oproep POST /chats/{chat_id}/berichten met alleen de text lichaam. Dit is de aanroep om te gebruiken voor elk vervolgbericht in een lopend gesprek.



send_message.js
const chatId = "CHAT_ID_VAN_STARTCHAT"; const formulier = nieuw FormData(); formulier.toevoegen("tekst", "Je update is klaar om te bekijken."); const response = wacht op fetch( `https://api6.unipile.com/v2/${accountId}/chats/${chatId}/messages/send`, { method: "POST", headers: { "X-API-SLEUTEL": apiKey }, lichaam: vorm } ); const verzonden = wacht op antwoord.json(); console.log(sent.message_id);
Beide oproepen gebruiken multipart/form-data, geen JSON. Voor 1-op-1-chats, de chat_id geretourneerd door Chat starten is het eigen ID van de ontvanger: zodra u de Telegram-identificatiecode van een gebruiker kent, kunt u deze direct hergebruiken voor sendMessage zonder opzoekstap.


Begin met bouwen met Unipile
Groepen

Stuur een bericht in een Telegram-groep

Verzenden naar een groep werkt op dezelfde manier als verzenden naar een bestaande chat: POST /chats/{chat_id}/berichten van de groep chat_id en een text lichaam. Wat er verandert, is het deelnemersbeheer, dat gebruikmaakt van eigen eindpunten.
OperatieEindpuntNotities
GET Deelnemers weergeven/v2/{account_id}/chats/{chat_id}/participantsGeeft de huidige ledenlijst van de groep terug.
POST Deelnemer toevoegen/v2/{account_id}/chats/{chat_id}/participantsVereist dat de toestemming "Andere leden toevoegen" is ingeschakeld voor de groep.
DELETE Deelnemer verwijderen/v2/{account_id}/chats/{chat_id}/participantsHet gekoppelde account moet een groepsbeheerder zijn.
Controleer de rechten voordat u op de the responscode vertrouwt. Als de groep "Andere leden toevoegen" niet toestaat of het gekoppelde account geen beheerder is, kan de API nog steeds een succesreactie teruggeven zonder daadwerkelijk iemand toe te voegen of te verwijderen. Controleer altijd de deelnemerslijst na de aanroep, vertrouw niet alleen op de statuscode.
Wat niet wordt ondersteund voor Telegram in Unipile
Kanalen, communities en uitzendingen
Groepsbeheerdersacties: leden goedkeuren of promoveren
Contact-, locatie-, peiling- en evenementbijlagen
Chat archiveren
Spraak- en videogesprekken
Bezorgbaarheid

Beste praktijken om Telegram-beperkingen te voorkomen

Een gekoppeld account gedraagt zich als een echte Telegram-gebruiker, wat betekent dat het zich ook moet houden aan de zelfde antispamnormen als een geheel. De officiële richtlijn van Unipile is direct: te veel gestarte gesprekken zonder antwoord, of te veel spam- en blokkeersignalen, kunnen leiden tot een tijdelijke beperking van het account.
Respecteer de vertraging
Stuur nooit minder dan 10 tot 20 seconden pauze tussen berichten. Varieer het interval, vuur niet af op een vaste klok.
Nieuwe accounts opwarmen
Vermijd het verzenden van grote volumes vanaf vers gekoppelde accounts. Begin laag en voer het geleidelijk op naarmate de antwoordpercentages bevestigen dat het account wordt vertrouwd.
Bekijk de antwoordpercentages
Een hoog aandeel gesprekken dat geen antwoord krijgt, is een van de sterkste signalen die Telegram gebruikt om een account te markeren.
Geef de voorkeur aan warme acquisitie
Gesprekken die voortbouwen op een bestaande relatie of doorverwijzing genereren minder blokkades dan volledig koude eerste berichten.
Dit is een beslissing aan de klantzijde
Unipile stuurt de berichten door die u verzendt, het bepaalt uw ritme niet voor u. Het verzendvolume, de timing en de snelheid worden door u bepaald, gebaseerd op de geschiedenis van het account en Telegram's eigen tolerantie op enig moment. Het vanaf dag één inbouwen van realistische vertragingen is hier de meest effectieve praktijk.


Bouw met veilige verzendlimieten
Bouw met Unipile

Klaar om Telegram-berichten te versturen vanaf echte gekoppelde accounts?

Eén API voor startChat en sendMessage via Telegram, WhatsApp, LinkedIn, Instagram, Gmail, Outlook en IMAP, plus Google Agenda en Outlook Agenda. Koppel een account en verstuur binnen enkele minuten je eerste bericht.

Telegram API Bericht Verzenden - FAQ

Veelgestelde vragen over het verzenden van Telegram-berichten met de Bot API en met gekoppelde accounts.

Roep POST https://api.telegram.org/bot/sendMessage aan met een `chat_id` en een `text`-parameter. Het token is afkomstig van BotFather. De Bot API is gratis en de huidige versie is 10.2, gepubliceerd op 14 juli 2026..

Telegram vereist dat de gebruiker het gesprek met de bot opent voordat de bot iets kan verzenden. Er is geen endpoint waarmee een bot een chat kan starten met een willekeurige gebruiker. Als uw product contact moet initiëren, is een bot het verkeerde hulpmiddel en hebt u een echt gebruikersaccount nodig.

startChat opent een nieuw gesprek en verzendt het eerste bericht in één aanroep. sendMessage plaatst een bericht in een reeds bestaand gesprek. Telegram staat slechts één individueel chat per gebruiker toe, dus het aanroepen van startChat bij iemand met wie je al een chat hebt, plaatst simpelweg een bericht in die bestaande chat.

Voeg met de Bot API de bot toe aan de groep en gebruik de chat_id van de groep. Stuur vanuit een gekoppeld account naar de groeps-chat-id zoals naar elke andere chat. Unipile biedt ook functionaliteit voor het weergeven, toevoegen en verwijderen van deelnemers in groepen, maar ondersteunt geen kanalen, communities of uitzendingen.

Telegram ondersteunt MarkdownV2 en HTML. MarkdownV2 vereist het escapen van een lange lijst met gereserveerde tekens, dus HTML is meestal de veiligere keuze wanneer de berichttekst dynamisch wordt gegenereerd.

Gebruik geen gloednieuw account puur voor automatisering, voer het volume geleidelijk op en verstuur nooit meer dan één bericht per 10 à 20 seconden. Telegram verbant permanent vanwege flooden, spammen en het opkloppen van tellers, en het starten van veel onbeantwoorde gesprekken is een sterk spamsignaal.

Heb je nog vragen? Ons team staat klaar om te helpen.

Praat met een expert
nl_NLNL