Browse docs

Introduction

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.

Why Choose Scan2Evolve API?

Lightning Fast

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 Security

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.

Idempotent Operations

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.

Developer Friendly

Clear documentation, actionable error responses, and predictable JSON structures. Designed with developer experience in mind to minimize integration time and debugging effort.

Get Started in 3 Steps

STEP 1

Create API Credentials

Go to Admin → Settings → Organization → API Credentialsto create your API credentials. You'll get a client_id and client_secret pair for authentication.

Go to Settings
STEP 2

Configure Authentication

Exchange your client_id and client_secret for a Bearer token (see below), then include Authorization: Bearer <token> in every API request.

Learn Authentication
STEP 3

Begin Integration

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
Get Bearer Token
# 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"
# }
Quick Start Code
# 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": []
# }
Last updated March 6, 2025
Table of Contents
Top