## Autenticação Aprenda como obter e usar chaves de API ## Obter Chave de API Antes de usar a API, você precisa obter uma chave de API. Você pode criar sua chave de API na página de Perfil. ### Usando a Chave de API Inclua sua chave de API nos cabeçalhos da requisição para todas as chamadas de API: [Code (bash)] X-API-Key: Bearer SUA_CHAVE_DE_API [/Code] ### Notas Importantes - Mantenha sua chave de API segura e não a exponha em locais públicos - A chave de API tem as mesmas permissões que sua conta, use-a com cuidado - Se sua chave de API for comprometida, gere uma nova imediatamente na sua página de Perfil --- ## API de E-mail Criar e gerenciar e-mails ## Obter Domínios Disponíveis Obter todos os domínios de e-mail disponíveis no sistema. ### Requisição [Code (bash)] GET /api/email/domains [/Code] ### Exemplo de Requisição [Code (bash)] curl https://chat-tempmail.com/api/email/domains \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- domains | array | Lista de domínios de e-mail disponíveis ### Exemplo de Resposta [Code (json)] { "domains": [ "chat-tempmail.com", "example.com", "other-domain.com" ] } [/Code] ## Criar E-mail Criar um novo endereço de e-mail temporário. ### Requisição [Code (bash)] POST /api/emails/generate [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- name | string | Sim | Prefixo do e-mail expiryTime | number | Sim | Tempo de expiração (milissegundos)
Valores disponíveis:
- 3600000 (1 hora)
- 86400000 (1 dia)
- 259200000 (3 dias)
- 0 (permanente) domain | string | Sim | Domínio do e-mail ### Exemplo de Requisição [Code (bash)] curl -X POST https://chat-tempmail.com/api/emails/generate \ -H "X-API-Key: SUA_CHAVE_DE_API" \ -H "Content-Type: application/json" \ -d '{ "name": "test", "expiryTime": 3600000, "domain": "chat-tempmail.com" }' [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- id | string | Identificador único do e-mail (formato UUID) email | string | Endereço de e-mail criado (endereço de e-mail completo) ### Exemplo de Resposta [Code (json)] { "id": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "email": "test@chat-tempmail.com" } [/Code] ## Obter Lista de E-mails Obter todos os endereços de e-mail da sua conta. ### Requisição [Code (bash)] GET /api/emails [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- cursor | string | Não | Cursor de paginação, obtenha nextCursor da resposta anterior ### Exemplo de Requisição [Code (bash)] curl https://chat-tempmail.com/api/emails \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- emails | array | Lista de e-mails (máximo 20 itens por requisição) nextCursor | string | Cursor da próxima página para obter mais dados total | number | Número total de e-mails ### Objetos de E-mail no Array emails Parâmetro | Tipo | Descrição ----------- | ------ | ----------- id | string | Identificador único do e-mail (formato UUID) address | string | Endereço de e-mail (endereço de e-mail completo) userId | string | ID do usuário proprietário do e-mail (formato UUID) createdAt | string | Tempo de criação do e-mail (formato ISO 8601) expiresAt | string | Tempo de expiração do e-mail (formato ISO 8601) ### Exemplo de Resposta [Code (json)] { "emails": [ { "id": "e4ff5c14-8a72-48c5-bd13-b5347fb944da", "address": "6Tg3VT@chat-tempmail.com", "userId": "bd08008d-e944-44b2-a0d0-67f2b528ee6d", "createdAt": "2025-04-21T08:30:45.084Z", "expiresAt": "2025-04-22T08:30:45.084Z" } ], "nextCursor": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "total": 20 } [/Code] ## Excluir E-mail Excluir o endereço de e-mail especificado. ### Requisição [Code (bash)] DELETE /api/emails/{emailId} [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- emailId | string | Sim | ID do e-mail (parâmetro de caminho) ### Exemplo de Requisição [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0" \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- success | boolean | Se a exclusão foi bem-sucedida ### Exemplo de Resposta [Code (json)] { "success": true } [/Code] --- ## API de Mensagens Gerenciar mensagens ## Obter Lista de Mensagens Obter todas as mensagens no endereço de e-mail especificado. ### Requisição [Code (bash)] GET /api/emails/{emailId} [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- emailId | string | Sim | ID do e-mail (parâmetro de caminho) cursor | string | Não | Cursor de paginação (parâmetro de consulta), obtenha nextCursor da resposta anterior ### Exemplo de Requisição [Code (bash)] curl "https://chat-tempmail.com/api/emails/c2c4f894-c672-4d5b-a918-abca95aff1f7" \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- messages | array | Lista de mensagens (máximo 20 itens por requisição) nextCursor | string | Cursor da próxima página para obter mais dados total | number | Número total de mensagens ### Objetos de Mensagem no Array messages Parâmetro | Tipo | Descrição ----------- | ------ | ----------- id | string | Identificador único da mensagem (formato UUID) from_address | string | Endereço do remetente subject | string | Assunto da mensagem received_at | number | Tempo de recebimento (timestamp Unix em milissegundos) ### Exemplo de Resposta [Code (json)] { "messages": [ { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Test Message 1 - xJOK2h", "received_at": 1745224245084 } ], "nextCursor": "eyJ0aW1lc3RhbXAiOjE3NDUxNTU4NDUwODQsImlkIjoiNjNmNzFlODYtOGE1NC00ZDQ0LTk5ZWYtN2QzNTBhMTQ4M2JiIn0=", "total": 50 } [/Code] ## Obter Detalhes da Mensagem Obter conteúdo detalhado da mensagem especificada. ### Requisição [Code (bash)] GET /api/emails/{emailId}/{messageId} [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- emailId | string | Sim | ID do e-mail (parâmetro de caminho) messageId | string | Sim | ID da mensagem (parâmetro de caminho) ### Exemplo de Requisição [Code (bash)] curl "https://chat-tempmail.com/api/emails/99fadf12-6826-490a-9c6c-b0b528d4a8e0/fd13a8df-1465-4fbc-a612-ca7311c31ff2" \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- message | object | Detalhes da mensagem ### Campos do Objeto message Parâmetro | Tipo | Descrição ----------- | ------ | ----------- id | string | Identificador único da mensagem (formato UUID) from_address | string | Endereço do remetente subject | string | Assunto da mensagem content | string | Conteúdo de texto simples da mensagem html | string | Conteúdo HTML da mensagem (pode estar vazio) received_at | number | Tempo de recebimento (timestamp Unix em milissegundos) ### Exemplo de Resposta [Code (json)] { "message": { "id": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "from_address": "sender1@example.com", "subject": "Test Message 1 - xJOK2h", "content": "Test Message 1\n\nThis is test message 1 content.\n\nBest regards,\nSender 1", "html": "
\n

Test Message 1

\n
", "received_at": 1745224245084 } } [/Code] ## Excluir Mensagem Excluir a mensagem especificada. ### Requisição [Code (bash)] DELETE /api/emails/{emailId}/{messageId} [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- emailId | string | Sim | ID do e-mail (parâmetro de caminho) messageId | string | Sim | ID da mensagem (parâmetro de caminho) ### Exemplo de Requisição [Code (bash)] curl -X DELETE "https://chat-tempmail.com/api/emails/76d91ae5-822a-4fdd-8701-9de038ec86d7/20e77445-b0c3-4e8b-aa29-762ea423ac15" \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- success | boolean | Se a exclusão foi bem-sucedida ### Exemplo de Resposta [Code (json)] { "success": true } [/Code] --- ## Push de Webhook Configure webhook para receber notificações push de mensagens ## Obter Configuração de Webhook Obter informações da configuração atual do webhook. ### Requisição [Code (bash)] GET /api/webhook [/Code] ### Exemplo de Requisição [Code (bash)] curl https://chat-tempmail.com/api/webhook \ -H "X-API-Key: SUA_CHAVE_DE_API" [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- url | string | Endereço URL do webhook (pode ser string vazia) enabled | boolean | Se o webhook está habilitado ### Exemplo de Resposta [Code (json)] { "url": "https://seu-servidor.com/webhook", "enabled": true } [/Code] ## Configurar Webhook Definir ou atualizar a configuração do webhook. ### Requisição [Code (bash)] POST /api/webhook [/Code] ### Parâmetros de Requisição Parâmetro | Tipo | Obrigatório | Descrição ----------- | ------ | ------------- | ----------- url | string | Sim | Endereço URL do webhook (deve ser uma URL HTTP/HTTPS válida) enabled | boolean | Sim | Se deve habilitar o webhook ### Exemplo de Requisição [Code (bash)] curl -X POST https://chat-tempmail.com/api/webhook \ -H "X-API-Key: SUA_CHAVE_DE_API" \ -H "Content-Type: application/json" \ -d '{ "url": "https://seu-servidor.com/webhook", "enabled": true }' [/Code] ### Parâmetros de Resposta Parâmetro | Tipo | Descrição ----------- | ------ | ----------- success | boolean | Se a configuração foi bem-sucedida ### Exemplo de Resposta [Code (json)] { "success": true } [/Code] ## Eventos de Webhook Quando uma nova mensagem chegar, o sistema enviará uma requisição POST para sua URL configurada. ### Formato dos Dados Recebidos Cabeçalhos da Requisição: - Content-Type: application/json - X-Webhook-Event: new_message ### Dados do Push de Webhook Parâmetro | Tipo | Descrição ----------- | ------ | ----------- emailId | string | ID do e-mail que recebeu a mensagem (formato UUID) messageId | string | ID da nova mensagem (formato UUID) fromAddress | string | Endereço do remetente subject | string | Assunto da mensagem content | string | Conteúdo de texto simples da mensagem html | string | Conteúdo HTML da mensagem (pode estar vazio) receivedAt | string | Tempo de recebimento da mensagem (formato ISO 8601) toAddress | string | Endereço de e-mail que recebeu a mensagem ### Exemplo de Dados do Push [Code (json)] { "emailId": "c2c4f894-c672-4d5b-a918-abca95aff1f7", "messageId": "fd13a8df-1465-4fbc-a612-ca7311c31ff2", "fromAddress": "sender@example.com", "subject": "Test Message", "content": "Conteúdo de texto simples da mensagem", "html": "
Conteúdo HTML da mensagem
", "receivedAt": "2025-01-21T08:30:45.084Z", "toAddress": "test@chat-tempmail.com" } [/Code] ### Requisitos de Resposta Seu servidor deve retornar um código de status 2xx para indicar recebimento bem-sucedido. Se um código de status não-2xx for retornado, o sistema pode tentar reenviar. Resposta Recomendada: [Code (json)] HTTP/1.1 200 OK Content-Type: application/json { "received": true } [/Code] ### Notas Importantes - Certifique-se de que sua URL de webhook esteja acessível - É recomendado verificar a integridade dos dados do push no lado do seu servidor - O sistema enviará pushes de webhook imediatamente quando as mensagens chegarem - Se os pushes falharem, o sistema pode tentar novamente, então certifique-se de que sua interface seja idempotente ---