On a recent case, a Business Partner asked us for a method to update and retrieve documents on Quickr 8.5.2 for Domino using only HTTP requests.
This functionality is provided by the Quickr API.
Here are the shorts tests we prepared for checking and evaluating the functionality that the API provides.
How to check the library ID:
1. Go to the Library in Quickr
2. Go to the bottom of the page and right click "Subscribe to this folder" and copy the feed URL
3. The feed will look like the following example:
http://quickrdomino85.ibm.com/dm/atom/library/_Pcustomizetest1_RMain.nsf/view/_Pcustomizetest1_RMain.nsf_FCD0EF97D625305B90525670800167213/feed?sK=modified&sO=desc
The Library ID for this place is "_Pcustomizetest1_RMain.nsf". Use that identified in the API to access the library resources.
The ID for the Library view is "_Pcustomizetest1_RMain.nsf_FCD0EF97D625305B90525670800167213"
Before the tests:
1. Install the RESTClient Firefox Add-on (or any equivalent software)
2. Any time you send an HTTP request to non-Public Places, you need to send the HTTP request with authentication. For this do the following:
- If you are using the RESTClient just click on

and Select Basic authentication and enter your Quickr credentials.
- If you are using another client, add the Header parameter "Authentication: Basic <authentication_code>". The authentication code is a 64bit encoding of the string <username>:<password>.
So, for example, for user "administrator" with password "passw0rd", the string will be administrator:passw0rd and the encoding will be "YRWtaW5pc3RyYXRvcjpwYXNzdzByZA=="
3. Check the API documentation in the Quickr wiki. The examples used here come from the instructions on the documentation.
Retrieve All Documents in a library:
The URL shown for this is: /library/{library-id}/view/AllDocuments/feed
For our example library, the id is _Pcustomizetest1_RMain.nsf
Put the full URL on the RESTClient as shown below:
Send the request.
This request will show all entries in the INDEX view.
You can view the response on the tabs below. Use the header to check the response type (success/fail code) and use the body to get the information.
You can see what information comes in the Formatted XML tab.
Each entry has it's own <entry> tag and all listing information, including the links to feeds and documents, comes inside a tag.
Retrieve a Document:
After performing the test above select a document and use it's URL for this test.
The URL for this one is /library/{library-id}/document/{document-idorlabel}/entry
As you can see from the "self" link above, the full URL, that we will use, is:
http://quickrdomino85.ibm.com/dm/atom/library/_Pcustomizetest1_RMain/document/_Pcustomizetest1_RMain_DCADF37A6F21DC0124825789B00169242_AImplementation_20Step.doc/entry
Send it. You will get all the Item detailed information, including content and attachment links for direct download.
The "src" link at the end for example allows you to download the file directly.
Create a document:
This gets a bit more complicated, since attributes and information needs to be passed to the Quickr server.
You need to generate the correct XML and send it as the request body.
URL is /library/{library-id}/feed using POST
In this case we need to add some header parameters and the document contents in Request Body.
- First example is for creating an Upload entry of a plain text file:
http://quickrdomino85.ibm.com/dm/atom/library/_Pcustomizetest1_RMain.nsf/feed?doctype=[@D94913AFBEAB46DA8052576A1006611BC]
(D94913AFBEAB46DA8052576A1006611BC is the Content type for "Upload". You can find out the document types using the API as well)
Here we are adding documents to the Index view.
Result:
- In a second example, we will upload a .csv on the Library view.
Result:
NOTE: I only used plain text file types because the RESTClient won't allow me to send a proper representation of other media in binary data.
This is only a subset of what the API can do. The API contains all the instructions needed to create a client from scratch: Administrative tasks, create/delete/edit places/documents/folders and retrieve all lists and views.