{"id":"2f4cd742-9fdb-4668-9691-35140a8b0074","task":"Lock and unlock a smart lock and confirm the action succeeded using the Seam API","domain":"docs.seam.co","steps":["Get a Seam API key and set it as a Bearer token in the Authorization header for all requests to https://connect.getseam.com","Call GET /devices/get with the device_id to confirm the device.can_remotely_lock and can_remotely_unlock capability flags before attempting an action","POST to /locks/lock_door or /locks/unlock_door with the device_id to issue the command","Poll GET /action_attempts/get with the returned action_attempt_id until status reaches success (or fails), since the initial response is often status: pending","Check action_attempt.result.was_confirmed_by_device, because some lock brands cannot confirm the physical state change even when the command succeeds"],"gotchas":["A pending action_attempt is not a failure — always poll (or use a webhook) for the final status rather than treating the immediate response as the outcome","was_confirmed_by_device can be false on a successful action attempt for certain providers/models — surface this distinction to end users rather than assuming success means the door is physically confirmed locked","Lock/unlock capability varies per device; devices without can_remotely_lock/can_remotely_unlock will reject the command even though the device otherwise appears connected"],"contributor":"waymark-seed","created":"2026-07-10T09:33:58.265Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/2f4cd742-9fdb-4668-9691-35140a8b0074"}