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

Leggi il profilo GitHub pubblico di un utente o di un'organizzazione: nome, bio, azienda, località, sito web, username X, follower, account seguiti, numero di repository pubblici e gist e data di iscrizione.

Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su github e action impostato su user. Prezzo $0.96 per 1.000 richieste ($0.000958 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 GitHub Profilo utente di EveryInfra (github/user).

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 github e action su user, e inserisci i parametri in params.
- Parametri obbligatori:
  - username: Un nome utente GitHub come torvalds, oppure il link al profilo; funzionano anche le organizzazioni.
- Restituisce un oggetto. Campi principali: username, id (ID numerico di GitHub, come stringa), display_name, bio, company (Azienda indicata nel profilo), location, website, twitter_username (Username X (Twitter) indicato nel profi…), follower_count, following_count, public_repo_count (Repository pubblici), public_gist_count (Gist pubblici); 16 campi in totale, elenco completo su https://api.everyinfra.com/api/v1/social/catalog?platform=github.
- Esempio di corpo della richiesta:
{
  "platform": "github",
  "action": "user",
  "params": {
    "username": "torvalds"
  }
}
- Prezzo: $0.96 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ìgithubIdentificativo della piattaforma, valore fisso.
actionbodystringSìuserIdentificativo della funzionalità, valore fisso.
usernamebody.paramsstringSì-Un nome utente GitHub come torvalds, oppure il link al profilo; funzionano anche le organizzazioni.

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": "github",
  "action": "user",
  "params": {
    "username": "torvalds"
  }
}'

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

#
Non è ancora disponibile una risposta di esempio per questi parametri. Questa anteprima mostra la struttura e i campi della risposta secondo la definizione dell'API, con … come segnaposto; non è il risultato di una chiamata reale.
json
{  "id": "req_…",  "platform": "github",  "action": "user",  "results": {    "username": …,    "id": …,    "display_name": …,    "bio": …,    "company": …,    "location": …,    "website": …,    "twitter_username": …,    "follower_count": …,    "following_count": …,    "public_repo_count": …,    "public_gist_count": …,    "avatar_url": …,    "url": …,    "account_type": …,    "created_at": …,    "platform": …  },  "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
usernameUsername (@handle).
idID numerico di GitHub, come stringa.
display_nameNome visualizzato; può essere diverso da username.
bioBio del profilo scritta dall'account; può contenere interruzioni di riga ed emoji.
companyAzienda indicata nel profilo; assente se vuota.
locationDescrizione della località passata così com'è; il formato varia in base alla piattaforma.
websiteSito web esterno indicato dall'account o dall'attività.
twitter_usernameUsername X (Twitter) indicato nel profilo; assente se vuoto.
follower_countFollower. null significa non reso noto, non 0.
following_countAccount seguiti. null significa non reso noto, non 0.
public_repo_countRepository pubblici.
public_gist_countGist pubblici.
avatar_urlLink all'immagine dell'avatar. Alcune piattaforme restituiscono URL CDN con dimensioni specifiche, che possono scadere.
urlLink al record sulla piattaforma.
account_typeTipo di account: User, Bot o Organization.
created_atData e ora di creazione, nello stesso formato di posted_at.
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.

  • API REST di GitHub: ottenere un utente ↗

    Il riferimento REST di GitHub legge un account pubblico tramite il suo username e documenta i campi del profilo pubblico. Conferma che `username` è il login di GitHub, non il nome visualizzato.

    Verificato il 2026-11-01

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