POST

Stato di salute dell'API

Operatività nelle ultime 24 ore
Normale
  • Buono / normale
  • Disponibile
  • Limitato
  • Quasi del tutto inattivo
Normale

Ultime 24 ore

Ultimi 30 giorni

Cerca video su Odysee per keyword, con titolo, canale, durata, numero di visualizzazioni e Mi piace, lingue e tag per ogni risultato. Non viene riprodotto né scaricato nulla, e i risultati non sono un indice completo della piattaforma.

Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su odysee e action impostato su search. Prezzo $1.39 per 1.000 richieste ($0.001389 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 Odysee Ricerca di EveryInfra (odysee/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 odysee e action su search, e inserisci i parametri in params.
- Parametri obbligatori:
  - keyword: Specifica la stringa di ricerca dei video per l'azione search. L'azione trending non accetta il parametro keyword. search non accetta l'opzione sort usata per gli elenchi dei canali.
- Parametri facoltativi:
  - limit: Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 50. 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, title, description, channel_name, channel_id, channel_url, url, thumbnail_url, duration_seconds, duration_sec, view_count, like_count; 16 campi in totale, elenco completo su https://api.everyinfra.com/api/v1/social/catalog?platform=odysee.
- Esempio di corpo della richiesta:
{
  "platform": "odysee",
  "action": "search",
  "params": {
    "keyword": "open source hardware"
  }
}
- Prezzo: $1.39 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

#
NomePosizioneTipoObbligatorioPredefinitoDescrizione
AuthorizationheaderstringSì-Bearer seguito dalla tua chiave API. Creala nella console; non inserirla mai in un URL o in un repository di codice.
platformbodystringSìodyseeIdentificativo della piattaforma, valore fisso.
actionbodystringSìsearchIdentificativo della funzionalità, valore fisso.
keywordbody.paramsstringSì-Specifica la stringa di ricerca dei video per l'azione search. L'azione trending non accetta il parametro keyword. search non accetta l'opzione sort usata per gli elenchi dei canali.
limitbody.paramsinteger (1–50)No20Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 50. 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

#
bash
curl -X POST 'https://api.everyinfra.com/api/v1/social' \
  -H "Authorization: Bearer $EVERYINFRA_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "platform": "odysee",
  "action": "search",
  "params": {
    "keyword": "open source hardware"
  }
}'

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

#
Acquisita il September 26, 2026 at 08:56 (UTC) chiamando questa API con i parametri dell'esempio di codice qui sopra. results e count sono la risposta reale di quella chiamata, da cui sono state rimosse le informazioni personali (nomi, handle, avatar, link ai profili, recapiti); l'elenco conserva i primi 2. id, billing e quota cambiano a ogni chiamata, quindi ne viene mostrata solo la struttura.
json
{  "id": "req_…",  "platform": "odysee",  "action": "search",  "results": [    {      "id": "72bc22b7fb1f2047af9b0dac8014e9f86a35a443",      "title": "Covid was invented for control.The vax was for population control. Are you awake yet? Epstein/Gates",      "description": "Source: https://www.bitchute.com/video/mgTLusLl6rwU/",      "channel_name": "@•••",      "channel_id": "5b075f6e4298d8b55cb5a40c45600cae45b93722",      "url": "https://odysee.com/@•••/Covid-was-invented-for-control.The-vax-was-for-population-control.-Are-you-awake-yet-:7",      "thumbnail_url": "https://thumbs.odycdn.com/c57b06e52bb39f92d1e6c55e0dc01204.webp",      "duration_seconds": 83,      "view_count": 1000000,      "published_at": "2026-02-16T02:39:16+00:00",      "platform": "odysee"    },    {      "id": "eeb7a2c6b59ee555cbe571b3577174676194bf19",      "title": "An Inconvenient Study that prove vaccines are making us sick",      "description": "In 2016, journalist Del Bigtree issued a challenge to the head of infectious disease at one of the most prestigious medical institutions in the world: conduct the most thorough vaxxed vs. unvaxxed study that has ever been done. The expert took up the challenge and ran the study t…",      "channel_name": "@•••",      "channel_id": "4be43c2d8fcde0bbc7a1ade201eb56a9b83436a5",      "url": "https://odysee.com/@•••/An-Inconveniant-Study:e",      "thumbnail_url": "https://thumbs.odycdn.com/7c8b795d349e8d105630627aa998ea21.webp",      "duration_seconds": 4957,      "view_count": 100560,      "published_at": "2026-01-17T21:19:44+00:00",      "tags": [        "education",        "music",        "gaming"      ],      "platform": "odysee"    }  ],  "count": 20,  "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.

CampoSignificato
idID univoco del record sulla piattaforma. È univoco solo all'interno di una piattaforma; gli ID possono ripetersi tra piattaforme diverse.
titleTitolo. null quando la piattaforma non prevede titoli (ad esempio post di solo testo).
descriptionRiepilogo o descrizione, di solito più breve di text.
channel_nameMantiene il significato attribuito dalla piattaforma
channel_idMantiene il significato attribuito dalla piattaforma
channel_urlMantiene il significato attribuito dalla piattaforma
urlLink al record sulla piattaforma.
thumbnail_urlLink alla miniatura, a risoluzione inferiore rispetto a image_url.
duration_secondsDurata in secondi. null per i contenuti che non sono video o audio.
duration_secMantiene il significato attribuito dalla piattaforma
view_countVisualizzazioni o riproduzioni. null significa non rese note, non 0.
like_countLike. null significa che la piattaforma o questa funzionalità non li rende noti; non equivale a 0.
published_atMantiene il significato attribuito dalla piattaforma
media_typeMantiene il significato attribuito dalla piattaforma
languagesMantiene il significato attribuito dalla piattaforma
tagsArray di tag. Se non ce ne sono, è un array vuoto, non null.
platformIdentificativo 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.

Errori

Riferimenti ufficiali

#

Usati solo per verificare oggetti e terminologia. Non implicano alcuna autorizzazione o approvazione di EveryInfra da parte della piattaforma.

  • Odysee: i titoli visualizzati sono distinti dagli URL dei contenuti ↗

    Odysee distingue esplicitamente titolo, URL e descrizione dei contenuti caricati, perché ognuno ha uno scopo diverso. I risultati di ricerca devono conservare i link e i titoli originali invece di costruire indirizzi a partire dai titoli, e il testo della descrizione non è una trascrizione completa del video.

    Verificato il 2026-09-04

Le nostre statistiche di visita interne sono sempre attive. Google Analytics viene caricato solo se scegli «Consenti analisi». Informativa sulla privacy