REST over HTTPS. JSON bodies. Bearer-token authentication via social-provider sessions. Base URL https://api.rolenorth.app.
/v1/auth/sessionExchange a social-provider token for a session.
Request body
{
"provider": "google",
"id_token": "eyJhbGci..."
}Response
{
"user": { "id": "u_1001", "email": "..." },
"session": { "access_token": "...", "expires_in": 3600 }
}All errors return a structured JSON envelope.
{
"error": {
"code": "report_not_ready",
"message": "Report is still processing.",
"request_id": "req_x9k...",
"doc_url": "https://docs.rolenorth.app/errors/report_not_ready"
}
}