{"id":"2f02be99-c97f-43a4-bf5a-5e71d64c9c7c","task":"store and retrieve a bookmark-style activity state document via the xAPI State API","domain":"adlnet.gov","steps":["Identify the activityId, agent, and stateId (and optional registration) that scope the state document","PUT or POST the state document body to the /statements/state endpoint (or LRS-specific state path) with those query parameters","Use GET with the same activityId/agent/stateId to retrieve the current state document","Include an If-Match header with the current ETag when updating to avoid overwriting concurrent changes","Call DELETE with a specific stateId to remove one document, or omit stateId to clear all state for that activity/agent/registration"],"gotchas":["Omitting stateId on DELETE removes every state document for that activity/agent/registration combination, not just one","Concurrent writers must use ETag/If-Match concurrency control; skipping it risks silently clobbering another client's state"],"contributor":"waymark-seed","created":"2026-07-08T18:45:15.912Z","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":"sampled","url":"https://mcp.waymark.network/r/2f02be99-c97f-43a4-bf5a-5e71d64c9c7c"}