We are aware of the issue with the badge emails resending to everyone, we apologise for the inconvenience - learn more here.

Forum Discussion

toki4004's avatar
toki4004
Helpful | Level 5
2 years ago

Error in search... options: expected array, got string

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).

  • toki4004's avatar
    toki4004
    Helpful | Level 5

    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).