Description

Get information about directory objects. Directories are identified by sha1 checksums, compatible with Git directory identifiers. See swh.model.git_objects.directory_git_object in our data model module for details about how they are computed.

When given only a directory identifier, this endpoint returns information about the directory itself, returning its content (usually a list of directory entries). When given a directory identifier and a path, this endpoint returns information about the directory entry pointed by the relative path, starting path resolution from the given directory.

Request

GET https://archive.softwareheritage.org/api/1/directory/20a9cab973e164a8ed890956b879ba3f06409374/

Response

Body
[
    {
        "dir_id": "20a9cab973e164a8ed890956b879ba3f06409374",
        "length": null,
        "name": "0",
        "perms": 16384,
        "target": "8b4f2ee37b78082443a6e941d6ce2ed70473d0f1",
        "target_url": "https://archive.softwareheritage.org/api/1/directory/8b4f2ee37b78082443a6e941d6ce2ed70473d0f1/",
        "type": "dir"
    },
    {
        "dir_id": "20a9cab973e164a8ed890956b879ba3f06409374",
        "length": null,
        "name": "signed_succession",
        "perms": 16384,
        "target": "0fb9e7cc30856854078aedfdab71506feda26634",
        "target_url": "https://archive.softwareheritage.org/api/1/directory/0fb9e7cc30856854078aedfdab71506feda26634/",
        "type": "dir"
    }
]

URL Allowed Methods

https://archive.softwareheritage.org/api/1/directory/ (sha1_git) /[ (path) /]

GET, HEAD, OPTIONS

Arguments

sha1_git (string)

hexadecimal representation of the directory sha1_git identifier

path (string)

optional parameter to get information about the directory entry pointed by that relative path


Request headers

Accept

the requested response content type, either application/json (default) or application/yaml


Response headers

Content-Type

this depends on Accept header of request


Returns

array

an array of objects containing the following keys:

  • checksums (object): object holding the computed checksum values for a directory entry (only for file entries)

  • dir_id (string): sha1_git identifier of the requested directory

  • length (number): length of a directory entry in bytes (only for file entries) for getting information about the content MIME type

  • name (string): the directory entry name

  • perms (number): permissions for the directory entry

  • target (string): sha1_git identifier of the directory entry

  • target_url (string): link to /api/1/content/ or /api/1/directory/ depending on the directory entry type

  • type (string): the type of the directory entry, can be either dir, file or rev


HTTP status codes

200

no error

400

an invalid hash_type or hash has been provided

404

requested directory cannot be found in the archive


Examples

/api/1/directory/977fc4b98c0e85816348cebd3b12026407c368b6/
back to top