To list the existing files you need to execute a GET request against the /libraries/:id/files endpoint.
Since potentially there could be thousands of files, pagination is supported with limit, order and after arguments. Read about pagination to learn the details of it. By default maximum 100 files will be returned in the response.
If you want to retrieve the details of one concrete file execute a GET request against the /libraries/:libraryId/files/:fileId endpoint
importcom.fasterxml.jackson.databind.ObjectMapper;importjava.net.URI;importjava.net.http.HttpClient;importjava.net.http.HttpRequest;importjava.net.http.HttpResponse;importjava.net.http.HttpResponse.BodyHandlers;importjava.util.Base64;importjava.util.Map;String TEAM_ID ="YOUR_TEAM_ID";String DEVELOPER_KEY ="YOUR_DEVELOPER_KEY";String authorizationHeader = "Bearer " + Base64.getEncoder().encodeToString((TEAM_ID + ":" + DEVELOPER_KEY).getBytes());
//Put your library id here - this value is just an exampleString libraryId ="45d125d8-bac9-43a5-a6a8-311a5433239d";HttpRequest request =HttpRequest.newBuilder().GET().uri(newURI("https://api.digitalsamba.com/api/v1/libraries/"+ libraryId +"/files")).header("Authorization", authorizationHeader).build();HttpClient client =HttpClient.newHttpClient();HttpResponse<String> response =client.send(request,BodyHandlers.ofString());System.out.println("Status code: "+response.statusCode());System.out.println("Body: "+response.body());
Response (200 OK)
{"total_count":6124,"data": [ {"id":"2e74f71d-5eb5-45b1-9493-6461e5400e8f","folder_id":"e6a08bd6-7262-4fa2-8adf-1f7ddefe6907","name":"nightjar.jpg","type":"image","size":637962,"source":"api","status":"completed","created_at":"2024-10-14T11:44:57Z" }, ...............99 more files............... ]}
The total_count is the total amount of files you have in the library. It is NOT the amount of files in the current page returned in the data array. In the above example you have 6124 files in total, but in the data array there will be maximum 100 files (the default limit argument value).
importcom.fasterxml.jackson.databind.ObjectMapper;importjava.net.URI;importjava.net.http.HttpClient;importjava.net.http.HttpRequest;importjava.net.http.HttpResponse;importjava.net.http.HttpResponse.BodyHandlers;importjava.util.Base64;importjava.util.Map;String TEAM_ID ="YOUR_TEAM_ID";String DEVELOPER_KEY ="YOUR_DEVELOPER_KEY";String authorizationHeader = "Bearer " + Base64.getEncoder().encodeToString((TEAM_ID + ":" + DEVELOPER_KEY).getBytes());
//Put your library id here - this value is just an exampleString libraryId ="45d125d8-bac9-43a5-a6a8-311a5433239d";//Put your file id here - this value is just an exampleString fileId ="2e74f71d-5eb5-45b1-9493-6461e5400e8f";HttpRequest request =HttpRequest.newBuilder().GET().uri(newURI("https://api.digitalsamba.com/api/v1/libraries/"+ libraryId +"/files/"+ fileId)).header("Authorization", authorizationHeader).build();HttpClient client =HttpClient.newHttpClient();HttpResponse<String> response =client.send(request,BodyHandlers.ofString());System.out.println("Status code: "+response.statusCode());System.out.println("Body: "+response.body());
importcom.fasterxml.jackson.databind.ObjectMapper;importjava.net.URI;importjava.net.http.HttpClient;importjava.net.http.HttpRequest;importjava.net.http.HttpResponse;importjava.net.http.HttpResponse.BodyHandlers;importjava.util.Base64;importjava.util.Map;String TEAM_ID ="YOUR_TEAM_ID";String DEVELOPER_KEY ="YOUR_DEVELOPER_KEY";String authorizationHeader = "Bearer " + Base64.getEncoder().encodeToString((TEAM_ID + ":" + DEVELOPER_KEY).getBytes());
//Put your library id here - this value is just an exampleString libraryId ="45d125d8-bac9-43a5-a6a8-311a5433239d";//Put your file id here - this value is just an exampleString fileId ="2e74f71d-5eb5-45b1-9493-6461e5400e8f";HttpRequest request =HttpRequest.newBuilder().GET().uri(newURI("https://api.digitalsamba.com/api/v1/libraries/"+ libraryId +"/files/"+ fileId +"/links")).header("Authorization", authorizationHeader).build();HttpClient client =HttpClient.newHttpClient();HttpResponse<String> response =client.send(request,BodyHandlers.ofString());System.out.println("Status code: "+response.statusCode());System.out.println("Body: "+response.body());