Welcome to the Scan2Evolve REST API documentation. Automate user provisioning and maintenance workflows with the Scan2Evolve REST API. Connect your HRIS and identity provider for user access, and integrate with your CMMS to create and track work requests and work orders from inspections.
This guide assumes you have admin access to your Scan2Evolve organization. If you need help, contact our support team.
Handle large-scale data synchronization with batch processing up to 500 records. Each record processes independently, so individual failures won't prevent successful records from completing.
Enterprise-grade security with HTTP Basic Authentication and API key management. All connections use TLS 1.2+ encryption, credentials are stored securely, and comprehensive audit logging tracks all activity.
Operations are idempotent by design. Re-run sync jobs confidently without worrying about duplicate records or data conflicts. Safe retry logic built into every endpoint.
Clear documentation, actionable error responses, and predictable JSON structures. Designed with developer experience in mind to minimize integration time and debugging effort.
Go to Admin → Settings → Organization → API Credentialsto create your API credentials. You'll get a client_id and client_secret pair for authentication.
Exchange your client_id and client_secret for a Bearer token (see below), then include Authorization: Bearer <token> in every API request.
Start syncing employee records, asset data, and organizational information through our API endpoints. Batch operations support up to 500 records per request for efficient data transfer.
View API Docs# Step 1: Get Bearer Token using your client credentials
# Replace BASE_URL with your app URL (e.g. https://app.scan2evolve.com or your DigitalOcean URL)
curl -X POST BASE_URL/api/v1/auth/token \
-H "Content-Type: application/json" \
-d '{
"client_id": "your-client-id",
"client_secret": "your-client-secret",
"grant_type": "client_credentials"
}'
# Response:
# {
# "access_token": "se_a1b2c3d4e5f6...",
# "token_type": "Bearer",
# "expires_in": 86400,
# "expires_at": "2024-11-19T10:30:00.000Z",
# "organization_id": "org-123...",
# "organization_name": "Your Organization"
# }# Step 1: Get Bearer Token (use the example above to get your token)
# After getting the token, use it in the Authorization header
# Step 2: Sync your first employee using Bearer Token
# Replace BASE_URL with your app URL (e.g. https://app.scan2evolve.com)
curl -X POST BASE_URL/api/v1/sync/employees \
-H "Authorization: Bearer se_your_token_here" \
-H "Content-Type: application/json" \
-d '{
"syncBatchId": "batch-001",
"employees": [{
"externalEmployeeId": "EMP-001",
"status": "ACTIVE",
"firstName": "John",
"lastName": "Doe",
"email": "john.doe@example.com",
"roles": ["INSPECTOR"],
"userAccount": {
"username": "john.doe",
"forcePasswordReset": true,
"sendWelcomeEmail": true
}
}]
}'
# Response:
# {
# "syncBatchId": "batch-001",
# "results": [{
# "externalEmployeeId": "EMP-001",
# "status": "CREATED",
# "employeeId": "emp_abc123...",
# "userId": "user_xyz789...",
# "warnings": []
# }],
# "errors": []
# }