Authentication
The Umbra ERP API uses Bearer JWT tokens for authentication. Obtain tokens by logging in with your credentials, then include the access token in every API request.
JWT authentication
Authenticate a user and receive access and refresh tokens.
Required headers
- Name
Content-Type- Type
- string
- Description
Must be
application/json.
Required attributes
- Name
email- Type
- string
- Description
User's email address (or use
usernameinstead).
- Name
password- Type
- string
- Description
User's password.
Request
curl -X POST https://api.umbraerp.com/v1/auth/login \
-H "Content-Type: application/json" \
-d '{
"email": "user@example.com",
"password": "your_password"
}'
Response
{
"result": "success",
"message": "You have successfully logged in!",
"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Try it: sign in to the staging sandbox
Run this against the Umbra ERP staging sandbox with a staging account. On success, the returned accessToken is captured in your browser session and attached automatically to the read-only "Try it" panels elsewhere in these docs. Never enter production or personal credentials.
Sign in and capture an access token
Runs against the Umbra ERP STAGING sandbox (staging.umbraerp.com). Sign in with a staging account; never use real credentials.
Token refresh
Use your refresh token to obtain a new access token when it expires.
Required attributes
- Name
refreshToken- Type
- string
- Description
The refresh token received during login.
Request
curl -X POST https://api.umbraerp.com/v1/auth/refresh \
-H "Content-Type: application/json" \
-d '{
"refreshToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}'
Response
{
"result": "success",
"accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
Environments
Umbra ERP provides two environments for different stages of your integration:
| Environment | Base URL |
|---|---|
| Production | https://api.umbraerp.com |
| Staging | https://staging-api.umbraerp.com |
Using the access token
Include the JWT access token in the Authorization header of every request:
Authorization: Bearer <your_access_token>
Access tokens expire after a set period. Use the refresh token endpoint to obtain a new access token without re-authenticating.

