Package searches can be performed by issuing HTTP GET requests of the form /rpc?v=5&type=search&by=field&arg=keywords where keywords is the search argument and field is one of the following values:

  • name (search by package name only)

  • name-desc (search by package name and description)

  • maintainer (search by package maintainer)

  • depends (search for packages that depend on keywords)

  • makedepends (search for packages that makedepend on keywords)

  • optdepends (search for packages that optdepend on keywords)

  • checkdepends (search for packages that checkdepend on keywords)

The by parameter can be skipped and defaults to name-desc.

If a maintainer search is performed and the search argument is left empty, a list of orphan packages is returned.

Package Details

Package information can be obtained by issuing HTTP GET requests of the form /rpc?v=5&type=info&arg[]=pkg1&arg[]=pkg2&… where pkg1, pkg2, … are the names of packages to retrieve package details for.

Request Methods

Historically, the type=multiinfo v=5 GET request has supported a particular ordering of arguments. The POST request argument ordering cannot be guaranteed, and so its behavior is different. Differences are described below:

GET

type=multiinfo arguments are parsed by iterating the query string from last to first key, looking for an arg or arg[]. Once one is found, behavior diverges depending on which is found first: the arg parameter is used as the sole argument or the arg[] parameters are built into a list until a non-argument key is encountered.

POST (experimental)

All provided instances of arg and arg[] given to type=multiinfo are supported in unison:

curl -d 'v=5' -d 'type=info' -d 'arg=one' -d 'arg[]=two' -d 'arg[]=three' ...

All other valid query types are supported without change.

Examples

search

/rpc?v=5&type=search&arg=foobar

search by maintainer

/rpc?v=5&type=search&by=maintainer&arg=john

search packages that have boost as makedepends

/rpc?v=5&type=search&by=makedepends&arg=boost

search with callback

/rpc?v=5&type=search&arg=foobar&callback=jsonp1192244621103

info

/rpc?v=5&type=info&arg[]=foobar

info with multiple packages

/rpc?v=5&type=info&arg[]=foo&arg[]=bar