cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Back again with another edition of 'How we use Dropbox', so find out how Emma uses to-do lists to get it all done here!

Dropbox API Support & Feedback

Find help with the Dropbox API from other developers.

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Request body could not decode input as JSON

Request body could not decode input as JSON

AndreyStrukov
Helpful | Level 5

Hello!

The follow code (qt c++)

QUrl url;
    url.setScheme("https");
    url.setHost("api.dropboxapi.com");
    url.setPath("/2/file_requests/list_v2");

    QUrlQuery params;
    params.addQueryItem("limit", "1000");
    QByteArray qb_params;
    qb_params.append(params.toString(QUrl::FullyEncoded));

    if(checkUrl(url)){
        QNetworkRequest request;    // 
        request.setUrl(url);

        QByteArray auth;
        auth.append(OAuth_);
        auth.prepend("Bearer ");
        request.setRawHeader("Authorization", auth);
        request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");

        manager->post(request, qb_params);      // 
    }

got an error:

"Error transferring https://api.dropboxapi.com/2/file_requests/list_v2 - server replied: Bad Request"
"Error in call to API function \"file_requests/list:2\": request body: could not decode input as JSON"

What's wrong?

1 Accepted Solution

Accepted Solutions

Re: Request body could not decode input as JSON

Здравко
Super Collaborator | Level 20

Hi @AndreyStrukov,

Can you clarify, what you really ask? :thinking: In the error message is clearly stated: "could not decode input as JSON"!

If you take a look on list_v2 documentation, can be seen that parameters have to be in JSON format. Where you encode your parameter ("limit") in JSON? Instead, you use 'QUrlQuery' class, which functionality mimics classic HTML form encoding (not JSON)! :wink:

Hope this gives some direction.

View solution in original post

2 Replies 2

Re: Request body could not decode input as JSON

Здравко
Super Collaborator | Level 20

Hi @AndreyStrukov,

Can you clarify, what you really ask? :thinking: In the error message is clearly stated: "could not decode input as JSON"!

If you take a look on list_v2 documentation, can be seen that parameters have to be in JSON format. Where you encode your parameter ("limit") in JSON? Instead, you use 'QUrlQuery' class, which functionality mimics classic HTML form encoding (not JSON)! :wink:

Hope this gives some direction.

View solution in original post

Re: Request body could not decode input as JSON

AndreyStrukov
Helpful | Level 5

Thank you, got it!

I've fixed it and now it works.

Poll
We love to learn from the educators who use Dropbox. Whether you teach kids, teens, adults or a combination of all three, we want to know what apps and integrations you use with Dropbox to help with teaching. Which of the ones below is your favorite, or most used tool?
Who's talking

Top contributors to this post

  • User avatar
    AndreyStrukov Helpful | Level 5
  • User avatar
    Здравко Super Collaborator | Level 20
What do Dropbox user levels mean?
Need more support?