API Telegram Ricerca
Stato di salute dell'API
- Operatività nelle ultime 24 ore
- Normale
- Buono / normale
- Disponibile
- Limitato
- Quasi del tutto inattivo
Ultime 24 ore
Ultimi 30 giorni
Cerca messaggi nei canali Telegram pubblici per parola chiave. Ogni risultato ha nome del canale, tipo, numero di iscritti, visualizzazioni, reazioni e media. Restringi l'intervallo con since e until. Le chat private non vengono mai cercate, e i risultati non rappresentano tutto Telegram.
Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su telegram e action impostato su search. Prezzo $0.56 per 1.000 richieste ($0.000556 per chiamata). Le chiamate non riuscite e i risultati vuoti non vengono addebitati. Sincrona. Per i job più lenti, aggiungi "mode": "async" al corpo della richiesta, recupera il job_id ed esegui il polling.
Prompt per l'AI
#Aiutami a scrivere uno script di raccolta dei dati con l'endpoint Telegram Ricerca di EveryInfra (telegram/search).
Come funziona l'endpoint:
- Richiesta: POST https://api.everyinfra.com/api/v1/social con l'header Authorization: Bearer <chiave API>. Leggi la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY e non scriverla mai direttamente nel codice.
- Nel corpo della richiesta imposta platform su telegram e action su search, e inserisci i parametri in params.
- Parametri obbligatori:
- keyword: Indica la query di ricerca dei messaggi nei canali pubblici per l'azione search. Non cerca nelle rubriche né nelle chat private.
- Parametri facoltativi:
- since: Imposta il limite inferiore della data dei messaggi per l'azione search. Non filtra per data di creazione del gruppo, e channel_posts non ha un filtro per data.
- until: Imposta il limite superiore della data dei messaggi (beforeDate) per l'azione search. Si usa insieme a since per restringere i risultati dei messaggi pubblici.
- limit: Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 100. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. (predefinito: 20)
- Restituisce un elenco di record. Campi principali di ogni record: id, url, text, posted_at, view_count, media_url, reactions, channel_username, channel_title, channel_type, channel_subscriber_count, channel_description.
- Esempio di corpo della richiesta:
{
"platform": "telegram",
"action": "search",
"params": {
"keyword": "bitcoin"
}
}
- Prezzo: $0.56 per 1.000 richieste; le richieste non riuscite e i risultati vuoti non vengono addebitati.
- Per decine o centinaia di target, aggiungi "mode": "async" al corpo: ricevi subito un job_id ed esegui il polling su GET https://api.everyinfra.com/api/v1/jobs/{job_id} per ottenere il risultato.
- In caso di 422, correggi la richiesta usando i nomi dei parametri e i valori consentiti suggeriti nell'errore; in caso di 429 o 503, attendi il tempo indicato da Retry-After e riprova.
Prima di scrivere il codice, chiedimi quali target mi servono, quanti, quali campi e quale formato di output voglio; poi conferma con me il piano e il costo indicativo.Parametri della richiesta
#| Nome | Posizione | Tipo | Obbligatorio | Predefinito | Descrizione |
|---|---|---|---|---|---|
Authorization | header | string | Sì | - | Bearer seguito dalla tua chiave API. Creala nella console; non inserirla mai in un URL o in un repository di codice. |
platform | body | string | Sì | telegram | Identificativo della piattaforma, valore fisso. |
action | body | string | Sì | search | Identificativo della funzionalità, valore fisso. |
keyword | body.params | string | Sì | - | Indica la query di ricerca dei messaggi nei canali pubblici per l'azione search. Non cerca nelle rubriche né nelle chat private. |
since | body.params | date | No | - | Imposta il limite inferiore della data dei messaggi per l'azione search. Non filtra per data di creazione del gruppo, e channel_posts non ha un filtro per data. |
until | body.params | date | No | - | Imposta il limite superiore della data dei messaggi (beforeDate) per l'azione search. Si usa insieme a since per restringere i risultati dei messaggi pubblici; non garantisce la copertura completa dei messaggi nell'intervallo indicato. |
limit | body.params | integer (1–100) | No | 20 | Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 100. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. I valori più alti restituiscono 422 prima di qualsiasi addebito. |
Esempi di codice
#curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "telegram",
"action": "search",
"params": {
"keyword": "bitcoin"
}
}'Definizione OpenAPI (JSON)Gli esempi leggono la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY; il codice copiato non contiene mai la tua chiave.
Esempio di risposta
#{ "id": "req_…", "platform": "telegram", "action": "search", "results": [ { "id": 17347, "url": "https://t.me/s/BitcoinBullets?before=17348", "text": "#ALGO Market Analysis\n\nALGO is at 0.1065 on the 8h. A steady slide from the 0.1350 highs has walked it straight into the rising trendline from the mid August lows near 0.1045. The trendline last caught price in mid September and launched the move to the highs, so this test carrie…", "posted_at": "2026-10-24T03:12:51+00:00", "view_count": 3760, "media_url": "https://cdn1.telesco.pe/file/L8xXzg-1fMU1_C3CIFPJrV2jLFtIv-dKS6i26m0q2ih1q5qmi6TuPK3xc2BnJjAcmyZYpQoh1Cq4lPpcKu93ot-IQLOj2oyJrEXAICkGf5LQn8o9LrEbSC5m3s0IgGRKXRYVe_6wI3eGPqL3JnAvP9aF6gEhvYJ7zeCF1CnFpk-IKpy07ou-98er0QyXBX_0ONu6vn7Lnk9UJktsjySTFjCTkouy62mtSppMXnJ-JqOhMpgkQrK4NvhRLcS…", "channel_username": "•••", "channel_title": "Bitcoin Bullets®", "channel_type": "Channel", "channel_subscriber_count": 98900, "channel_description": "The most accurate trading signals on Telegram since 2018.\n\nVIP: @•••\nCONTACT: @•••\n\nBINGX $5K Bonus: https://bingx.com/invite/XJKYUGIC\nBybit $30K Bonus: https://bit.ly/btcbullets\nMEXC $20k Bonus: https://bit.ly/BBMEXC", "platform": "telegram" }, { "id": 72823, "url": "https://telegram.me/s/cointelegraph", "text": "🔥 JUST IN: Spot Bitcoin ETFs just bled $635.6M in a single day, the biggest outflow since June. \n\nBlackRock's $IBIT alone dumped $254.1M.\n\nNews | Markets | YouTube", "posted_at": "2026-10-24T04:35:40+00:00", "view_count": 7590, "media_url": "https://cdn5.telesco.pe/file/fw7hVR8Ye5Sca20t8mXruSNy9t6lWEjm7ZP-CkQsWKx0YVnz0FVuo6694XBR6RrHeV4-dMQ-rAgc9fVg0hRQEZ4GUb03077FdE9yFtoI1WS7fCeL8Bo3exP5ztWf9ESnIUwKHc6x3hOzcmGZkQGvplwicupu4CSlZLWpMpK6b_WjPMern2avP3bupXdqdONF3wFOwHe4nvgwKWQRFvGIaZDTsHhmMsbsP5d44DteJlike1ZL3kwkD9FR8n2…", "reactions": [ { "emoji": "🔥", "count": 27 }, { "emoji": "🤡", "count": 20 }, { "emoji": "❤", "count": 12 } ], "channel_title": "Cointelegraph", "channel_type": "Channel", "channel_subscriber_count": 328000, "channel_description": "The Future of Money \n\nUnbiased crypto, markets & Web3 news in real-time. Trusted since 2013.\n\n🔔 Turn on notifications to catch the calls that move markets.\n\nExplore: linktr.ee/cointelegraph_mobile\n\nFor ads: •••", "platform": "telegram" } ], "count": 16, "billing": { "charged": …, "charged_usd": …, "balance_after_usd": …, … }, "quota": { … }}
Campi della risposta
#I dati di business si trovano in results. La tabella elenca i campi che un record può contenere; i valori che la piattaforma non mostra non vengono mai inventati.
| Campo | Significato |
|---|---|
id | ID univoco del record sulla piattaforma. È univoco solo all'interno di una piattaforma; gli ID possono ripetersi tra piattaforme diverse. |
url | Link al record sulla piattaforma. |
text | Testo del contenuto senza HTML, restituito per intero e mai troncato (su alcune piattaforme i risultati degli elenchi contengono solo un estratto; lo indicano le note sui campi della piattaforma). |
posted_at | Data e ora di pubblicazione in formato ISO 8601, UTC (ad esempio 2026-08-07T12:34:56+00:00). Le stringhe non standard della piattaforma vengono passate così come sono, quindi esegui il parsing in modo difensivo. null significa che la piattaforma non le rende note. |
view_count | Visualizzazioni o riproduzioni. null significa non rese note, non 0. |
media_url | Mantiene il significato attribuito dalla piattaforma |
reactions | Mantiene il significato attribuito dalla piattaforma |
channel_username | Mantiene il significato attribuito dalla piattaforma |
channel_title | Mantiene il significato attribuito dalla piattaforma |
channel_type | Mantiene il significato attribuito dalla piattaforma |
channel_subscriber_count | Mantiene il significato attribuito dalla piattaforma |
channel_description | Mantiene il significato attribuito dalla piattaforma |
platform | Identificativo della piattaforma di origine, uguale a platform nella richiesta (ad esempio xiaohongshu, tiktok). |
Errori e addebiti
#- 401
- Chiave mancante o non valida.
- 402
- Saldo insufficiente. Effettua prima una ricarica.
- 422
- Nome o valore del parametro non valido. Correggilo seguendo i suggerimenti dell'errore. Nessun addebito.
- 429
- Raggiunto il limite di richieste al minuto. Attendi il tempo indicato da Retry-After, poi riprova.
- 503
- Impossibile completare. L'importo trattenuto torna sul tuo saldo. Se l'esito è incerto, verificalo prima di riprovare.
- Risposta 200 vuota
- Nessun dato. Nessun addebito.
Riferimenti ufficiali
#Usati solo per verificare oggetti e terminologia. Non implicano alcuna autorizzazione o approvazione di EveryInfra da parte della piattaforma.
- Documentazione ufficiale di Telegram: licenza dei contenuti e limiti all'uso per l'AI ↗
I termini ufficiali di Telegram limitano l'accesso ai contenuti oltre il normale uso previsto della piattaforma e vietano lo scraping o l'aggregazione dei dati della piattaforma per addestramento, validazione, miglioramento, benchmarking e deployment di modelli AI; le eccezioni richiedono il consenso esplicito e continuativo degli utenti interessati per ogni contenuto e contesto, perché la visibilità pubblica non concede una licenza d'uso generale.
Verificato il 2026-09-04