Skip to content

Sync Endpoints

The Sync API provides endpoints for triggering and monitoring data synchronization from the Hydden platform to Hydden.Control.

Base URL

All endpoints are relative to /api/v1/sync.


Trigger Full Sync

Trigger a complete synchronization of all entity types.

http
POST /api/v1/sync/all

::: note Administrator Only This endpoint requires Administrator role. :::

Response

json
{
  "status": "queued",
  "job_id": "job-123",
  "message": "Full sync initiated"
}

Trigger Specific Sync

Trigger synchronization for specific entity types.

Sync Accounts

http
POST /api/v1/sync/accounts

Sync Account Attributes

http
POST /api/v1/sync/account-attributes

Sync Groups

http
POST /api/v1/sync/groups

Sync Applications

http
POST /api/v1/sync/applications

Sync Owners

http
POST /api/v1/sync/owners

Sync Owner-Account Relationships

http
POST /api/v1/sync/owner-accounts

Sync Group Memberships

http
POST /api/v1/sync/group-memberships

Sync Platform Users

http
POST /api/v1/sync/platform-users

All sync endpoints return:

json
{
  "status": "queued",
  "job_id": "job-123",
  "message": "[Entity] sync initiated"
}

Get Sync Status

Retrieve current sync status.

http
GET /api/v1/sync/status

::: note Administrator Only This endpoint requires Administrator role. :::

Response

json
{
  "last_sync": "2024-02-01T10:00:00Z",
  "status": "idle",
  "running_jobs": 0
}

Get Sync Job Status

Retrieve status for a specific sync job.

http
GET /api/v1/sync/status/{jobId}

::: note Administrator Only This endpoint requires Administrator role. :::

Path Parameters

ParameterTypeDescription
jobIdstringJob ID

Response

json
{
  "id": "job-123",
  "job_type": "full_sync",
  "status": "running",
  "progress": 65,
  "start_time": "2024-02-01T10:00:00Z"
}

Get Sync History

Retrieve synchronization history.

http
GET /api/v1/sync/history

::: note Administrator Only This endpoint requires Administrator role. :::

Query Parameters

ParameterTypeDescription
statusstringFilter by status
data_sourcestringFilter by data source
limitnumberNumber of items to return

Response

json
{
  "history": [
    {
      "id": "job-123",
      "job_type": "full_sync",
      "status": "completed",
      "start_time": "2024-02-01T10:00:00Z",
      "end_time": "2024-02-01T10:15:00Z",
      "records": {
        "created": 150,
        "updated": 45,
        "deleted": 10
      }
    }
  ]
}

Get Sync Statistics

Retrieve synchronization statistics.

http
GET /api/v1/sync/statistics

::: note Administrator Only This endpoint requires Administrator role. :::

Response

json
{
  "total_accounts": 5000,
  "total_owners": 1200,
  "total_groups": 350,
  "total_applications": 45,
  "last_full_sync": "2024-02-01T10:00:00Z",
  "data_sources": [
    { "name": "Entra", "accounts": 3000 },
    { "name": "Okta", "accounts": 2000 }
  ]
}

Get Task Status

Retrieve status for a background task.

http
GET /api/v1/sync/tasks/{taskId}

::: note Administrator Only This endpoint requires Administrator role. :::

Path Parameters

ParameterTypeDescription
taskIdstringTask ID

Response

json
{
  "id": "task-123",
  "status": "completed",
  "progress": 100,
  "result": {...}
}

Resolve Managers

Trigger manager hierarchy resolution.

http
POST /api/v1/sync/resolve-managers

::: note Administrator Only This endpoint requires Administrator role. :::

Response

json
{
  "status": "queued",
  "message": "Manager resolution initiated"
}

Delete All Tenant Data

Delete all synchronized data for the tenant.

http
DELETE /api/v1/sync/delete-all

Destructive Action

This action permanently deletes all accounts, owners, groups, applications, and related data. This cannot be undone.

::: note Administrator Only This endpoint requires Administrator role. :::

Response

Returns 204 No Content on success.


Error Responses

Status CodeDescription
400Bad Request - Invalid parameters
401Unauthorized - Authentication required
403Forbidden - Insufficient permissions
409Conflict - Sync already in progress
500Internal Server Error

Hydden Documentation and Training Hub