iGPT
API de Inteligência de Contexto que retorna respostas estruturadas e citadas a partir de threads de e-mail, anexos e documentos do Google Drive em uma única chamada de API.
Documentação
Contexto de e-mail que seu agente pode realmente usar
Uma única chamada de API. Decisões, tarefas, responsáveis e próximos passos de conversas de e-mail reais.
---A maioria dos agentes quebra no momento em que você lhes dá e-mails.
As conversas são bagunçadas. As respostas duplicam tudo. As decisões estão enterradas em 20 mensagens. Os anexos são mencionados, mas ficam em outro lugar.
Então, em vez de "o que aconteceu neste negócio?", seu agente recebe texto bruto e respostas erradas com confiança.
O iGPT resolve essa camada. Você conecta uma caixa de entrada, faz uma pergunta e recebe respostas estruturadas que seu agente pode realmente usar. Sem parsing de MIME. Sem reconstrução de conversas. Sem lidar com anexos. Apenas um prompt, um esquema e uma resposta que seu código pode usar.
Provedores suportados: Gmail, Outlook e qualquer provedor IMAP. Suporte a múltiplos provedores por usuário.
O que você recebe de volta
Não resumos. Respostas estruturadas sobre as quais seu agente pode construir.
Pergunte: "O que está pendente com a Northstar Logistics?"
{
"open_items": [
{
"type": "commitment",
"description": "Send completed security questionnaire",
"owner": "us",
"promised_on": "2026-03-05",
"status": "overdue",
"source": "email from David Park, March 5"
},
{
"type": "unanswered_question",
"description": "Data residency requirements for EU operations",
"raised_by": "Northstar legal team",
"date": "2026-02-28",
"status": "open"
}
],
"attachments_referenced": ["Security_Audit_v2.pdf", "Q3_Rollout_Draft.xlsx"],
"relationship_summary": "Active prospect for 4 months. Two open commitments from our side are overdue."
}
Cada campo é validado por esquema. Cada descoberta cita a conversa de e-mail de origem. Tempo de resposta típico: ~3 segundos, mesmo em caixas de entrada grandes.
Início rápido
from igptai import IGPT
igpt = IGPT(api_key="IGPT_API_KEY", user="user_123")
res = igpt.recall.ask(
input="Open action items from this week with owners and due dates",
output_format={
"strict": True,
"schema": {
"type": "object",
"properties": {
"action_items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"title": {"type": "string"},
"owner": {"type": "string"},
"due_date": {"type": "string"}
}
}
}
}
}
}
)
pip install igptai # Python
npm install igptai # Node.js
Obtenha sua chave de API em igpt.ai/hub/apikeys ou experimente consultas no Playground primeiro.
O que você pode construir
- Detectar negócios esfriando antes que seu CRM mostre qualquer coisa
- Manter seu CRM sincronizado com o que realmente aconteceu no e-mail, não com o que alguém lembrou de registrar
- Extrair tarefas com responsáveis corretos e datas de vencimento para Jira, Asana ou Notion
- Criar agentes de preparação de reuniões que puxam histórico completo de relacionamento, compromissos em aberto e preocupações conhecidas
- Pontuar a saúde do cliente com base no tempo de resposta por e-mail, mudanças de tom e sinais de engajamento
- Superficiar conversas aguardando resposta onde alguém fez uma pergunta e nunca recebeu resposta
Por que e-mail é difícil para agentes
As conversas de e-mail contêm 4-5x conteúdo duplicado de citações aninhadas. Os participantes estão enterrados em cabeçalhos, sem como distinguir quem se comprometeu com algo versus quem foi apenas copiado. Os anexos são mencionados na conversa ("veja os números na linha 17") mas ficam em uma camada de dados completamente separada que a maioria das integrações ignora totalmente.
A maioria das equipes acaba construindo seu próprio parser de MIME, lógica de reconstrução de conversas, pipeline de deduplicação e modelo de permissões antes de escrever uma única linha de lógica de agente. O iGPT lida com tudo isso em uma única chamada de API.
Como funciona
Conecte uma conta de e-mail via OAuth → Pergunte com linguagem natural ou um esquema JSON → Receba resultados estruturados e citados.
O que o iGPT lida nos bastidores: parsing de conversas, deduplicação de texto citado, detecção de papéis dos participantes, extração de anexos, citações de origem, isolamento de dados por usuário.
Conecte uma conta de e-mail
from igptai import IGPT
igpt = IGPT(api_key="IGPT_API_KEY")
res = igpt.connectors.authorize(user="user_123", service="spike", scope="messages")
print("Open this URL to authorize:", res.get("url"))
Pergunte com saída estruturada
igpt = IGPT(api_key="IGPT_API_KEY", user="user_123")
res = igpt.recall.ask(
input="Extract key risks, decisions, and next steps from this week.",
output_format={
"strict": True,
"schema": {
"type": "object",
"properties": {
"risks": {"type": "array", "items": {"type": "string"}},
"decisions": {"type": "array", "items": {"type": "string"}},
"next_steps": {
"type": "array",
"items": {
"type": "object",
"properties": {
"action": {"type": "string"},
"owner": {"type": "string"},
"due_date": {"type": "string"}
}
}
}
}
}
}
)
Pesquise em e-mails
res = igpt.recall.search(
query="Q1 budget discussion",
date_from="2026-01-01",
date_to="2026-03-31"
)
🔒 Segurança
O iGPT opera com dados de comunicação sensíveis. A segurança é imposta pela arquitetura, não por suposições.
- Isolamento por usuário — As fontes de dados, índices e contexto de cada usuário são fisicamente separados, não filtrados.
- Criptografia — Criptografia AES em repouso e em trânsito. Apenas HTTPS.
- Sem retenção de prompts — Prompts e saídas geradas são descartados após a execução.
- Execução controlada — Pipelines determinísticos previnem injeção de prompts.
- Auditabilidade — Cada requisição produz metadados para rastreamento sem registrar conteúdo bruto.
Para o modelo de segurança completo, veja docs.igpt.ai/docs/security.
Mais exemplos
Node.js
import IGPT from "igptai";
const igpt = new IGPT({ apiKey: process.env.IGPT_API_KEY, user: "user_123" });
const res = await igpt.recall.ask({
input: "List open action items from this week. Include owner and due date."
});
console.log(res);
Streaming
stream = igpt.recall.ask(input="Stream the answer in chunks.", stream=True)
for chunk in stream:
print(chunk)
Tratamento de erros
O SDK nunca lança exceções. Erros são retornados como objetos:
res = igpt.recall.ask(input="...")
if res is not None and res.get("error"):
print("Error:", res["error"])
else:
print(res)
🔗 Relacionados
- iGPT Python SDK —
pip install igptai - iGPT Node.js SDK —
npm install igptai - iGPT Sales Skills — 7 fluxos de vendas prontos
- Documentação da API — Referência completa de endpoints
- Playground — Experimente consultas interativamente antes de escrever código
- Obter chave de API — Crie sua chave e comece a construir
Contribuindo
Perguntas, bugs ou solicitações de recursos? Abra uma issue ou entre em contato em hello@igpt.ai.
Licença
MIT