Correlation Detail
Trace: App change → jobs → lock execution → outcome.
1 — What changed (AppAudit)
| Time | Entity | Action | Details |
|---|---|---|---|
| 2026-02-05 10:28:59 .00 | Door #2 | create |
Before/After + CopyBefore JSONnull After JSON{
"created_at": "2026-02-05T16:28:59.888294",
"demo_state": "locked",
"demo_state_updated_at": null,
"description": null,
"device_type": "TTLOCK",
"door_group_id": null,
"external_id": "28991110",
"id": 2,
"integration_customer_id": 1,
"integration_device_id": 1,
"is_active": true,
"location": null,
"name": "ttlock",
"open_schedule_id": null,
"site_id": 1,
"status": "unknown",
"updated_at": "2026-02-05T16:28:59.888294"
}
|
2 — What the system decided (Reconcile Jobs)
| Time | Job | User | Reason | Status | Attempts / Error | Details |
|---|---|---|---|---|---|---|
| 2026-02-05 10:28:59 .00 | Job #104 | — | door provisioned drift_enforce TTLOCK 28991110 door:2 device:1 | done |
attempts: 1
age_seconds: 184423
|
Raw + CopyJob JSON{
"attempt_count": 1,
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:28:59Z",
"debug_session_id": null,
"derived": {
"age_seconds": 184423.114021,
"is_stuck_running": false
},
"job_type": "drift_enforce_lock_truth",
"last_error": null,
"next_run_at": null,
"reason": "door provisioned drift_enforce TTLOCK 28991110 door:2 device:1",
"reconcile_job_id": 104,
"status": "done",
"updated_at": "2026-02-05T16:29:03Z",
"user_id": 0
}
|
3 — What was sent to locks (Provider → Lock)
TTLOCK
TTLOCK:unknown
door: ttlock
2026-02-05
10:28:59 .00 · DOOR_PROVISION ·
ok
Raw logs JSON
[
{
"action": "DOOR_PROVISION",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:28:59Z",
"debug_session_id": null,
"door_id": 2,
"door_name": "ttlock",
"error_message": null,
"external_id": null,
"id": 1657,
"lock_key": "TTLOCK:unknown",
"ok": true,
"provider_type": "TTLOCK",
"reconcile_job_id": null,
"request_json": {
"customer_id": 1,
"integration_device_id": 1,
"name": "ttlock",
"provider": "TTLOCK",
"schlage_customer_link_id": null,
"site_id": 1
},
"response_json": {
"created": true,
"door_id": 2
}
}
]
TTLOCK:28991110
door: ttlock
2026-02-05
10:29:01 .00 · PASSCODE_LIST ·
ok
2026-02-05
10:29:03 .00 · PASSCODE_DELETE ·
ok
Raw logs JSON
[
{
"action": "PASSCODE_LIST",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:29:01Z",
"debug_session_id": null,
"door_id": 2,
"door_name": "ttlock",
"error_message": null,
"external_id": "28991110",
"id": 1660,
"lock_key": "TTLOCK:28991110",
"ok": true,
"provider_type": "TTLOCK",
"reconcile_job_id": 104,
"request_json": {
"base_host": "https://api.ttlock.com",
"method": "GET",
"path": "/v3/lock/listKeyboardPwd",
"payload": {
"accessToken": "***",
"clientId": "6636adfbf3f9483d946082b74f20797c",
"date": 1770308939939,
"lockId": 28991110,
"pageNo": 1,
"pageSize": 200
},
"url": "https://api.ttlock.com/v3/lock/listKeyboardPwd"
},
"response_json": {
"list": [
{
"endDate": 1801841076424,
"isCustom": 1,
"keyboardPwd": "***1111",
"keyboardPwdId": 50957532,
"keyboardPwdName": "***",
"keyboardPwdType": 3,
"keyboardPwdVersion": 4,
"lockId": 28991110,
"nickName": "keith",
"receiverUsername": "",
"sendDate": 1770305080000,
"senderUsername": "keith@ac5.ca",
"startDate": 1770305016424,
"status": 1
}
],
"pageNo": 1,
"pageSize": 200,
"pages": 1,
"total": 1
}
},
{
"action": "PASSCODE_DELETE",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:29:03Z",
"debug_session_id": null,
"door_id": 2,
"door_name": "ttlock",
"error_message": null,
"external_id": "28991110",
"id": 1661,
"lock_key": "TTLOCK:28991110",
"ok": true,
"provider_type": "TTLOCK",
"reconcile_job_id": 104,
"request_json": {
"base_host": "https://api.ttlock.com",
"method": "POST",
"path": "/v3/keyboardPwd/delete",
"payload": {
"accessToken": "***",
"clientId": "6636adfbf3f9483d946082b74f20797c",
"date": 1770308941217,
"deleteType": 2,
"keyboardPwdId": 50957532,
"lockId": 28991110
},
"url": "https://api.ttlock.com/v3/keyboardPwd/delete"
},
"response_json": {
"description": "\u8868\u793a\u6210\u529f\u6216\u662f",
"errcode": 0,
"errmsg": "none error message or means yes"
}
}
]
ACCESS_BROKER
ACCESS_BROKER:unknown
2026-02-05
10:28:59 .00 · RECONCILE_ENQUEUED ·
ok
2026-02-05
10:28:59 .00 · DRIFT_ENFORCE_JOB_START ·
ok
2026-02-05
10:29:03 .00 · DRIFT_ENFORCE_DELETE_PIN ·
ok
2026-02-05
10:29:03 .00 · DRIFT_ENFORCE_JOB_DONE ·
ok
Raw logs JSON
[
{
"action": "RECONCILE_ENQUEUED",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:28:59Z",
"debug_session_id": null,
"door_id": null,
"door_name": null,
"error_message": null,
"external_id": null,
"id": 1658,
"lock_key": "ACCESS_BROKER:unknown",
"ok": true,
"provider_type": "ACCESS_BROKER",
"reconcile_job_id": 104,
"request_json": {
"job_type": "drift_enforce_lock_truth",
"reason": "door provisioned drift_enforce TTLOCK 28991110 door:2 device:1",
"source": "door route",
"user_id": 0
},
"response_json": {
"job_id": 104
}
},
{
"action": "DRIFT_ENFORCE_JOB_START",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:28:59Z",
"debug_session_id": null,
"door_id": null,
"door_name": null,
"error_message": null,
"external_id": null,
"id": 1659,
"lock_key": "ACCESS_BROKER:unknown",
"ok": true,
"provider_type": "ACCESS_BROKER",
"reconcile_job_id": 104,
"request_json": {
"attempt_count": 1,
"job_id": 104,
"job_type": "drift_enforce_lock_truth",
"reason": "door provisioned drift_enforce TTLOCK 28991110 door:2 device:1",
"user_id": 0
},
"response_json": null
},
{
"action": "DRIFT_ENFORCE_DELETE_PIN",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:29:03Z",
"debug_session_id": null,
"door_id": null,
"door_name": null,
"error_message": null,
"external_id": null,
"id": 1662,
"lock_key": "ACCESS_BROKER:unknown",
"ok": true,
"provider_type": "ACCESS_BROKER",
"reconcile_job_id": 104,
"request_json": {
"code_last4": null,
"correlation_id": "job",
"device_external_id": "28991110",
"integration_device_id": 1,
"name": "AB U9 C6",
"provider_code_id": "50957532",
"provider_type": "TTLOCK",
"stray_id": null
},
"response_json": {
"result": {
"description": "\u8868\u793a\u6210\u529f\u6216\u662f",
"errcode": 0,
"errmsg": "none error message or means yes"
}
}
},
{
"action": "DRIFT_ENFORCE_JOB_DONE",
"correlation_id": "c2165f3f52364e4db32d169654f4648f",
"created_at": "2026-02-05T16:29:03Z",
"debug_session_id": null,
"door_id": null,
"door_name": null,
"error_message": null,
"external_id": null,
"id": 1663,
"lock_key": "ACCESS_BROKER:unknown",
"ok": true,
"provider_type": "ACCESS_BROKER",
"reconcile_job_id": 104,
"request_json": {
"attempt_count": 1,
"job_id": 104
},
"response_json": {
"adds": {
"attempted": 0,
"failed": 0,
"ok": 0
},
"analysis": {
"adds": 0,
"blocked": 0,
"deletes": 1,
"doors": 1,
"grace_bypassed_deletes": 1,
"invalid_expected": 0
},
"deletes": {
"attempted": 1,
"failed": 0,
"ok": 1
},
"enforce_plan": {
"doors": [
{
"actual": [
{
"code_name": "AB U9 C6",
"provider_receipt_id": null,
"source": "lock",
"vendor_pin_id": "50957532"
}
],
"adds": [],
"blocked_by_grace": [],
"deletes": [
{
"code_name": "AB U9 C6",
"eligible_at": "2026-02-05T17:28:59Z",
"first_seen_at": "2026-02-05T16:28:59Z",
"first_seen_source": "inferred_now",
"grace_bypassed": true,
"provider_receipt_id": null,
"reason": "credential_revoked_or_missing",
"source": "lock",
"vendor_pin_id": "50957532"
}
],
"door_id": 2,
"expected": [],
"external_device_id": "28991110",
"integration_device_id": 1,
"invalid_expected": [],
"provider_type": "TTLOCK",
"summary": {
"adds": 0,
"blocked": 0,
"deletes": 1,
"grace_bypassed_deletes": 1,
"invalid_expected": 0
}
}
],
"filters": {
"door_id": null,
"integration_device_id": 1,
"provider_type": "TTLOCK"
},
"generated_at": "2026-02-05T16:28:59Z",
"grace_window_seconds": 3600,
"mode": "ultra_strict",
"summary": {
"adds": 0,
"blocked": 0,
"deletes": 1,
"doors": 1,
"grace_bypassed_deletes": 1,
"invalid_expected": 0
}
},
"failures": [],
"generated_at": "2026-02-05T16:28:59Z",
"ok": true,
"summary": {
"adds_attempted": 0,
"adds_failed": 0,
"adds_succeeded": 0,
"deletes_attempted": 1,
"deletes_failed": 0,
"deletes_succeeded": 1,
"failures": []
},
"target": {
"external_id": "28991110",
"integration_device_id": 1,
"provider_type": "TTLOCK"
}
}
}
]
4 — Timeline (All Integration Logs)
Raw + Copy
Request JSON
{
"customer_id": 1,
"integration_device_id": 1,
"name": "ttlock",
"provider": "TTLOCK",
"schlage_customer_link_id": null,
"site_id": 1
}
Response JSON
{
"created": true,
"door_id": 2
}
Raw + Copy
Request JSON
{
"job_type": "drift_enforce_lock_truth",
"reason": "door provisioned drift_enforce TTLOCK 28991110 door:2 device:1",
"source": "door route",
"user_id": 0
}
Response JSON
{
"job_id": 104
}
Raw + Copy
Request JSON
{
"attempt_count": 1,
"job_id": 104,
"job_type": "drift_enforce_lock_truth",
"reason": "door provisioned drift_enforce TTLOCK 28991110 door:2 device:1",
"user_id": 0
}
Response JSON
null
Raw + Copy
Request JSON
{
"base_host": "https://api.ttlock.com",
"method": "GET",
"path": "/v3/lock/listKeyboardPwd",
"payload": {
"accessToken": "***",
"clientId": "6636adfbf3f9483d946082b74f20797c",
"date": 1770308939939,
"lockId": 28991110,
"pageNo": 1,
"pageSize": 200
},
"url": "https://api.ttlock.com/v3/lock/listKeyboardPwd"
}
Response JSON
{
"list": [
{
"endDate": 1801841076424,
"isCustom": 1,
"keyboardPwd": "***1111",
"keyboardPwdId": 50957532,
"keyboardPwdName": "***",
"keyboardPwdType": 3,
"keyboardPwdVersion": 4,
"lockId": 28991110,
"nickName": "keith",
"receiverUsername": "",
"sendDate": 1770305080000,
"senderUsername": "keith@ac5.ca",
"startDate": 1770305016424,
"status": 1
}
],
"pageNo": 1,
"pageSize": 200,
"pages": 1,
"total": 1
}
Raw + Copy
Request JSON
{
"base_host": "https://api.ttlock.com",
"method": "POST",
"path": "/v3/keyboardPwd/delete",
"payload": {
"accessToken": "***",
"clientId": "6636adfbf3f9483d946082b74f20797c",
"date": 1770308941217,
"deleteType": 2,
"keyboardPwdId": 50957532,
"lockId": 28991110
},
"url": "https://api.ttlock.com/v3/keyboardPwd/delete"
}
Response JSON
{
"description": "\u8868\u793a\u6210\u529f\u6216\u662f",
"errcode": 0,
"errmsg": "none error message or means yes"
}
Raw + Copy
Request JSON
{
"code_last4": null,
"correlation_id": "job",
"device_external_id": "28991110",
"integration_device_id": 1,
"name": "AB U9 C6",
"provider_code_id": "50957532",
"provider_type": "TTLOCK",
"stray_id": null
}
Response JSON
{
"result": {
"description": "\u8868\u793a\u6210\u529f\u6216\u662f",
"errcode": 0,
"errmsg": "none error message or means yes"
}
}
Raw + Copy
Request JSON
{
"attempt_count": 1,
"job_id": 104
}
Response JSON
{
"adds": {
"attempted": 0,
"failed": 0,
"ok": 0
},
"analysis": {
"adds": 0,
"blocked": 0,
"deletes": 1,
"doors": 1,
"grace_bypassed_deletes": 1,
"invalid_expected": 0
},
"deletes": {
"attempted": 1,
"failed": 0,
"ok": 1
},
"enforce_plan": {
"doors": [
{
"actual": [
{
"code_name": "AB U9 C6",
"provider_receipt_id": null,
"source": "lock",
"vendor_pin_id": "50957532"
}
],
"adds": [],
"blocked_by_grace": [],
"deletes": [
{
"code_name": "AB U9 C6",
"eligible_at": "2026-02-05T17:28:59Z",
"first_seen_at": "2026-02-05T16:28:59Z",
"first_seen_source": "inferred_now",
"grace_bypassed": true,
"provider_receipt_id": null,
"reason": "credential_revoked_or_missing",
"source": "lock",
"vendor_pin_id": "50957532"
}
],
"door_id": 2,
"expected": [],
"external_device_id": "28991110",
"integration_device_id": 1,
"invalid_expected": [],
"provider_type": "TTLOCK",
"summary": {
"adds": 0,
"blocked": 0,
"deletes": 1,
"grace_bypassed_deletes": 1,
"invalid_expected": 0
}
}
],
"filters": {
"door_id": null,
"integration_device_id": 1,
"provider_type": "TTLOCK"
},
"generated_at": "2026-02-05T16:28:59Z",
"grace_window_seconds": 3600,
"mode": "ultra_strict",
"summary": {
"adds": 0,
"blocked": 0,
"deletes": 1,
"doors": 1,
"grace_bypassed_deletes": 1,
"invalid_expected": 0
}
},
"failures": [],
"generated_at": "2026-02-05T16:28:59Z",
"ok": true,
"summary": {
"adds_attempted": 0,
"adds_failed": 0,
"adds_succeeded": 0,
"deletes_attempted": 1,
"deletes_failed": 0,
"deletes_succeeded": 1,
"failures": []
},
"target": {
"external_id": "28991110",
"integration_device_id": 1,
"provider_type": "TTLOCK"
}
}