Nuestras estadísticas de visitas propias están siempre activas. Google Analytics, que nos ayuda a entender cómo se usan nuestras páginas públicas (no tu espacio de trabajo con sesión iniciada), solo se activa con tu permiso. Consulta nuestra Política de privacidad.

API de Búsqueda de Google Shopping

POST

Salud de la API

Salud 24 h
Normal
Tiempo medio 24 h
—
  • Saludable / normal
  • Disponible
  • Limitada
  • Casi sin servicio
Normal

Envía una keyword para listar hasta 100 productos de Google Shopping con title, price, price_text, old_price, merchant, rating, review_count, image_url, product_id y url. Filtra con country, language, min_price, max_price y sort.

Precio $0.56 por 1.000 solicitudes ($0.000556 por llamada). Las llamadas fallidas y los resultados vacíos no se cobran. Síncrona. Para tareas lentas añade "mode": "async" al cuerpo, recibe un job_id y consúltalo.

Prompt para IA

Ayúdame a escribir un script de recopilación de datos con el endpoint de EveryInfra Google Shopping: Búsqueda (google_shopping/search).

Cómo funciona el endpoint:
- Solicitud: POST https://api.everyinfra.com/api/v1/social con la cabecera Authorization: Bearer <clave API>. Lee la clave de la variable de entorno EVERYINFRA_API_KEY y no la escribas en el código.
- En el cuerpo de la solicitud, pon platform en google_shopping y action en search, y los parámetros dentro de params.
- Parámetros obligatorios:
  - keyword: Término de búsqueda del producto, como wireless earbuds.
- Parámetros opcionales:
  - country: Código de país de dos letras, como us, gb o de, del mercado de Google Shopping (por defecto us). Los precios van en la moneda de ese mercado.
  - language: Código de idioma de dos letras, como en o de, para títulos y etiquetas (por defecto en).
  - max_price: Precio máximo; no inferior a min_price.
  - min_price: Precio mínimo, en la moneda del mercado de country; 0 o más.
  - sort: Orden: price_low (precio de menor a mayor), price_high (de mayor a menor) o rating (mejor valorados primero). Sin él, por relevancia.
  - limit: Número máximo de filas que devuelve esta llamada, un entero de 1 a 100. Si no lo envías, se usa el valor predeterminado, y una llamada puede devolver menos filas. (por defecto: 20)
- Devuelve una lista de registros. Campos principales de cada registro: rank, title, product_id, offer_id, image_id, price_text, price, old_price_text, old_price, merchant, multiple_merchants, rating; 16 campos en total, lista completa en https://api.everyinfra.com/api/v1/social/catalog?platform=google_shopping.
- Cuerpo de solicitud de ejemplo:
{
  "platform": "google_shopping",
  "action": "search",
  "params": {
    "keyword": "wireless earbuds"
  }
}
- Precio: $0.56 por 1.000 solicitudes; los resultados fallidos y vacíos no se cobran.
- Para decenas o cientos de objetivos, añade "mode": "async" al cuerpo: recibes un job_id al instante y consultas GET https://api.everyinfra.com/api/v1/jobs/{job_id} para obtener el resultado.
- Ante un 422, corrige la solicitud con los nombres de parámetros y los valores admitidos que sugiere el error; ante un 429 o un 503, espera lo que indique Retry-After y vuelve a intentarlo.

Antes de escribir código, pregúntame qué objetivos necesito, cuántos, qué campos y en qué formato quiero el resultado; luego confirma conmigo el plan y el coste aproximado.

Parámetros de la solicitud

NombreUbicaciónTipoObligatorioPor defectoDescripción
AuthorizationheaderstringSí-Bearer seguido de tu clave de API. Créala en la consola; nunca la pongas en una URL ni en un repositorio de código.
platformbodystringSígoogle_shoppingIdentificador de la plataforma, valor fijo.
actionbodystringSísearchIdentificador de la capacidad, valor fijo.
keywordbody.paramsstringSí-Término de búsqueda del producto, como wireless earbuds.
countrybody.paramsstringNo-Código de país de dos letras, como us, gb o de, del mercado de Google Shopping (por defecto us). Los precios van en la moneda de ese mercado.
languagebody.paramsstringNo-Código de idioma de dos letras, como en o de, para títulos y etiquetas (por defecto en).
max_pricebody.paramsnumberNo-Precio máximo; no inferior a min_price.
min_pricebody.paramsnumberNo-Precio mínimo, en la moneda del mercado de country; 0 o más.
sortbody.paramsstringNo-Orden: price_low (precio de menor a mayor), price_high (de mayor a menor) o rating (mejor valorados primero). Sin él, por relevancia.
limitbody.paramsinteger (1–100)No20Número máximo de filas que devuelve esta llamada, un entero de 1 a 100. Si no lo envías, se usa el valor predeterminado, y una llamada puede devolver menos filas. Los valores mayores devuelven 422 antes de cualquier cobro.

Ejemplos de código

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": "google_shopping",
  "action": "search",
  "params": {
    "keyword": "wireless earbuds"
  }
}'

Definición OpenAPI (JSON)Los ejemplos leen la clave de la variable de entorno EVERYINFRA_API_KEY; el código copiado nunca contiene tu clave.

Ejemplo de respuesta

Vista previa de campos

Todavía no hay una muestra real para estos parámetros de ejemplo: se muestra la estructura de la respuesta y sus campos según la definición de la API, con … como marcadores. No es el resultado de una llamada real.

json
{
  "id": "req_…",
  "platform": "google_shopping",
  "action": "search",
  "results": [
    {
      "rank": …,
      "title": …,
      "product_id": …,
      "offer_id": …,
      "image_id": …,
      "price_text": …,
      "price": …,
      "old_price_text": …,
      "old_price": …,
      "merchant": …,
      "multiple_merchants": …,
      "rating": …,
      "rating_scale": …,
      "review_count": …,
      "image_url": …,
      "url": …,
      "platform": …
    }
  ],
  "count": …,
  "billing": {
    "charged": …,
    "charged_usd": …,
    "balance_after_usd": …,
    …
  },
  "quota": { … }
}

Campos de la respuesta

Los datos están en results. La tabla lista los campos que puede tener cada registro; los valores que la plataforma no muestra nunca se inventan.

CampoSignificado
rankConserva el significado de la plataforma
titleTítulo. null cuando la plataforma no usa títulos (por ejemplo publicaciones solo de texto).
product_idConserva el significado de la plataforma
offer_idConserva el significado de la plataforma
image_idConserva el significado de la plataforma
price_textConserva el significado de la plataforma
pricePrecio como número, sin símbolo de moneda; ver currency.
old_price_textConserva el significado de la plataforma
old_priceConserva el significado de la plataforma
merchantConserva el significado de la plataforma
multiple_merchantsConserva el significado de la plataforma
ratingValoración. La escala depende de la plataforma: rating_scale en la misma fila indica el máximo (normalmente 5; Booking, Douban, iQIYI y NAVER usan 10). Convierte con rating_scale antes de comparar entre plataformas o la comparación puede salir al revés.
rating_scaleMáximo de rating en la misma fila: 5 en escalas de cinco estrellas y 10 en escalas de diez puntos. Solo aparece si la fila tiene rating.
review_countNúmero de reseñas, en capacidades de productos y negocios. null significa no publicado, no 0.
image_urlEnlace de imagen. Las capacidades con varias imágenes pueden devolver una lista image_urls.
urlEnlace al registro en la plataforma.
platformIdentificador de la plataforma, igual que platform en la solicitud (por ejemplo xiaohongshu, tiktok).

Errores y facturación

401
Falta la clave o no es válida.
402
Saldo insuficiente. Recarga primero.
422
Nombre o valor de parámetro incorrecto. Corrígelo según las opciones indicadas en el error. Sin cargo.
429
Se alcanzó el límite de solicitudes por minuto. Espera el tiempo indicado en Retry-After y vuelve a intentarlo.
503
No se pudo completar. El cargo retenido vuelve a tu saldo. Si el resultado es incierto, compruébalo antes de reenviar.
200 vacío
Sin datos. Sin cargo.

Errores

Referencias oficiales

Solo sirven para contrastar objetos y términos. No implican autorización ni respaldo de la plataforma a EveryInfra.

  • Google Merchant Center: precio y precio de oferta en la especificación de datos de producto ↗

    La especificación de datos de producto de Google Merchant Center indica que los comercios envían productos con atributos como título, precio (price) y un precio de oferta opcional (sale_price), y que Google usa esos datos para emparejar productos con búsquedas. La fuente solo confirma que los precios de Google Shopping salen de los datos de los comercios y distinguen precio normal y de oferta; `min_price` y `max_price` de esta API filtran en la moneda del país buscado, los define EveryInfra y la fuente no garantiza el filtro ni el número de resultados.

    Comprobado el 2026-11-01