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 issue e pull request su tutto GitHub con i qualificatori di query di GitHub, come repo:, is:pr o label:, e ottieni fino a 100 corrispondenze con titolo, corpo, stato, etichette, conteggi, autore e repository.

Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su github e action impostato su search_issues. Prezzo $1.92 per 1.000 richieste ($0.001917 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 Ricerca issue di EveryInfra (github/search_issues).

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 search_issues, e inserisci i parametri in params.
- Parametri obbligatori:
  - keyword: Una query di ricerca delle issue GitHub per search_issues. Funzionano i qualificatori GitHub, come repo:openai/whisper is:pr, is:issue label:bug o author:octocat.
- Parametri facoltativi:
  - sort: Ordinamento dell'elenco. repository_issues: created (predefinito), updated o comments. search_issues: best match per impostazione predefinita, oppure comments, created, updated, reactions. (valori consentiti: comments / created / reactions / updated)
  - 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: 30)
- Restituisce un elenco di record. Campi principali di ogni record: id (ID numerico di GitHub, come stringa), number (Numero della issue o della pull request…), url, title, text, state (open o closed), is_pull_request (true per una pull request, false per un…), is_draft (Indica se una pull request è una bozza), labels (Nomi delle etichette), comment_count, reaction_count (Totale delle reazioni emoji), repository (Repository a cui appartiene la riga, ne…); 21 campi in totale, elenco completo su https://api.everyinfra.com/api/v1/social/catalog?platform=github.
- Esempio di corpo della richiesta:
{
  "platform": "github",
  "action": "search_issues",
  "params": {
    "keyword": "coffee"
  }
}
- Prezzo: $1.92 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ìsearch_issuesIdentificativo della funzionalità, valore fisso.
keywordbody.paramsstringSì-Una query di ricerca delle issue GitHub per search_issues. Funzionano i qualificatori GitHub, come repo:openai/whisper is:pr, is:issue label:bug o author:octocat.
sortbody.paramsstring (enum)No-Ordinamento dell'elenco. repository_issues: created (predefinito), updated o comments. search_issues: best match per impostazione predefinita, oppure comments, created, updated, reactions. forks: newest (predefinito), oldest, stargazers, watchers. user_repositories: created, updated, pushed, full_name.Valori consentiticommentscreatedreactionsupdated
limitbody.paramsinteger (1–100)No30Numero 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

#
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": "search_issues",
  "params": {
    "keyword": "coffee"
  }
}'

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": "search_issues",  "results": [    {      "id": …,      "number": …,      "url": …,      "title": …,      "text": …,      "state": …,      "is_pull_request": …,      "is_draft": …,      "labels": …,      "comment_count": …,      "reaction_count": …,      "repository": …,      "author_username": …,      "author_id": …,      "author_avatar_url": …,      "author_type": …,      "author_association": …,      "posted_at": …,      "updated_at": …,      "closed_at": …,      "merged_at": …,      "platform": …    }  ],  "count": …,  "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 numerico di GitHub, come stringa.
numberNumero della issue o della pull request all'interno del repository.
urlLink al record sulla piattaforma.
titleTitolo. null quando la piattaforma non prevede titoli (ad esempio post di solo testo).
textTesto 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).
stateopen o closed.
is_pull_requesttrue per una pull request, false per una issue.
is_draftIndica se una pull request è una bozza; false per le issue.
labelsNomi delle etichette; assenti se non ce ne sono.
comment_countCommenti. null significa non resi noti, non 0.
reaction_countTotale delle reazioni emoji.
repositoryRepository a cui appartiene la riga, nel formato owner/repo.
author_usernameUsername dell'autore (@handle), di solito utilizzabile negli URL.
author_idID univoco dell'autore sulla piattaforma.
author_avatar_urlMantiene il significato attribuito dalla piattaforma
author_typeTipo di account dell'autore: User, Bot o Organization.
author_associationLa relazione dell'autore con il repository, come riportata da GitHub: OWNER, MEMBER, COLLABORATOR, CONTRIBUTOR, FIRST_TIME_CONTRIBUTOR, NONE e così via.
posted_atData 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.
updated_atData e ora dell'ultimo aggiornamento, ISO 8601 UTC.
closed_atData e ora di chiusura, ISO 8601 UTC; assente finché è aperta.
merged_atData e ora del merge di una pull request, ISO 8601 UTC; assente per le issue e per le pull request non sottoposte a merge.
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.

  • GitHub Docs: cercare issue e pull request ↗

    La documentazione di ricerca di GitHub elenca i qualificatori accettati in una ricerca di issue, come repo:, is:pr, is:issue, label: e author:. Spiega cosa può contenere `keyword`; il numero e l'ordine dei risultati restano quelli di GitHub.

    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