POST
/extract
Extração Estruturada com IA

Extraia dados estruturados de páginas web usando IA. Defina a estrutura de saída desejada com JSON Schema, e nossa IA extrairá as informações de forma inteligente.

Casos de Uso:

  • Extrair informações de produtos de páginas de e-commerce
  • Analisar listagens de empregos em formato estruturado
  • Extrair informações de contato e detalhes comerciais
  • Converter artigos de notícias em dados estruturados
  • Coletar tabelas de preços e especificações

Como Funciona:

  1. Forneça uma URL e um JSON Schema definindo a estrutura desejada
  2. Nossa IA analisa o conteúdo da página
  3. Extrai dados correspondentes ao seu esquema
  4. Retorna saída JSON validada

Definição de Esquema:

Use JSON Schema para definir a estrutura de saída desejada:

  • Tipos de campo: string, number, boolean, array, object
  • Descrições de campo: Ajudam a IA a entender o que extrair
  • Campos obrigatórios: Marque campos críticos como obrigatórios
  • Estruturas aninhadas: Suporte para dados complexos e aninhados

Exemplo de Esquema:

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "description": "Nome ou título do produto"
    },
    "price": {
      "type": "number",
      "description": "Preço atual em USD"
    },
    "availability": {
      "type": "boolean",
      "description": "Se o produto está em estoque"
    },
    "features": {
      "type": "array",
      "items": {"type": "string"},
      "description": "Lista de principais características do produto"
    }
  },
  "required": ["title", "price"]
}

Autorização

YOUR_API_KEY
AutorizaçãoBearer <token>

Pegue sua API key no Thunderbit Dashboard. Formato do cabeçalho: Authorization: Bearer YOUR_API_KEY

Em: header

Corpo

application/json

TypeScript Definitions

Use the request body type in TypeScript.

url*stringobrigatório

A URL da página web da qual extrair dados

Exemplo:https://thunderbit.com/playground
schemaobject

JSON Schema. Opcional — quando omitido, o Thunderbit gera automaticamente um esquema a partir do conteúdo da página.

Exemplo:
{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "description": "Product name"
    },
    "price": {
      "type": "number",
      "description": "Product price"
    },
    "currency": {
      "type": "string",
      "description": "Currency unit"
    }
  },
  "required": [
    "name",
    "price"
  ]
}
timeoutnumberpredefinido:60000

Tempo limite da requisição em milissegundos, padrão 30000

Intervalo necessário:5000 <= x <= 120000
Exemplo:
60000
waitFornumberpredefinido:0

Tempo de espera (em milissegundos) após o carregamento da página para o conteúdo dinâmico ser renderizado (padrão: 0, máx: 10000)

Intervalo necessário:0 <= x <= 10000
Exemplo:
2000
renderModestringpredefinido:"none"

Modo de renderização JavaScript. none = sem renderização JS (padrão); basic = renderização padrão; full = espera estendida para conteúdo dinâmico

Valor em"none" | "basic" | "full"
formatsany[]

Formatos de saída (mesma estrutura do array formats do Distill).

Exemplo:
[
  "markdown",
  "links",
  "images"
]

Resposta

application/json

Success response

successboolean
Exemplo:
true
dataobject
Mostrar atributos filhos
urlstring
Exemplo:https://thunderbit.com/playground
dataobject[]

Extracted structured data matching your schema, returned as an array where each item is a key-value map

Exemplo:
[
  {
    "name": "iPhone 15 Pro",
    "price": 999,
    "currency": "USD",
    "availability": true,
    "rating": 4.7,
    "features": [
      "A17 Pro chip with 6-core GPU",
      "Pro camera system with 48MP main camera",
      "Titanium design with textured matte glass"
    ]
  }
]
linksobject[]

Links extraídos da página.

Mostrar atributos filhos
textstring

Visible link text.

Exemplo:Read more
hrefstring

Resolved absolute URL.

Exemplo:https://example.com/article
imagesobject[]

Imagens extraídas da página.

Mostrar atributos filhos
srcstring

Image source URL.

Exemplo:https://example.com/hero.png
altstring

Image alt text.

Exemplo:Hero banner
widthinteger

Image width in pixels.

heightinteger

Image height in pixels.

summarystring

Resumo da página (formato LLM).

answerstring

Resposta à pergunta fornecida no formato question.

highlightsstring[]

Trechos destacados.

metadataobject
Mostrar atributos filhos
titlestring

Page title extracted from tag or Open Graph

Exemplo:iPhone 15 Pro - Apple
descriptionstring

Meta description or excerpt

Exemplo:The ultimate iPhone with A17 Pro chip.
languagestring

Detected language code (ISO 639-1)

Exemplo:en
authorstring

Article author if available

Exemplo:
null
publishedDatestring

Publication date if available

Exemplo:
null
imagestring

Featured image URL from Open Graph or Twitter Card

Exemplo:https://example.com/product/iphone-15-pro.jpg
sourceURLstring

URL de origem

Exemplo:https://example.com/product/iphone-15-pro
statusCodeinteger

Código de status HTTP

Exemplo:
200
contentLengthinteger

Length of the markdown content in characters

Exemplo:
5000