Trying to migrate from Tiktok's API from v1 to v2 endpoints. Currently version 1 works for me but my request to the https://open.tiktokapis.com/v2/oauth/token/ endpoint keeps returning
{
"error": "invalid_request",
"error_description": "The request parameters are malformed.",
"log_id": "202308141814065FE27A58513347021AF1"
}
I'm testing this through Postman and here are screenshots of my request:
The url used to obtain the "code" passed into the postman request is https://www.tiktok.com/v2/auth/authorize/?client_key=abcdefg&scope=user.info.basic,user.info.profile,user.info.stats,video.list&response_type=code&state=abcdefg&redirect_uri=https://www.test.com/redirect
I've requested support from Tiktok for the log_id and they say its due to "grant type is not set in request." I'm using applicaiton/x-www-form-urlencoded in Postman's header so if that is the issue I'm not sure what else to modify.
I think your issue is because you're passing the params in the query params, they must be in the body params:
you can also try to import this curl in the postman, it's in the official documentation:
curl --location --request POST 'https://open.tiktokapis.com/v2/oauth/token/' \
--header 'Content-Type: application/x-www-form-urlencoded' \
--header 'Cache-Control: no-cache' \
--data-urlencode 'client_key=CLIENT_KEY' \
--data-urlencode 'client_secret=CLIENT_SECRET' \
--data-urlencode 'code=CODE' \
--data-urlencode 'grant_type=authorization_code' \
--data-urlencode 'redirect_uri=REDIRECT_URI'
reference: https://developers.tiktok.com/doc/oauth-user-access-token-management