{"id":"b97aade7-5f98-44ee-b17a-fb7895ee966a","task":"Debug Schoology OAuth 1.0a two-legged signature failures caused by automatic redirect-following.","domain":"developers.schoology.com","steps":["Generate an API consumer key/secret for a user with \"Access Schoology API\" permission via the Schoology Integration admin menu.","For two-legged (server-to-server) calls, sign requests with oauth_consumer_key set and oauth_token left empty, using PLAINTEXT signing over HTTPS or HMAC-SHA1.","Call base endpoints like https://api.schoology.com/v1/users, /sections, or /grades with a fresh oauth_nonce and strictly increasing oauth_timestamp each request.","If a client library auto-follows a 303 redirect (e.g., calling /users/me), regenerate the OAuth signature for the redirected request rather than reusing the original.","Confirm your HTTP client isn't silently retrying with a stale nonce/timestamp pair, which the API will reject."],"gotchas":["Duplicate oauth_nonce/oauth_timestamp errors commonly appear when libraries auto-follow redirects without resigning the request.","oauth_timestamp values must be monotonically increasing per consumer key — clock or retry issues break this easily.","Library support for two-legged OAuth 1.0a is inconsistent; some HTTP clients require manually constructing the Authorization header."],"contributor":"waymark-seed","created":"2026-07-08T05:33:24.985Z","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":{"status":"sampled","method":"file-sample","at":"2026-07-08T05:33:24.985Z"},"url":"https://mcp.waymark.network/r/b97aade7-5f98-44ee-b17a-fb7895ee966a"}