While searching for the same user, the API sometimes returns a 404 and then seconds later returns the correct data:
Try #1
url: GET https://app.asana.com/api/1.0/users/1196[redacted]
Request HEADERS: {'headers': {'X-Asana-Client-Lib': 'os_version=4.15.0-112-generic&version=0.9.2&os=Linux&language=Python&language_version=2.7.15rc1', 'Authorization': 'Bearer [redacted]'}}
response.status_code: 200
response.text {"data":{"gid":"1196[redacted]","email":"[redacted]","name":"[redacted]","photo":null,"resource_type":"user","workspaces":[{"gid":"9327[redacted]","name":"[redacted]","resource_type":"workspace"},{"gid":"1183[redacted]","name":"[redacted]","resource_type":"workspace"},{"gid":"4983[redacted]","name":"[redacted]","resource_type":"workspace"}]}}
Try #2
url: GET https://app.asana.com/api/1.0/users/1196[redacted]
Request HEADERS: {'headers': {'X-Asana-Client-Lib': 'os_version=4.15.0-112-generic&version=0.9.2&os=Linux&language=Python&language_version=2.7.15rc1', 'Authorization': 'Bearer [redacted]'}}
response.status_code: 404
response.text {"errors":[{"message":"user: Not a recognized ID: 1196[redacted]","help":"For more information on API status codes and how to handle them, read the docs on errors: https://asana.com/developers/documentation/getting-started/errors"}]}
Try #3
url: GET https://app.asana.com/api/1.0/users/1196[redacted]
Request HEADERS: {'headers': {'X-Asana-Client-Lib': 'os_version=4.15.0-112-generic&version=0.9.2&os=Linux&language=Python&language_version=2.7.15rc1', 'Authorization': 'Bearer [redacted]'}}
response.status_code: 200
response.text {"data":{"gid":"1196[redacted]","email":"[redacted]","name":"[redacted]","photo":null,"resource_type":"user","workspaces":[{"gid":"9327[redacted]","name":"[redacted]","resource_type":"workspace"},{"gid":"1183[redacted]","name":"[redacted]","resource_type":"workspace"},{"gid":"4983[redacted]","name":"[redacted]","resource_type":"workspace"}]}}