Skip to content

External API for sharing (upload and download) #4532

Description

@ralfhauser

From an external application/service, I would like to allow uploads and later on downloads.

MTGap says in a separate mail conversation: <<I'm currently in the process of restructuring the Share API code here: #3969
So, ... [ http://owncloud.org/apps/share-api/ ] is ... outdated.
...there is already anonymous uploads supported in core...
There is no external API at the moment, but that is planned for a later date.>>

Quick illustration needs/wishes in pseudo-code:

  1. createDirectoryForAnonymousUpload(String name, String password, Date expiration)
  • any of the parameters could be left empty, i.e. ownClould would choose them for me
  • returns: URL, password, expiration-Date
  1. listDirectory(String name)
  • name could either bei the name of the directory or the URL from 1)
  • returns list of <filename, size, sha1 digest of file, sha256 digest of the file, createDate>, optionally also a list of who downloaded it when from where per file
  1. changePermissions(name, permissions, password, date) With that method, it should be possible to disallow upload, change the password, change the expiration date, and delete the contents (that could be a separate call)

As per http://doc.owncloud.org/server/5.0/developer_manual/app/appframework/externalapi.html from my Java App, I should be able to access this with authenticated requests over SSL - right?

Having 1) would be "must" for me, having 2) and 3) a nice-to-have

Can 1) be implemented using "generateTarget()" ? An example would be helpful

Furthermore 4) a call to obtain a second random URL for the former upload-now-download directory would be good.

P.S.: http://owncloud.org/apps/share-api/ mentions "Javadoc style documentation is included in OCP\Share" would it be possible to add a link to this, or can this only be accessed once I have the sources downloaded?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions