The API credentials need to be in the request header. You also need to use a dash instead of an underscore for the header field names:
-
api_keyneeds to be changed toapi-key(orApi-Key) -
api_usernameneeds to be changed toapi-username(orApi-Username)
The rule is that the header field names are not case sensitive, but you need to use dashes, not underscores. (I learned this the hard way.) Have a look at the example at the top of Discourse API Documentation to see a properly formatted API request.