Luché con este molesto error durante mucho tiempo. El problema era que al intentar obtener el UID de los usuarios a través de los users/me de la API de dos patas, resultaba en una respuesta de la API: Duplicate timestamp/nonce combination, possible replay attack. Request rejected. Mi trabajo durante un tiempo fue básicamente fuerza bruta en este punto final de la API hasta que respondió. Esto funcionó a veces, pero obviamente no es práctico.
Después de revisar una publicación tras otra de personas que también tenían este problema, miré las respuestas del soporte de Schoology y todos dijeron que visite los documentos, que he revisado varias veces antes. sin embargo, esta vez me desplacé hacia abajo y encontré un "atajo", como lo llamaban, para obtener el UID
Entonces, en lugar de intentar usar el punto final de users/me , simplemente use el punto final: /app-user-info que devuelve un JSON con marca de tiempo y UID.
Después de obtener el UID, puede acceder libremente al punto final de users/me reemplazándome con el UID de la siguiente manera: users/{UID}
URL: https://api.schoology.com/v1/app-user-info
Encabezado de autorización de dos patas:
oauth_consumer_key="{CONSUMER_KEY}", oauth_signature_method="PLAINTEXT", oauth_timestamp="{TIMESTAMP}", oauth_token="", oauth_nonce="{RANDOM_CHARS}", oauth_version="1.0", oauth_signature="{CONSUMER_SECRET}%26"¡Espero que esto ayude a alguien!