Aller au contenu principal
Piloterr
Retour à la bibliothèque

API GSA eLibrary Search

Recherchez des schedules, des SIN et des contrats GSA eLibrary par mot-clé ou par URL de recherche.

Actif1 crédit = 1 requêteGET/v2/gsaelibrary/search

Vue d'ensemble de l'endpoint

Documentation détaillée, tarifs et exemples d'utilisation.

AperçuLink to Aperçu

Recherchez le résumé GSA eLibrary sur gsaelibrary.gsa.gov. Envoyez un mot-clé comme radar, ou une URL searchResults.do. La réponse est { results, pagination }. Chaque ligne est un schedule, un SIN ou un contrat.

Une ligne SIN est soit la catégorie, soit un sous-groupe de ce SIN. Sur une catégorie, name est le titre, par exemple Purchasing of New Electronic Equipment, et sin est le code, par exemple 33411. Sur un sous-groupe, name est le libellé du lien, par exemple Airborne Radar Equipment, sin reste le code parent, et url contient subcategoryCode.

Une ligne contrat porte le nom du contractant, le numéro de contrat et une URL contractorInfo.do qui inclut déjà le nom. Passez cette URL à /v2/gsaelibrary/contract. Le numéro seul, par exemple GS-07F-0239T, est accepté par l'endpoint contrat et renvoie aujourd'hui 404, car GSA attend le nom que la recherche place dans l'URL.

DémarrageLink to Démarrage

GET et POST utilisent les mêmes paramètres. Les exemples sont en GET.

GET https://api.piloterr.com/v2/gsaelibrary/search?query=radar

Pour radar, le résumé contient le Multiple Award Schedule, des SIN comme 334515, des sous-groupes comme Airborne Radar Equipment, et le contrat US RADAR INC / GS-07F-0239T.

ParamètresLink to Paramètres

Paramètre Obligatoire Exemple
query oui radar

query est obligatoire. Une valeur vide renvoie 400. Une URL hors de gsaelibrary.gsa.gov renvoie 400. Sur ce domaine, l'URL doit être une recherche (searchResults.do ou searchText=).

PaginationLink to Pagination

eLibrary renvoie tout le résumé en une fois. pagination.page vaut 1. pagination.next vaut null. pagination.total_results est le nombre de lignes. pagination.total_pages vaut 1 s'il y a des lignes, sinon 0. pagination.per_page reprend ce nombre.

Il n'y a pas de page suivante à demander. Les URL sont uniques. Le même code sin peut revenir sur plusieurs sous-groupes, chacun avec son URL et son libellé.

Champs de réponseLink to Champs de réponse

Champ Type Sens
results[].result_type string schedule, sin ou contract
results[].name string Titre du schedule, titre du SIN, libellé de sous-groupe ou nom du contractant
results[].url string URL eLibrary absolue
results[].contract_number string ou null Numéro de contrat
results[].schedule_number string ou null Code schedule, par exemple MAS
results[].schedule_name string ou null Titre du schedule
results[].sin string ou null Code SIN. Sur un sous-groupe, c'est le SIN parent
results[].category string ou null Grande catégorie, par exemple Contractors
results[].description string ou null Texte de périmètre quand la ligne en affiche un
pagination.page integer 1
pagination.next null Pas de page suivante
pagination.total_results integer Nombre de lignes
pagination.total_pages integer 1 ou 0
pagination.per_page integer ou null Lignes de ce résumé

Cas d'usageLink to Cas d'usage

  • Retrouver le SIN MAS qui couvre le radar à pénétration de sol, et lire le libellé Airborne Radar Equipment en plus du code parent 33411.
  • Vérifier que US RADAR INC apparaît avec le contrat GS-07F-0239T et conserver l'URL contractorInfo.do pour l'appel contrat.
  • Extraire toutes les URL de schedule et de SIN pour le mot-clé radar depuis l'unique page de résumé.

Codes d'erreurLink to Codes d'erreur

Code Sens
400 query vide, ou URL hors de gsaelibrary.gsa.gov
401 Clé API absente
404 La page n'est pas un résumé de recherche
500 Échec de la récupération

Endpoints liésLink to Endpoints liés

GSA eLibrary Contract

API associées

Étendez vos capacités data avec ces outils complémentaires.

Prêt à commencer ?

Votre API de scraping web est à un clic. Commencez avec +500 crédits, sans infrastructure à gérer, sans proxies à configurer, et sans carte bancaire.

  • +500 crédits
  • Aucune carte bancaire requise
  • Tous les endpoints inclus