Синапсия Документация
К быстрому старту

Node.js

Обмен кода на сервере (секретный API-ключ не в браузере).

Клиент редиректит на ваш фронт с sa_code; фронт POSTит на ваш бэкенд; бэкенд вызывает Synapsea exchange-code.

// Express: обмен sa_code на сессию на сервере
import express from 'express';

const app = express();
app.use(express.json());

app.post('/auth/exchange', async (req, res) => {
  const { code } = req.body;
  const r = await fetch('https://auth.synapsea.agency/api/v1/auth/exchange-code', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'X-Synapsea-Key': process.env.SYNAPSEA_KEY!,
    },
    body: JSON.stringify({ code }),
  });
  if (!r.ok) return res.status(401).json({ error: 'bad_code' });
  const { token, user } = await r.json();
  // установите httpOnly cookie с token или свою сессию
  res.json({ ok: true, user });
});