Home › API Reference › API Reference API Reference Complete REST API documentation with endpoints, request/response examples, authentication, and rate limiting.
The SCRIPE API is a RESTful JSON API. All endpoints use JWT Bearer-token authentication (unless marked public), standard HTTP status codes, and a consistent envelope response format. Swagger UI is available at /swagger for interactive testing.
Base Information Property Value Base URL https://localhost:5035/api/v1 API Versioning URL path versioning (/api/v1/) Content Type application/json Authentication Bearer JWT token in Authorization header Rate Limiting 100 requests/minute per IP Swagger UI https://localhost:5035/swagger
Authentication Endpoints Method Endpoint Description Auth POST /auth/loginAuthenticate user with email/password 🔒 Required POST /auth/refreshRefresh access token using refresh token 🔒 Required POST /auth/logoutInvalidate refresh token and end session 🔒 Required POST /auth/verify-2faVerify two-factor authentication OTP 🔒 Required POST /auth/forgot-passwordSend password reset email 🔒 Required POST /auth/reset-passwordReset password with token 🔒 Required GET /auth/meGet current authenticated user 🔒 Required
Admin Management Endpoints Method Endpoint Description Auth GET /adminList admins with pagination/search 🔒 Required POST /adminCreate a new admin user 🔒 Required GET /admin/{id}Get admin by ID with roles 🔒 Required PUT /admin/{id}Update admin details 🔒 Required DELETE /admin/{id}Soft-delete admin 🔒 Required PUT /admin/{id}/blockBlock/unblock admin account 🔒 Required POST /admin/{id}/impersonateImpersonate admin user 🔒 Required
User Management Endpoints Method Endpoint Description Auth GET /usersList users (tenant-scoped) 🔒 Required POST /usersCreate user 🔒 Required GET /users/{id}Get user details 🔒 Required PUT /users/{id}Update user 🔒 Required DELETE /users/{id}Soft-delete user 🔒 Required PUT /users/{id}/blockBlock/unblock user 🔒 Required PUT /users/{id}/avatarUpload user avatar 🔒 Required
Role & Permission Endpoints Method Endpoint Description Auth GET /rolesList roles (tenant-scoped) 🔒 Required POST /rolesCreate custom role 🔒 Required GET /roles/{id}Get role with permissions 🔒 Required PUT /roles/{id}Update role 🔒 Required PUT /roles/{id}/permissionsAssign permissions to role 🔒 Required DELETE /roles/{id}Delete role 🔒 Required
Tenant Management Endpoints Method Endpoint Description Auth GET /tenantsList tenants 🔒 Required POST /tenantsCreate tenant 🔒 Required GET /tenants/{id}Get tenant details + settings 🔒 Required PUT /tenants/{id}Update tenant 🔒 Required PUT /tenants/{id}/logoUpload tenant logo 🔒 Required PUT /tenants/{id}/settingsUpdate tenant settings 🔒 Required
Other Endpoints Method Endpoint Description Auth GET /dashboard/statsDashboard KPI statistics 🔒 Required GET /dashboard/chartsChart data (users over time) 🔒 Required GET /auditSearch audit logs 🔒 Required GET /audit/exportExport audit logs (CSV/PDF) 🔒 Required GET /menusGet menu tree 🔒 Required POST /menusCreate menu item 🔒 Required PUT /menus/reorderReorder menu items 🔒 Required GET /notificationsList notifications 🔒 Required PUT /notifications/{id}/readMark notification read 🔒 Required GET /recycle-binList soft-deleted items 🔒 Required PUT /recycle-bin/{id}/restoreRestore deleted item 🔒 Required GET /healthHealth check (liveness) 🔒 Required
{
"isSuccess" : true ,
"data" : {
"id" : "3fa85f64-5717-4562-b3fc-2c963f66afa6" ,
"name" : "John Doe" ,
"email" : "john@example.com"
} ,
"message" : "Operation completed successfully" ,
"statusCode" : 200
}