Pesquisar em todas as categorias
Retorna os locais encontrados para a palavra-chave, independentemente da categoria.
{
"target": "tripadvisor.com.br",
"type": "search",
"keyword": "MASP"
} // docs
Pesquisa hotéis, restaurantes e atrações no Tripadvisor por palavra-chave, com filtro opcional de categoria e resultados normalizados.
Nota importante: alguns campos podem retornar null em produção,
dependendo da página de origem. Nesta documentação, os exemplos de output são
preenchidos intencionalmente com valores não nulos para facilitar integração.
Quando a entidade consultada não existe na origem, o extract e a tool MCP retornam
200 com data: null e
notFound: true. Esse caso é tratado como resposta concluída,
não como erro de servidor.
curl -X POST https://api.geckoapi.com.br/v1/extract \
-H "Authorization: Bearer SUA_CHAVE" \
-H "Content-Type: application/json" \
-d '{
"target": "tripadvisor.com.br",
"type": "search",
"keyword": "MASP"
}'
A mesma seam também aparece no MCP hospedado como uma tool dedicada.
Os argumentos reaproveitam os campos do extract, mas target e type
já ficam fixos pela tool.
Endpoint
POST /v1/mcp
Tool name
tripadvisor_com_br_search
Auth
Bearer ou X-API-Key
{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "tripadvisor_com_br_search",
"arguments": {
"keyword": "MASP",
"executionId": "exec_example_123"
}
}
}
Campos suportados nesta API do POST /v1/extract,
com regras específicas de obrigatoriedade e condicionais.
| Campo | Tipo | Status | Regra | Default | Exemplo |
|---|---|---|---|---|---|
| keyword Palavra-chave para buscas PLP. Em Google Search ela representa a query enviada ao Google; em Booking PLP é obrigatória; em outros PLPs pode substituir a URL. | string | Obrigatório | Texto livre pesquisado no Tripadvisor. | - | iphone 15 pro max |
| placeType Categoria de local no Tripadvisor. É obrigatória no PLP, opcional na busca geral e inferida automaticamente da URL em PDP e Review. | "hotel" | "restaurant" | "attraction" | Opcional | Filtra os resultados por hotel, restaurant ou attraction. | - | attraction |
| target Fonte alvo da extração. | enum | Obrigatório | Sempre obrigatório e deve ser tripadvisor.com.br. | - | mercadolivre.com.br |
| type Tipo da extração: pdp, idp, plp, ilp, quote, review ou places. | enum | Obrigatório | Sempre obrigatório e deve ser search. | - | pdp |
Retorna os locais encontrados para a palavra-chave, independentemente da categoria.
{
"target": "tripadvisor.com.br",
"type": "search",
"keyword": "MASP"
} Restringe os resultados normalizados a atrações.
{
"target": "tripadvisor.com.br",
"type": "search",
"keyword": "museus em São Paulo",
"placeType": "attraction"
} Mapa de paths de saída com tipo esperado para esta API.
{
"requestId": "string (uuid)",
"executionId": "string (uuid)",
"data.source": "string",
"data.type": "\"search\"",
"data.requestUrl": "string (URL)",
"data.extractedAt": "string (ISO datetime)",
"data.keyword": "string",
"data.placeType": "\"hotel\" | \"restaurant\" | \"attraction\" | null",
"data.totalResults": "number",
"data.items[].locationId": "number",
"data.items[].geoId": "number | null",
"data.items[].url": "string (URL)",
"data.items[].name": "string",
"data.items[].placeType": "\"hotel\" | \"restaurant\" | \"attraction\"",
"data.items[].address": "string | null",
"data.items[].latitude": "number | null",
"data.items[].longitude": "number | null",
"data.items[].rating.rating": "number | null",
"data.items[].rating.reviewCount": "number | null",
"data.items[].ranking": "string | null",
"data.items[].priceLevel": "string (optional)",
"data.items[].categories[]": "string",
"data.items[].thumbnail": "string (URL) | null",
"data.items[].openNow": "boolean | null",
"data.items[].openStatus": "string | null",
"data.items[].sponsored": "boolean"
} {
"requestId": "8dad333d-ae0c-47d7-bdd7-6de811a25d99",
"executionId": "01K1TRIPADVISORSEARCH000001",
"data": {
"source": "tripadvisor.com.br",
"type": "search",
"requestUrl": "https://www.tripadvisor.com.br/Search?q=MASP",
"extractedAt": "2026-07-27T18:00:00.000Z",
"keyword": "MASP",
"placeType": "attraction",
"totalResults": 1,
"items": [
{
"locationId": 311968,
"geoId": 303631,
"url": "https://www.tripadvisor.com.br/Attraction_Review-g303631-d311968-Reviews-Museu_de_Arte_de_Sao_Paulo_Assis_Chateaubriand_MASP-Sao_Paulo_State_of_Sao_Paulo.html",
"name": "Museu de Arte de São Paulo Assis Chateaubriand - MASP",
"placeType": "attraction",
"address": "Avenida Paulista, 1578, São Paulo, SP",
"latitude": -23.5614,
"longitude": -46.6559,
"rating": {
"rating": 4.5,
"reviewCount": 8072
},
"ranking": "#7 de 1149 coisas para fazer em São Paulo",
"categories": [
"Museus de arte"
],
"thumbnail": "https://dynamic-media-cdn.tripadvisor.com/media/photo-o/masp.jpg",
"openNow": true,
"openStatus": "Aberto agora",
"sponsored": false
}
]
}
} | Path | Tipo | Descrição | Exemplo |
|---|---|---|---|
| data.extractedAt | string (ISO datetime) | Data e hora UTC da extração. | 2026-07-27T18:00:00.000Z |
| data.items[].address | string | null | Endereço publicado no resultado. | Avenida Paulista, 1578, São Paulo, SP |
| data.items[].categories[] | string | Categorias públicas do local. | Museus de arte |
| data.items[].geoId | number | null | Identificador geográfico do destino no Tripadvisor. | 303631 |
| data.items[].latitude | number | null | Latitude publicada para o local. | -23.5614 |
| data.items[].locationId | number | Identificador público do estabelecimento no Tripadvisor. | 311968 |
| data.items[].longitude | number | null | Longitude publicada para o local. | -46.6559 |
| data.items[].name | string | Nome público do local. | Museu de Arte de São Paulo Assis Chateaubriand - MASP |
| data.items[].openNow | boolean | null | Indica se o local está aberto. | true |
| data.items[].openStatus | string | null | Texto público do status de funcionamento. | Aberto agora |
| data.items[].placeType | "hotel" | "restaurant" | "attraction" | Categoria normalizada do local. | attraction |
| data.items[].priceLevel | string (optional) | Faixa de preço textual quando publicada. | N/A |
| data.items[].ranking | string | null | Posição no ranking do destino. | #7 de 1149 coisas para fazer em São Paulo |
| data.items[].rating.rating | number | null | Nota agregada do local. | 4.5 |
| data.items[].rating.reviewCount | number | null | Quantidade pública de avaliações. | 8072 |
| data.items[].sponsored | boolean | Indica se o resultado foi identificado como patrocinado. | false |
| data.items[].thumbnail | string (URL) | null | Imagem principal exibida no resultado. | https://dynamic-media-cdn.tripadvisor.com/media/photo-o/masp.jpg |
| data.items[].url | string (URL) | URL pública do local. | https://www.tripadvisor.com.br/Attraction_Review-g303631-d311968-Reviews-Museu_de_Arte_de_Sao_Paulo_Assis_Chateaubriand_MASP-Sao_Paulo_State_of_Sao_Paulo.html |
| data.keyword | string | Palavra-chave recebida na requisição. | MASP |
| data.placeType | "hotel" | "restaurant" | "attraction" | null | Categoria aplicada à busca ou null quando todas foram aceitas. | attraction |
| data.requestUrl | string (URL) | URL pública equivalente à pesquisa solicitada. | https://www.tripadvisor.com.br/Search?q=MASP |
| data.source | string | Fonte pública consultada. | tripadvisor.com.br |
| data.totalResults | number | Quantidade de resultados retornados nesta busca. | 1 |
| data.type | "search" | Tipo de extração executado. | search |
| executionId | string (uuid) | Identificador idempotente da execução. | 01K1TRIPADVISORSEARCH000001 |
| requestId | string (uuid) | Identificador da requisição na GeckoAPI. | 8dad333d-ae0c-47d7-bdd7-6de811a25d99 |
Respostas com notFound: true não entram nesta tabela,
porque retornam sucesso HTTP 200.
| Status | errorCode | Quando acontece |
|---|---|---|
| 400 | INVALID_PAYLOAD | JSON inválido ou violação das regras de validação do payload. |
| 401 | UNAUTHORIZED | Header Authorization ausente ou token/chave inválida. |
| 402 | INSUFFICIENT_CREDITS | Saldo de créditos insuficiente para a API solicitada. |
| 403 | FORBIDDEN | Usuário sem acesso ou API temporariamente desabilitada. |
| 409 | EXECUTION_CONFLICT | executionId conflita com uma execução em estado incompatível. |
| 429 | RATE_LIMIT_EXCEEDED / TOO_MANY_INFLIGHT_REQUESTS | Limite de taxa ou limite de requisições em voo excedido. |
| 5xx | UPSTREAM_TIMEOUT / UPSTREAM_HTTP_ERROR / WORKER_INVOCATION_FAILED / WORKER_FUNCTION_ERROR / WORKER_INVALID_RESPONSE / INTERNAL_ERROR | Falha de servidor no worker, provider/proxy ou gateway. Nesses casos os créditos são estornados automaticamente. |