Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
I am trying to use search to find any file with txt extension inside a particular path. I get the error: "Error in call to API function "files/search_v2": options: expected array, got string". What am I doing wrong here:
$options = array(
"filename_only" => true,
"max_results" => 1,
"file_status" => "active",
"path" => "/some/folder/folder",
"file_extensions" => "txt"
);
$params = array(
"options" => $options,
"query" => "txt",
);
$headers = array(
'Authorization: Bearer ' . $auth_token,
'Content-Type: application/json'
);
$ch = curl_init();
curl_setopt( $ch, CURLOPT_POSTFIELDS, json_encode( $params ) );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, "POST" );
curl_setopt( $ch, CURLOPT_HTTPHEADER, $headers );
curl_setopt( $ch, CURLOPT_URL, 'https://api.dropboxapi.com/2/files/search_v2' );
Yes, let's think a bit: you have parameter name "file_extensions" 😉 (plural, not singular)! Here a list of extensions is expected, so even when there is single extension, this extension has to be an only entry in a list and not raw string (as noted in the error message too).
I tried wrapping options in another array - still get: "options: expected object, got array"
$options = array(
array(
...
)
);
Yes, let's think a bit: you have parameter name "file_extensions" 😉 (plural, not singular)! Here a list of extensions is expected, so even when there is single extension, this extension has to be an only entry in a list and not raw string (as noted in the error message too).
Hi there!
If you need more help you can view your support options (expected response time for a ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!