Search code examples
apiibm-connectionsibm-sbt

Add file programmatically to IBM Connections Community


I am trying to upload files programmatically to an IBM Connections Community File library. I am able to upload to files and then share with the community, but unfortunately is not the desired behavior.

I followed the API documentation (http://www-10.lotus.com/ldd/lcwiki.nsf/xpAPIViewer.xsp?lookupName=IBM+Connections+5.0+API+Documentation#action=openDocument&res_title=Creating_community_files_ic50&content=apicontent)

I am sending a POST to this URL: /files/basic/api/community/{community_uuid}/introspection

I tried using a file Atom Entry document, and Content-Type:application/atom+xml But it's not working and giving me a 405 with following error: UnsupportedOperation

-> Request sent

POST /files/basic/api/community/00f04081-f000-4752-bd88-8b73d281fb19/introspection Content-Type: application/atom+xml <?xml version='1.0' encoding='UTF-8'?> <entry xmlns:thr='http://purl.org/syndication/thread/1.0' xmlns:opensearch='http://a9.com/-/spec/opensearch/1.1/' xmlns:snx='http://www.ibm.com/xmlns/prod/sn' xmlns:td='urn:ibm.com/td' xmlns='http://www.w3.org/2005/Atom'> <td:label>test-restore20</td:label> <title type="text">test-restore2</title></entry>

I tried using the same method than for stand alone file, with a basic header but still giving me a 405 with following error: UnsupportedOperation

-> Request sent: POST /files/basic/api/community/00f04081-f000-4752-bd88-8b73d281fb19/introspection Content-Type: binary/octet-stream X-Update-Nonce:<Nonce> Slug:TMap_Next_Book.pdf Filename: /Users/Downloads/TMap_Next_Book.pdf

When I upload to myfile, works fine -> request sent:

POST https://greenhouse.lotus.com/files/basic/api/myuserlibrary/feed X-Update-Nonce: <Nonce> Slug: test-restore2 Content-Type: application/binary Filename: /Users/Downloads/client-error-log.zip

I tried the Playground, but not well documented for that part, so so far no success.

Any of you were able to do that, and would be able to share the solution?

Thanks.


Solution

  • Rightfully this document should be called working with IBM Connections Community Files http://www-10.lotus.com/ldd/lcwiki.nsf/xpAPIViewer.xsp?lookupName=IBM+Connections+5.0+API+Documentation#action=openDocument&res_title=Creating_community_files_ic50&content=apicontent

    The introspection endpoint should be called to get the "community collection document feed"

    it doesn't look like you have the URL parameter which is required. You should use the URL with a GET /files/basic/api/community/3a246a15-b4d6-44e1-a01d-1c3d89f1f9a4/introspection?communityUuid=3a246a15-b4d6-44e1-a01d-1c3d89f1f9a4

    Then you'll look for Community Collection Documents Feed /

    You'll then POST your file to the href --- https://greenhouse.lotus.com/files/basic/api/collection/e78ba00e-cee6-460f-a9ee-0350bf344e0b/feed

    I've asked the team to change the title of the page.