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

Forum Discussion

nadeemphpdots's avatar
nadeemphpdots
Explorer | Level 4
3 years ago

Get thumbnails of files from shared folders

Hi there,

I get list of files inside shared folder using "2/files/list_folder" with "shared_link" parameter and I am using response from "2/files/list_folder"  into  "2/files/get_thumbnail_v2" api call to get thumbnails. 
"2/files/get_thumbnail_v2" api return "path/not_found/." error invalid path error.



Is there any other way to achieve this ? 
I want thumbnails of file from shared folder.

  
 
  • Greg-DB's avatar
    Greg-DB
    Icon for Dropbox Staff rankDropbox Staff

    You should be able to use /2/files/get_thumbnail_v2 to get a thumbnail of a file from a shared link for a folder. I just tried it out and it worked for me. Here's an example of what the call might look like for curl, for instance:

    curl -X POST https://content.dropboxapi.com/2/files/get_thumbnail_v2 \
      --header 'Authorization: Bearer <ACCESS_TOKEN>' \
      --header 'Dropbox-API-Arg: {"resource":{".tag":"link","path":"/test.jpg","url":"<SHARED_LINK>"}}' \
      -o out.jpg

    In this example, "/test.jpg" is the relative path of the file for which I want the thumbnail in the linked folder.

     

    If something's not working as expected for you, please show us the steps and code you're using that result in the issue so we can take a look. Make sure to redact any access token though.

    • Здравко's avatar
      Здравко
      Legendary | Level 20

      nadeemphpdots, In addition to what Greg said, you can use those calls also with Application Authentication. In other words, you don't need to be logged in since shared resource isn't something private (by assumption).

      Greg-DB, I thought to post the example in App Authentication section, but there is a mistake. Can you use path in anonymous access, alone?! 😉 Maybe some documentation corrections are need.

      • Greg-DB's avatar
        Greg-DB
        Icon for Dropbox Staff rankDropbox Staff

        Yes, this works with app authentication as well. In that case it would look like:

        curl -X POST https://content.dropboxapi.com/2/files/get_thumbnail_v2 \
          --header "Authorization: Basic <ENCODED_APP_KEY_AND_SECRET>" \
          --header 'Dropbox-API-Arg: {"resource":{".tag":"link","path":"/test.jpg","url":"<SHARED_LINK>"}}' \
          -o out.jpg
  • nadeemphpdots's avatar
    nadeemphpdots
    Explorer | Level 4

    Hi @Greg-DB, Здравко Thanks for reply,

     I use below code and getting error 

    "Error in call to API function "files/get_thumbnail:2": HTTP header "Dropbox-API-Arg": could not decode input as JSON"

     

                        $ch = curl_init();
    
                        curl_setopt($ch, CURLOPT_URL, 'https://content.dropboxapi.com/2/files/get_thumbnail_v2');
                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
                        curl_setopt($ch, CURLOPT_POST, 1);
    
                        $headers = array();
                        $headers[] = 'Authorization: Bearer sl.BIgvvyUur9m--oAuUapVgE__HaC8DnOZqdWuE9Q0Cs6QfpGbsYtWgAzQI6jGfW_seiBVA8gIeE0FFb0oUBM__kr3Br08XnoMD2EBSv_3g-MqrKibUT4_e6JlwJr_eCDyTMcwkZMm8RWV';
                        $headers[] = 'Dropbox-Api-Arg: {\"resource\":{\".tag\":\"link\",\"url\":\"https://www.dropbox.com/sh/ns2y8e6lqyh5avz/AAAHX5tPck8CHwpcSKMwV7cba?dl=0\",\"path\":\"/1515 Lochstone Drive 8.jpg\"}}';
                        $headers[] = 'Content-Type: application/octet-stream; charset=utf-8';
                        curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    
                        $result = curl_exec($ch);
                        dd($result);

     

     

    • nadeemphpdots's avatar
      nadeemphpdots
      Explorer | Level 4

      Hi @Greg-DB,
      I updated code and getting  result like 

      ����JFIF��C  %# , #&')*)-0-(0%()(��C   (((((((((((((((((((((((((((((((((((((((((((((((((((��+@"�� ���}!1AQa"q2���#B��R��$3br� %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������� ���w!1AQaq"2�B���� #3R�br� $4�%�&'()*56789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz��������������������������������������������������������������������������?��S���v���0GpjQ&��-�;���v5Q���T�P�4�Z6�dp3XWZ��qG��r�J G`�29���Gr�-��\/�WipMAg���L[�ˡ����0ʞ�}��95 ���%G#/?Ni{H�����#��u�N��p��(G�9���M[M{�g �n�‰*�O��p9��Z�u������r;Ckh�<�r���;����J��*1��_��]ni,4�6 -W,�!�O�8����Ct�j�)`�c ��VU���.��4Km� �Fs���6—W���`�#a����(�z�q�k�:OY�~#��쮰Cm���q]�e{Kx���ъ�;�G��u>��hZ`�N�H��f�`t�?T��u�t��:ItA�xQ��X)ʢ7Q�7���g��Գ�Hm�*��N��wN �t�;C����Ծk/�cm�rh'��خ^K[�E��w��y�V#��#h��֯�WH��l��x̦Y���#=q�[R��&gR���H���/�{!��2�� v�1��&��y����=���L�r� 7/=qבUmt[��L��� ���C���s��+��-l������l���i\�x�<�E� R�m���Ѽ'q�d��J0�D[k�=���u���Z\�#��9������I�V~���jK�~צ�gf=�t m ��L��_z�lX�ߞ���y`�� >�XnL��9��(=kzS�wFSM�xԷ)q�F��T&ߝ��y5ne"M�?�_)\s�� b��V�Z��4V �0�;Q��n��Z�ic>���

      I am trying to display all thumbnails from shared folder in site and User can select particular thumbnail from list and I want to url of that selected thumbnail.

      • Здравко's avatar
        Здравко
        Legendary | Level 20

        Hi nadeemphpdots,

        Seems you have found out your PHP string error. 🙂.... And... What's wrong here? 🤔 Everything seems normal. Your jpeg, you opened as text, might confuse you. Isn't so? 😉

        Hope this helps.