
{
    "name": "FireMP API Gateway",
    "version": "1.0.0",
    "description": "Sistema de backend compatível com Firebase rodando em PHP",
    "base_url": "https:\/\/wickstar.site",
    "authentication": {
        "jwt": "Bearer token no header Authorization",
        "api_key": "API Key no header Authorization como Bearer ou query param"
    },
    "endpoints": {
        "auth": {
            "POST \/api.php\/auth\/register": "Registrar novo usuário",
            "POST \/api.php\/auth\/login": "Fazer login",
            "GET \/api.php\/auth\/me": "Verificar token atual",
            "PUT \/api.php\/auth": "Atualizar perfil",
            "POST \/api.php\/auth\/generate-api-key": "Gerar API Key",
            "GET \/api.php\/auth\/api-keys": "Listar API Keys",
            "DELETE \/api.php\/auth?key_id={id}": "Revogar API Key"
        },
        "collections": {
            "GET \/api.php\/collections": "Listar coleções",
            "POST \/api.php\/collections": "Criar coleção",
            "GET \/api.php\/collections\/{name}": "Obter coleção específica",
            "PUT \/api.php\/collections\/{name}": "Atualizar coleção",
            "DELETE \/api.php\/collections\/{name}": "Deletar coleção",
            "GET \/api.php\/collections\/search?q={query}": "Buscar coleções"
        },
        "documents": {
            "GET \/api.php\/documents\/{collection}": "Listar documentos",
            "POST \/api.php\/documents\/{collection}": "Criar documento",
            "GET \/api.php\/documents\/{collection}\/{id}": "Obter documento",
            "PUT \/api.php\/documents\/{collection}\/{id}": "Atualizar documento",
            "DELETE \/api.php\/documents\/{collection}\/{id}": "Deletar documento"
        },
        "storage": {
            "POST \/api.php\/storage\/upload": "Upload de arquivo",
            "GET \/api.php\/storage": "Listar arquivos",
            "GET \/api.php\/storage\/{file_id}": "Obter arquivo específico",
            "DELETE \/api.php\/storage\/{file_id}": "Deletar arquivo",
            "GET \/api.php\/storage\/stats": "Estatísticas de storage"
        },
        "api-keys": {
            "POST \/api.php\/api-keys\/generate": "Gerar nova API Key",
            "GET \/api.php\/api-keys\/list": "Listar API Keys",
            "GET \/api.php\/api-keys\/{key_id}": "Obter API Key específica",
            "PUT \/api.php\/api-keys\/{key_id}": "Atualizar API Key",
            "DELETE \/api.php\/api-keys\/{key_id}\/revoke": "Revogar API Key",
            "POST \/api.php\/api-keys\/{key_id}\/rotate": "Rotacionar API Key",
            "GET \/api.php\/api-keys\/validate": "Validar API Key"
        }
    },
    "examples": {
        "register": {
            "method": "POST",
            "url": "\/api.php\/auth\/register",
            "body": {
                "email": "user@example.com",
                "password": "minhasenha123",
                "display_name": "João Silva"
            }
        },
        "create_collection": {
            "method": "POST",
            "url": "\/api.php\/collections",
            "headers": {
                "Authorization": "Bearer {jwt_token}"
            },
            "body": {
                "name": "produtos",
                "description": "Coleção de produtos da loja"
            }
        },
        "create_document": {
            "method": "POST",
            "url": "\/api.php\/documents\/produtos",
            "headers": {
                "Authorization": "Bearer {jwt_token}"
            },
            "body": {
                "data": {
                    "name": "Produto Exemplo",
                    "price": 99.99,
                    "category": "eletrônicos"
                }
            }
        }
    },
    "status_codes": {
        "200": "Sucesso",
        "201": "Criado com sucesso",
        "400": "Requisição inválida",
        "401": "Não autorizado",
        "404": "Não encontrado",
        "409": "Conflito (já existe)",
        "500": "Erro interno do servidor"
    }
}