Retrieve status#

GET /1/(str:collection-name)/(int:deposit-id)/status/#

Returns deposit’s status.

The different statuses:

  • partial: multipart deposit is still ongoing

  • deposited: deposit completed, ready for checks

  • rejected: deposit failed the checks

  • verified: content and metadata verified, ready for loading

  • loading: loading in-progress

  • done: loading completed successfully

  • failed: the deposit loading has failed

Also known as STATE-IRI

Example query:

GET /1/hal/1/status/ HTTP/1.1
Host: deposit.softwareheritage.org
Authorization: Basic xxxxxxxxxxxx=

Example successful deposit response:

<entry xmlns="http://www.w3.org/2005/Atom"
       xmlns:sword="http://purl.org/net/sword/"
       xmlns:dcterms="http://purl.org/dc/terms/"
       xmlns:swhdeposit="https://www.softwareheritage.org/schema/2018/deposit"
       >
    <swhdeposit:deposit_id>160</swhdeposit:deposit_id>
    <swhdeposit:deposit_status>done</swhdeposit:deposit_status>
    <swhdeposit:deposit_status_detail>The deposit has been successfully loaded into the Software Heritage archive</swhdeposit:deposit_status_detail>
    <swhdeposit:deposit_swh_id>swh:1:dir:d83b7dda887dc790f7207608474650d4344b8df9</swhdeposit:deposit_swh_id>
    <swhdeposit:deposit_swh_id_context>swh:1:dir:d83b7dda887dc790f7207608474650d4344b8df9;origin=https://forge.softwareheritage.org/source/jesuisgpl/;visit=swh:1:snp:68c0d26104d47e278dd6be07ed61fafb561d0d20;anchor=swh:1:rev:e76ea49c9ffbb7f73611087ba6e999b19e5d71eb;path=/</swhdeposit:deposit_swh_id>
</entry>

Example rejeced deposit response:

<entry xmlns="http://www.w3.org/2005/Atom"
       xmlns:sword="http://purl.org/net/sword/"
       xmlns:dcterms="http://purl.org/dc/terms/"
       xmlns:swhdeposit="https://www.softwareheritage.org/schema/2018/deposit"
       >
    <swhdeposit:deposit_id>148</swhdeposit:deposit_id>
    <swhdeposit:deposit_status>rejected</swhdeposit:deposit_status>
    <swhdeposit:deposit_status_detail>- At least one url field must be compatible with the client&#39;s domain name (codemeta:url)</swhdeposit:deposit_status_detail>
</entry>

Note: older versions of the deposit used the http://www.w3.org/2005/Atom namespace instead of https://www.softwareheritage.org/schema/2018/deposit. Tags in the Atom namespace are still provided for backward compatibility, but are deprecated.

Request Headers:
Status Codes:

Rejected deposit#

It so happens that deposit could be rejected. In that case, the deposit_status_detail entry will explain failed checks.

Many reasons are possibles, here are some:

  • Deposit without software archive (main goal of the deposit is to deposit software source code)

  • Deposit with malformed software archive (i.e archive within archive)

  • Deposit with invalid software archive (corrupted archive, although, this one should happen during upload and not during checks)

  • Deposit with unsupported archive format

  • Deposit with missing metadata