cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Announcements
Want to learn some quick and useful tips to make your day easier? Check out how Calvin uses Replay to get feedback from other teams at Dropbox 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: 

Re: Upload a file using c++ via curl

Upload a file using c++ via curl

hb_
Helpful | Level 5

Hi, I was googling for a way to upload a file to any cloud storage using c++ and came across dropbox api. I found the code, so I did a copy and paste to try and see if it works. I entered the Access token and ran the code, the upload failed showing this error:

"Error in call to API function "files/upload": The given OAuth 2 access token is malformed."

I suspect the error could be related to this line of code:

curl_easy_setopt(curl, CURLOPT_URL, "https://content.dropboxapi.com/2/files/upload");

But I am new in this so I have no idea how to solve it.

23 Replies 23

hb_
Helpful | Level 5

@Здравко I have spent some trying to figure the code out and I did, not everything though, but I couldn't apply it to my code. It looks like it is the hard way to do that

@Greg-DB any clue?

Здравко
Legendary | Level 20

@hb_ :grinning: :sunglasses: Yes definitely. You are trying to implement something like new SDK, in fact. :wink: That's why I proposed this on the thread! To be more easy, at least for future. May be an easier way would be take a look on some existing SDK (on language familiar to you) and reimplement what's there (at least needed parts).

hb_
Helpful | Level 5

@Здравко so you are saying that currently there's no way to upload file from my computer to my dropbox account using c++ via curl?? :cry::cry:

Здравко
Legendary | Level 20

:open_mouth: No! Just opposite. Just some more work would be needed, because of missing SDK ready. And Between: again libcurl is C library, not C++, that's why ifstream object can't be 'stream' (i.e. cast) directly. :wink: Be careful.

hb_
Helpful | Level 5




C code still works on C++, so any C code that can do what I am intending to do would be useful to me.

And I need to know that 'some more work' so I can do it:grin::grin:

Здравко
Legendary | Level 20

Yes, of course. But there are some differences you have to be aware! In C++ you can use overload functions (for example), but not in C. :wink: Again, just be careful.

hb_
Helpful | Level 5

I have some basic knowledge of C and I am aware of the C limitations

I really thank you @Здравко  for investing so much time trying to help me. I really appreciate it.

I will keep looking for a way to do what I want.
Hopefully @Greg-DB will come with a solution

Greg-DB
Dropbox Staff

You're on the right track. That is, you can upload files to Dropbox using HTTPS requests to /2/files/upload, and you have the basic code to do so already. 

It sounds like you're currently working on how to get the data from the local file system though, which isn't specific to Dropbox, so I'm afraid I can't offer much specific help with that in particular, nor do I have a code sample for that in particular. (I'm also certainly not a C expert.) 

hb_
Helpful | Level 5

As I said, I will keep looking

Thank you for your time @Greg-DB 

As for DropBox I will be expecting an official C++ SDK soon :grin::grin:

Edit: As a note I found  a repo on github, a dropbox api c++ library that on looks seems to do what I want but I haven't figure the whole code out and get it to work

https://github.com/rahuliyer/dropbox-cpp

@Здравко @Greg-DB  if you guys could check it out some time and try to figure the code out and hit me back that would be awsome nit only for me but for anyone that wants to do what I want to do

Greg-DB
Dropbox Staff

Just to be clear, I've sent this along as a feature request, but I can't promise if or when Dropbox would release an official C++ SDK for API v2. (I'm not currently of any such work on one.)

Need more support?