Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
You may submit digital objects to Merritt several different ways, based on what’s easiest for your local workflow:
- Merritt User Interface: directly submit digital objects, either one-by-one or in batches, using the Merritt web interface.
- Merritt API: programmatically submit digital objects either one-by-one or in batches using the Merritt API.
Submitting Objects through the Merritt User Interface
The Add Object screen allows you to submit digital objects one-by-one or in batches. Single objects can be uploaded directly from your local drive. Batches must be submitted via a manifest file, which you prepare and upload from your local drive.
-- Screen shot --
The following is a brief description of the options for adding objects. For any option involving a manifest, consult the detailed Using a Manifest guide.
Single object: file
Upload a single file from a local drive.
Single object: container
Upload a .zip or .tar file from your local drive. This container file may contain any number of component files or associated metadata files for a single object.
Single object: manifest
As an alternative to wrapping a multi-file object in a .zip or .tar file, you can also create a .checkm format text manifest to upload the object. You will need to post all component files for the object on a web server, then upload a manifest file that points to the object components. This option allows you to provide and validate checksum information for each file in an object. Details are provided in the Using a Manifest guide.
Batch: of files
Use this option when you have a long list of simple objects to add. This option requires use of a manifest file. You can provide metadata for each object in the manifest.
Batch: of containers
Use this option when you have many complex objects to add and you have enclosed each object in a .zip or .tar file. This option requires use of a manifest file.
Batch: of object manifests
Use this option if you have prepared object manifests for a large number of objects.
|IF YOU HAVE:||THE BEST SUBMISSION OPTION IS:|
|Just a few simple objects, each consisting of a single file||Upload directly from the Add Objects page|
|Just a few complex objects, each consisting of multiple files (these may include metadata files||Create a container file (.zip or .tar) for each object, then upload each one directly from the Add Object page. When you upload a .zip or .tar file, the object's component files will be extracted and made accessible through the Display Object and Display Version pages.
Create an object manifest file, then upload the manifest from the Add Object page. When you use an object manifest, every component file must be posted on a web server; the manifest must include each file's URL.
|A large number of either simple or complex objects||Create a batch manifest file, then upload that file from the Add Object page.
A batch manifest can point to either single-file simple objects, container files, or to object manifest files--but not to all three. If you have all of these, you will need to create three manifests--one for each type of object.
All of the files in your manifest must be posted on a web server; the manifest must include each file's URL.
When you add an object you will receive a confirmation screen with a batch ID number. This screen confirms that the object has been submitted, but does not yet confirm that the object has been successfully ingested. Merritt takes a number of steps (such as fixity checking) before an object is ingested. In most cases it will take a couple of minutes before the object will be retrieved from a search and displayed.
You will receive an email with a confirmation when the object has either succeeded or failed the ingest process. Any error details will be provided in the email message; you can contact firstname.lastname@example.org if you have any questions.
Merritt allows you to provide title, creator, date and local identifier metadata either by filling out the Optional Description form, by providing metadata in a manifest file, or by submitting an mrt-erc.txt file with the object. The metadata you provide becomes searchable in Merritt; we strongly recommend that you provide at least title information. Further details are in the Merritt and Metadata guide.
Submitting Objects through the Merritt API
You can programmatically submit digital objects one-by-one or in batches, using our API. As described in the Ingest specification document, the request arguments are:
(optional) The name of the file
The file itself (e.g., the single file; or the container file, such as a .zip or .tar file). If submitting a manifest, indicate the .checkm format text manifest file here.; consult the detailed Using a Manifest guide for additional information on preparing the manifest
The submission profile, which we will provide to the submitter
(optional) ARK identifier, if known
(optional) local identifier, if known
(optional) valid values:
(optional) digest value, hex-encoded string
(optional) descriptive note
(optional) valid values:
All of the enumerated values (file type, digest type, response form) are case-insensitive. Sample cURL:
curl --silent -u user:password \ -F "file=@ucsf_etd_200609.checkm" \ -F "type=container-batch-manifest" \ -F "submitter=username" \ -F "responseForm=xml" \ -F "profile=merritt_demo_content" \ https: //merritt-stage.cdlib.org/object/ingest