Gmails do Marcone — API Docs

← Voltar ao painel
⚠️ Esta API é um serviço independente. A infraestrutura upstream não é exposta aos clientes finais. Todas as chamadas são proxyadas e autenticadas via API key própria.

Base URL

https://inboxmarket.shop/gmails-api

Autenticação

Todas as requisições à API devem incluir o header X-API-Key com uma chave válida gerada no painel do site.

X-API-Key: gdm_a1b2c3d4_e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9t0

Sem este header, a resposta será 401 Unauthorized.

Endpoints

Comprar Gmail(s)

POST /store/purchase

Compra uma ou mais contas Gmail. O saldo é deduzido automaticamente da conta associada à API key.

Headers

HeaderObrigatórioDescrição
X-API-KeySimSua API key
Content-TypeSimapplication/json

Body

{
  "quantity": 1
}
CampoTipoObrigatórioDescrição
quantityintegerNão (padrão: 1)Quantidade de contas (1–5)

Resposta de sucesso 200

{
  "success": true,
  "orderId": 42,
  "email": "usuario@gmail.com",
  "totalPaid": 2.50,
  "message": "Gmail comprado com sucesso! Use o botão Verificar código para obter o OTP."
}

Erros possíveis

StatusCódigoDescrição
400invalid_quantityQuantidade fora do intervalo 1–5
401unauthorizedAPI key ausente, inválida ou desativada
402insufficient_balanceSaldo insuficiente para a compra
429rate_limitedLimite de 30 req/min excedido
502upstream_errorFalha temporária no processamento
503no_providerNenhum provedor configurado

Exemplo de erro

{
  "error": "Saldo insuficiente",
  "required": 2.50,
  "current": 1.00
}

Verificar Código OTP

POST /store/check-code

Busca o código OTP de verificação de um pedido. Faz polling por até 2 minutos aguardando o código ficar disponível.

Headers

HeaderObrigatórioDescrição
X-API-KeySimSua API key
Content-TypeSimapplication/json

Body

{
  "orderId": 42
}
CampoTipoObrigatórioDescrição
orderIdintegerSimID do pedido retornado na compra

Respostas possíveis 200

Código recebido:

{
  "status": "ready",
  "code": "123456",
  "message": "Código OTP recebido!"
}

Email inativo:

{
  "status": "exhausted",
  "code": null,
  "message": "Este Gmail não está mais ativo e não pode receber códigos."
}

Timeout (código ainda não disponível):

{
  "status": "timeout",
  "code": null,
  "message": "Tempo limite esgotado (2 minutos). O código pode chegar depois — tente novamente."
}

Consultar Saldo

GET /store/balance

Retorna o saldo atual da conta associada à API key.

Resposta 200

{
  "balance": 47.50
}

Listar Pedidos

GET /store/orders

Retorna os últimos 50 pedidos da conta associada à API key.

Resposta 200

[
  {
    "id": 42,
    "product_type": "gmail",
    "quantity": 1,
    "unit_price": 2.50,
    "total_price": 2.50,
    "status": "completed",
    "instacaster_order_id": "abc123...",
    "delivery_data": "{\"email\":\"usuario@gmail.com\",\"priorityMode\":0}",
    "created_at": "2026-09-10 18:30:00",
    "completed_at": "2026-09-10 18:30:05"
  }
]

Histórico de Transações

GET /store/transactions

Retorna as últimas 50 transações (compras e recargas) da conta.

Resposta 200

[
  {
    "id": 15,
    "user_id": 3,
    "type": "purchase",
    "amount": -2.50,
    "description": "Compra de 1 Gmail(s)",
    "reference_id": "order_42",
    "created_at": "2026-09-10 18:30:05"
  }
]

Último Gmail

GET /store/last-gmail

Retorna o último email comprado e o último código OTP recebido (se houver).

Resposta 200

{
  "hasGmail": true,
  "orderId": 42,
  "email": "usuario@gmail.com",
  "lastCode": "123456",
  "lastCodeAt": "2026-09-10T18:35:00.000Z",
  "status": "completed"
}

Se nenhum Gmail foi comprado:

{
  "hasGmail": false
}

Rate Limiting

EndpointLimiteJanela
/store/*30 requisições1 minuto
Demais rotas100 requisições15 minutos

Ao exceder o limite, a API retorna 429 Too Many Requests.

Preços

ProdutoPreço unitário
GmailR$ 2,50

Os preços podem ser alterados sem aviso prévio. O valor cobrado é sempre o vigente no momento da requisição.

Integração rápida (Node.js)

const axios = require('axios');

const API_KEY = 'gdm_sua_chave_aqui';
const BASE_URL = 'https://inboxmarket.shop/gmails-api';

async function buyGmail(quantity = 1) {
  const res = await axios.post(
    BASE_URL + '/store/purchase',
    { quantity },
    { headers: { 'X-API-Key': API_KEY } }
  );
  return res.data;
}

async function checkCode(orderId) {
  const res = await axios.post(
    BASE_URL + '/store/check-code',
    { orderId },
    { headers: { 'X-API-Key': API_KEY }, timeout: 130000 }
  );
  return res.data;
}

async function getBalance() {
  const res = await axios.get(
    BASE_URL + '/store/balance',
    { headers: { 'X-API-Key': API_KEY } }
  );
  return res.data.balance;
}

// Exemplo de uso
(async () => {
  const balance = await getBalance();
  console.log('Saldo: R$ ' + balance.toFixed(2));

  const purchase = await buyGmail(1);
  console.log('Email:', purchase.email);
  console.log('Order ID:', purchase.orderId);

  // Aguardar e buscar código OTP
  const codeResult = await checkCode(purchase.orderId);
  if (codeResult.status === 'ready') {
    console.log('Código OTP:', codeResult.code);
  } else {
    console.log('Status:', codeResult.message);
  }
})();

Integração rápida (Python)

import requests

API_KEY = "gdm_sua_chave_aqui"
BASE_URL = "https://inboxmarket.shop/gmails-api"
HEADERS = {"X-API-Key": API_KEY}

def buy_gmail(quantity=1):
    resp = requests.post(
        f"{BASE_URL}/store/purchase",
        json={"quantity": quantity},
        headers=HEADERS
    )
    resp.raise_for_status()
    return resp.json()

def check_code(order_id):
    resp = requests.post(
        f"{BASE_URL}/store/check-code",
        json={"orderId": order_id},
        headers=HEADERS,
        timeout=130
    )
    resp.raise_for_status()
    return resp.json()

def get_balance():
    resp = requests.get(f"{BASE_URL}/store/balance", headers=HEADERS)
    resp.raise_for_status()
    return resp.json()["balance"]

# Exemplo de uso
balance = get_balance()
print(f"Saldo: R$ {balance:.2f}")

purchase = buy_gmail(1)
print(f"Email: {purchase['email']}")
print(f"Order ID: {purchase['orderId']}")

code_result = check_code(purchase["orderId"])
if code_result["status"] == "ready":
    print(f"Código OTP: {code_result['code']}")
else:
    print(f"Status: {code_result['message']}")
💡 Para gerar sua API key, faça login no painel e acesse a seção "Minhas API Keys". A chave é mostrada apenas uma vez — guarde-a com segurança.