Paul Grenyer
Paul Grenyer

Reputation: 1853

tweetinvi RegisterWebhookAsync 401 - Unauthorized - Authentication credentials were missing or incorrect

I am trying to use TweetInvi (4.0.3) to register a webhook:

 var twitterCreditials = Auth.SetUserCredentials(twitterOptions.APIkey, twitterOptions.APISecretKey, twitterOptions.AccessToken, twitterOptions.AccessTokenSecret);

 Webhooks.RegisterWebhookAsync("mydevenv", HttpUtility.UrlEncode("https://.../webhooks/twitter"), twitterCreditials);

But I get the following exception in response:

URL : https://api.twitter.com/1.1/account_activity/all/mydevenv/webhooks.json?url=https%3a%2f%2f...%2fwebhooks%2ftwitter
Code : 401
Error documentation description : Unauthorized -  Authentication credentials were missing or incorrect.
Error message : https://api.twitter.com/1.1/account_activity/all/mydevenv/webhooks.json?url=https%3a%2f%2f...%2fwebhooks%2ftwitter web request failed.
Could not authenticate you. (32)

I've checked and double checked that my credentials are correct and I've followed the instructions here to create a dev environment. I've tried regenerating all my credentials for my Twitter app, but to no avail.

The error message suggests there is something wrong with my credentials, but I cannot see what.

I can see a log message when my webhook callback endpoint is called and it is not getting called.

I've also tried with version 5-beta of Tweetinvi:

var userClient = new TwitterClient("...", "...", "...", "...");
await userClient.AccountActivity.CreateAccountActivityWebhookAsync("mydevenv", "https://.../webhooks/twitter");

But this gives me a 400 for what appears to be the same call to the Twitter API as version 4.

There must be something simple I've missed?

Upvotes: 1

Views: 383

Answers (1)

Saeed
Saeed

Reputation: 3785

You have to update user setup in your twitter project and set new permission to read/write . Go to developer portl -> project -> setting -> User authentication settings -> select read/write permission

Upvotes: 0

Related Questions