Skip to main content

Authentication

ABS Core uses Personal Access Tokens (PATs) for API authentication. Tokens are scoped by role.

Getting a Token

ABS Core Enterprise uses a “White Glove” onboarding process. Your API tokens are issued securely by your account manager and sent via encrypted email.
If you need to rotate a token or request a new one for a specific environment (e.g., Staging vs Production), please submit a request to [email protected].
Self-service token generation via the Dashboard is disabled for Enterprise clients to ensure strict access control.

Using Tokens

Include your PAT in every API request:
curl -H "Authorization: Bearer abs_pat_your_token" \
  https://api.abscore.app/v1/events

Token Scopes

RoleScopePermissions
adminruntime:read runtime:write admin:manageFull access + user management
operatorruntime:read runtime:writeSend events, use proxy
viewerruntime:readRead-only dashboard access

Endpoints

MethodPathDescription
GET/auth/githubStart GitHub OAuth flow
GET/auth/github/callbackOAuth callback (internal)
POST/loginEmail/password login
POST/tokenGenerate PAT
GET/verifyVerify token validity
GET/meGet current user profile
POST/logoutEnd session
GET/healthService health check

Verify Token

curl https://auth-worker.dev-oconnector.workers.dev/verify \
  -H "Authorization: Bearer abs_pat_your_token"
Response:
{
  "active": true,
  "type": "pat",
  "userId": "gh_12345",
  "email": "[email protected]",
  "role": "operator",
  "scope": "runtime:read runtime:write"
}

Current User

curl https://auth-worker.dev-oconnector.workers.dev/me \
  -H "Authorization: Bearer SESSION_TOKEN"
Response:
{
  "id": "gh_12345",
  "email": "[email protected]",
  "name": "Rodrigo Gomes",
  "avatar": "https://avatars.githubusercontent.com/u/12345",
  "role": "admin",
  "provider": "github"
}