Tolky OCR Service

O Tolky OCR é um serviço avançado de processamento de mídias que utiliza OCR (Reconhecimento Óptico de Caracteres) para extrair informações de imagens, vídeos, áudios e páginas web. O serviço é capaz de processar múltiplos tipos de mídia simultaneamente e extrair informações baseadas em um schema específico.

Funcionalidades

  • Processamento de múltiplos tipos de mídia (imagens, vídeos, áudios)
  • Extração de texto de imagens usando OCR
  • Processamento de URLs de páginas web
  • Suporte a schemas personalizados para extração de dados
  • Processamento paralelo de URLs e arquivos de mídia
  • Tratamento robusto de erros

Como Usar

Endpoint

POST /api/externalAPIs/public/tolkyOCR

Base URL

Utilize {BASE_URL} para apontar ao ambiente adequado (ex.: produção em https://api.tolky.to).

Autenticação

Autenticação

Envie o token de acesso no cabeçalho da requisição:

Authorization: Bearer {SEU_TOKEN}

Nunca compartilhe seu token publicamente. Prefira armazená-lo em variáveis de ambiente no servidor.

Parâmetros da Requisição

ParâmetroTipoDescriçãoObrigatório
schemaObjectSchema para extração de dadosNão
filesString/ArrayCaminhos ou URLs das mídiasSim
generalInstructionsStringInstruções gerais para processamentoNão

Exemplo de Schema

{
  "name": "extract_media_description",
  "description": "Extrai uma descrição detalhada do conteúdo das mídias",
  "parameters": {
    "type": "object",
    "properties": {
      "description": {
        "type": "string",
        "description": "Descrição detalhada do conteúdo das mídias"
      }
    },
    "required": ["description"]
  }
}

Exemplo de Uso com cURL

curl -X POST '{BASE_URL}/api/externalAPIs/public/tolkyOCR' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer {SEU_TOKEN}' \
-d '{
  "schema": {
    "name": "extract_media_description",
    "description": "Extrai uma descrição detalhada do conteúdo das mídias",
    "parameters": {
      "type": "object",
      "properties": {
        "description": {
          "type": "string",
          "description": "Descrição detalhada do conteúdo das mídias"
        }
      },
      "required": ["description"]
    }
  },
  "files": [
    "https://exemplo.com/imagem.jpg",
    "https://exemplo.com/documento.pdf"
  ],
  "generalInstructions": "Extraia todo o texto visível e identifique entidades-chave"
}'

Resposta

A resposta será um objeto JSON contendo os dados extraídos com base no schema fornecido:

{
  "data": {
    "description": "Descrição extraída do conteúdo das mídias..."
  },
  "error": null,
  "time": 1250
}

Resultados Esperados

  • As mídias listadas em files serão processadas e os dados extraídos conforme o schema fornecido.
  • Na ausência de schema, é utilizado um padrão apropriado ao tipo de mídia.
  • O campo time indica o tempo de processamento em milissegundos e error é null quando não há falhas.

Boas Práticas e Segurança

  • Utilize HTTPS e armazene o token com segurança (variáveis de ambiente no backend).
  • Evite incluir dados sensíveis em generalInstructions ou dentro do schema.
  • Envie apenas mídias necessárias ao objetivo do processamento.
  • Não exponha tokens em aplicações cliente; faça a chamada a partir do seu servidor quando possível.

Tratamento de Erros

O serviço retorna códigos de status HTTP apropriados:

  • 200: Processamento bem-sucedido
  • 400: Requisição inválida
  • 401: Não autorizado
  • 500: Erro interno do servidor

Observações

  • O serviço processa URLs e arquivos de mídia em paralelo para melhor performance
  • Se nenhum schema for fornecido, um schema padrão será utilizado
  • O serviço suporta tanto URLs de arquivos quanto URLs de páginas web
  • As descrições são extraídas em português por padrão