Access and secrets
- A dedicated API key exists for this integration
- The key name identifies system, purpose, and environment
- The key has the least-privilege company and division scope
- The key is stored in a managed secret store
- The key is not present in source code, logs, tickets, or screenshots
- A key rotation and emergency deactivation procedure has been tested
Request behavior
- Every request has an explicit timeout
-
X-Request-IDis generated for each logical attempt and logged -
X-Tenant-IDis supplied wherever placement would otherwise be ambiguous - Unknown fields are not sent
- JSON requests use
application/json - Attachment uploads use the documented multipart field, type, count, and size constraints
Synchronization correctness
- Stable cross-system identifiers are stored
- Pagination continues until the documented last page
- A fixed filter window or checkpoint prevents accidental gaps
-
null, omitted properties, and empty strings are handled distinctly - New enum values and unknown response properties do not crash the client
- Partial failures are recorded and can be resumed safely
Writes and retries
- Supported writes are validated with
dryRun=truewhere appropriate - Dry runs are not treated as reservations or a separate environment
-
POSTand state-transition requests are never retried blindly after a timeout - Ambiguous write outcomes are reconciled by re-reading the resource
-
409and422are handled as business or validation outcomes, not transient failures -
429honorsRetry-After - Read retries use bounded exponential backoff and a retry budget
Observability
- Logs include operation, HTTP status, error code, tenant context, and request ID
- Logs exclude API keys and unnecessary personal data
- Alerts exist for sustained authentication, authorization, validation, rate-limit, and 5xx failures
- A dashboard or report shows synchronization checkpoints and unresolved records
- The OpenAPI contract version used by the client is recorded
Operations and support
- An owner is assigned for the integration
- A runbook covers restart, rollback, key rotation, and incident response
- Support requests include UTC time, method, path, status, error code, and request ID
- Downloaded payroll and incident files are protected by appropriate local access controls
- Retention and deletion rules are defined for local logs and files
- The current Changelog and Capabilities and limitations have been reviewed
Passing this checklist does not replace customer-specific acceptance testing. Validate mappings, permissions, side effects, and downstream imports with the responsible business owners.
