LOCKSS Configuration Service REST API
REST API of the LOCKSS Configuration Service
Version: 2.0.0
BasePath:/
BSD-3-Clause
https://opensource.org/licenses/BSD-3-Clause
Access
- HTTP Basic Authentication
[ Jump to Models ]
Table of Contents
Calculate an AUID for a hypothetical AU (calculateAuid)
Calculate an AUID for a hypothetical AU, given either a plugin ID and an auConfig map (for traditional AUs), or a handle and an optional plugin ID for NamedAUs
Consumes
This API call consumes the following media types via the request header:
application/x-www-form-urlencoded
Form parameters
pluginId (optional)
Form Parameter —
handle (optional)
Form Parameter —
auConfig (optional)
Form Parameter —
Return type
String
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
application/json
text/plain
Responses
200
Map containing the resulting AUID
String
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
500
Internal Server Error
Delete the configuration of an AU (deleteAuConfig)
Delete the configuration of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the configuration is\ \ to be deleted
Return type
Example data
Content-Type: application/json
{
"auId" : "auId",
"auConfig" : {
"key" : "auConfig"
}
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The deleted configuration of the specified AU
auConfiguration
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
500
Internal Server Error
Delete AUs (deleteAusDelete)
Delete a group of AUs given their identifiers
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The identifiers of the Archival Units to be deleted
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
}, {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the deleted AUs
400
Bad Request
401
Unauthorized
403
Forbidden
415
Unsupported Media Type
500
Internal Server Error
Get the configurations of all AUs (getAllAuConfig)
Get the configuration of all AUs
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId",
"auConfig" : {
"key" : "auConfig"
}
}, {
"auId" : "auId",
"auConfig" : {
"key" : "auConfig"
}
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The configuration of all AUs
401
Unauthorized
500
Internal Server Error
Up
get /auagreements/{auid}
Get the poll agreements of an AU (getAuAgreements)
Get the poll agreements of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the poll agreements\ \ are requested
Return type
String
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The poll agreements of the specified AU
String
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Get the configuration of an AU (getAuConfig)
Get the configuration of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the configuration is\ \ requested
Return type
Example data
Content-Type: application/json
{
"auId" : "auId",
"auConfig" : {
"key" : "auConfig"
}
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The configuration of the specified AU
auConfiguration
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Get the state of an AU (getAuState)
Get the state of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the state is requested
Return type
String
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The state of the specified AU
String
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Up
get /austatuses/{auid}
Get the status of an AU (getAuStatus)
Get the status of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the status is\ \ requested
Return type
Example data
Content-Type: application/json
{
"volume" : "volume"
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The status of the specified AU
auStatus
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Up
get /aususpecturls/{auid}
Get the suspect URL versions of an AU (getAuSuspectUrlVersions)
Get the suspect URL versions of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the suspect URL\ \ versions are requested
Return type
String
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The suspect URL versions of the specified AU
String
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Query for archival unit properties (getAuqueries)
Query for archival units that meet a set of specified\ \ conditions
Query parameters
auQuery (required)
Query Parameter — The query that specifies the archival units to be\ \ returned
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId"
}, {
"auId" : "auId"
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the requested archival units
400
Bad Request
401
Unauthorized
500
Internal Server Error
Get the NoAuPeerSet object of an AU (getNoAuPeers)
Get the NoAuPeerSet object of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the NoAuPeerSet\ \ object is requested
Return type
String
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The NoAuPeerSet object of the specified AU
String
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Up
patch /auagreements/{auid}
Update the poll agreements of an AU (patchAuAgreements)
Update the poll agreements of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the poll agreements\ \ are to be updated
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The parts of the Archival Unit poll agreements to be\ \ updated
Request headers
Responses
200
OK
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
415
Unsupported Media Type
500
Internal Server Error
Up
patch /austates/{auid}
Update the state of an AU (patchAuState)
Update the state of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the state is to be\ \ updated
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The parts of the Archival Unit state to be updated
Request headers
Responses
200
OK
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
415
Unsupported Media Type
500
Internal Server Error
Add AUs (postAus)
Add a group of AUs given their identifiers
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The identifiers of the Archival Units to be added
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
}, {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the added AUs
400
Bad Request
401
Unauthorized
403
Forbidden
415
Unsupported Media Type
500
Internal Server Error
Store the configuration of an AU (putAuConfig)
Store the configuration of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for this configuration.
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The Archival Unit configuration to be stored
Responses
200
OK
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
415
Unsupported Media Type
500
Internal Server Error
Up
put /ausubstances/{auid}
Update the substance of an AU (putAuSubstanceCheck)
Update the substance of an AU given the AU identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the substance check\ \ is requested
Return type
Example data
Content-Type: application/json
{
"oldState" : "Unknown",
"errorMessage" : "errorMessage",
"id" : "id",
"newState" : "Unknown"
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The substance check of the specified AU
checkSubstanceResult
400
Bad Request
401
Unauthorized
404
Not Found
500
Internal Server Error
Up
put /aususpecturls/{auid}
Update the suspect URL versions of an AU (putAuSuspectUrlVersions)
Update the suspect URL versions of an AU given the AU\ \ identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the suspect URL\ \ versions are to be updated
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The parts of the Archival Unit suspect URL versions to\ \ be updated
Request headers
Responses
200
OK
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
415
Unsupported Media Type
500
Internal Server Error
Deactivate AUs (putAusDeactivate)
Deactivate a group of AUs given their identifiers
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The identifiers of the Archival Units to be deactivated
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
}, {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the deactivated AUs
400
Bad Request
401
Unauthorized
403
Forbidden
415
Unsupported Media Type
500
Internal Server Error
Up
put /aus/{auid}/mddisable
Disable AU metadata extraction (putAusMdDisable)
Disable the metadata extraction for an AU given its\ \ identifier
Path parameters
auid (required)
Path Parameter — The identifier of the Archival Units for which metadata\ \ extraction is to be disabled
Return type
Example data
Content-Type: application/json
{
"success" : true,
"errorMessage" : "errorMessage",
"id" : "id"
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the AU for which metadata extraction\ \ has been disabled
requestAuControlResult
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
409
Conflict
415
Unsupported Media Type
500
Internal Server Error
Up
put /aus/{auid}/mdenable
Enable AU metadata extraction (putAusMdEnable)
Enable the metadata extraction for an AU given its identifier
Path parameters
auid (required)
Path Parameter — The identifier of the Archival Units for which metadata\ \ extraction is to be enabled
Return type
Example data
Content-Type: application/json
{
"success" : true,
"errorMessage" : "errorMessage",
"id" : "id"
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the AU for which metadata extraction\ \ has been enabled
requestAuControlResult
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
409
Conflict
415
Unsupported Media Type
500
Internal Server Error
Reactivate AUs (putAusReactivate)
Reactivate a group of AUs given their identifiers
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The identifiers of the Archival Units to be reactivated
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
}, {
"auId" : "auId",
"name" : "name",
"message" : "message",
"isSuccess" : true
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the reactivated AUs
400
Bad Request
401
Unauthorized
403
Forbidden
415
Unsupported Media Type
500
Internal Server Error
Update the NoAuPeerSet object of an AU (putNoAuPeers)
Update the NoAuPeerSet object of an AU given the AU\ \ identifier
Path parameters
auid (required)
Path Parameter — The identifier of the AU for which the NoAuPeerSet\ \ object is to be updated
Consumes
This API call consumes the following media types via the request header:
Request body
Body Parameter — The parts of the Archival Unit NoAuPeerSet object to be\ \ updated
Request headers
Responses
200
OK
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
415
Unsupported Media Type
500
Internal Server Error
Up
get /config/lastupdatetime
Get the timestamp when the configuration was last updated (getLastUpdateTime)
Get the timestamp when the configuration was last updated
Return type
Date
Example data
Content-Type: application/json
"2000-01-23T04:56:07.000+00:00"
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The timestamp when the configuration was last updated
Date
401
Unauthorized
500
Internal Server Error
Up
get /config/loadedurls
Get the URLs from which the configuration was loaded (getLoadedUrlList)
Get the URLs from which the configuration was actually\ \ loaded, reflecting any failover to local copies
Return type
array[String]
Example data
Content-Type: application/json
[ "", "" ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The URLs from which the configuration was loaded
401
Unauthorized
500
Internal Server Error
Get the platform configuration (getPlatformConfig)
Get the platform configuration
Return type
Example data
Content-Type: application/json
{
"hostName" : "hostName"
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The platform configuration
platformConfigurationWsResult
401
Unauthorized
500
Internal Server Error
Up
get /config/file/{sectionName}
Get the named configuration file (getSectionConfig)
Get the configuration file stored for a given name
Path parameters
sectionName (required)
Path Parameter — The name of the section for which the configuration file\ \ is requested
Request headers
Return type
byte[]
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The named configuration file
byte[]
304
Not Modified
400
Bad Request
401
Unauthorized
404
Not Found
406
Not Acceptable
412
Precondition failed
500
Internal Server Error
Get the configuration file for a URL (getUrlConfig)
Get the configuration file stored for a given URL
Request headers
Query parameters
url (required)
Query Parameter — The URL for which the configuration is requested
Return type
byte[]
Example data
Content-Type: application/json
""
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The configuration file for the URL
byte[]
304
Not Modified
400
Bad Request
401
Unauthorized
404
Not Found
406
Not Acceptable
412
Precondition failed
500
Internal Server Error
Up
put /config/file/{sectionName}
Store the named configuration file (putConfig)
Store the configuration file for a given name
Path parameters
sectionName (required)
Path Parameter — The name of the section for which the configuration file\ \ is to be stored
Consumes
This API call consumes the following media types via the request header:
Request headers
Form parameters
configFile (required)
Form Parameter — format: binary
Responses
200
OK
400
Bad Request
401
Unauthorized
403
Forbidden
404
Not Found
412
Precondition failed
415
Unsupported Media Type
500
Internal Server Error
Request a configuration reload (putConfigReload)
Request that the stored configuration is reloaded
Responses
200
OK
401
Unauthorized
403
Forbidden
500
Internal Server Error
Query for plugin properties (getPlugins)
Query for plugins that meet a set of specified conditions
Query parameters
pluginQuery (required)
Query Parameter — The query that specifies the plugins to be returned
Return type
Example data
Content-Type: application/json
[ {
"registry" : "registry",
"pluginId" : "pluginId",
"name" : "name",
"definition" : {
"key" : "definition"
},
"type" : "type",
"auCount" : 0,
"version" : "version",
"url" : "url",
"publishingPlatform" : "publishingPlatform"
}, {
"registry" : "registry",
"pluginId" : "pluginId",
"name" : "name",
"definition" : {
"key" : "definition"
},
"type" : "type",
"auCount" : 0,
"version" : "version",
"url" : "url",
"publishingPlatform" : "publishingPlatform"
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the requested plugins
400
Bad Request
401
Unauthorized
500
Internal Server Error
Get the status of the service (getStatus)
Get the status of the service
Return type
Example data
Content-Type: application/json
{
"startupStatus" : "NONE",
"reason" : "reason",
"readyTime" : 0,
"apiVersion" : "apiVersion",
"ready" : true,
"componentName" : "componentName",
"componentVersion" : "componentVersion",
"serviceName" : "serviceName",
"lockssVersion" : "lockssVersion"
}
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
The status of the service
apiStatus
401
Unauthorized
500
Internal Server Error
Query the TDB for AUs (getTdbAus)
Query the TDB for AUs that meet a set of specified conditions
Query parameters
tdbAuQuery (required)
Query Parameter — The query that specifies the TDB AUs to be returned
Return type
Example data
Content-Type: application/json
[ {
"auId" : "auId",
"pluginName" : "pluginName",
"tdbTitle" : {
"tdbPublisher" : {
"name" : "name"
},
"proprietaryids" : [ "proprietaryids", "proprietaryids" ],
"issns" : [ "issns", "issns" ],
"issn" : "issn",
"name" : "name",
"proprietaryid" : "proprietaryid",
"issnl" : "issnl",
"eissn" : "eissn",
"id" : "id",
"publicationtype" : "publicationtype",
"printissn" : "printissn"
},
"name" : "name",
"active" : true,
"params" : {
"key" : "params"
},
"down" : true,
"attrs" : {
"key" : "attrs"
},
"props" : {
"key" : "props"
}
}, {
"auId" : "auId",
"pluginName" : "pluginName",
"tdbTitle" : {
"tdbPublisher" : {
"name" : "name"
},
"proprietaryids" : [ "proprietaryids", "proprietaryids" ],
"issns" : [ "issns", "issns" ],
"issn" : "issn",
"name" : "name",
"proprietaryid" : "proprietaryid",
"issnl" : "issnl",
"eissn" : "eissn",
"id" : "id",
"publicationtype" : "publicationtype",
"printissn" : "printissn"
},
"name" : "name",
"active" : true,
"params" : {
"key" : "params"
},
"down" : true,
"attrs" : {
"key" : "attrs"
},
"props" : {
"key" : "props"
}
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the requested TDB AUs
400
Bad Request
401
Unauthorized
500
Internal Server Error
Query the TDB for Publishers (getTdbPublishers)
Query the TDB for Publishers that meet a set of specified\ \ conditions
Query parameters
tdbPublisherQuery (required)
Query Parameter — The query that specifies the TDB Publishers to be\ \ returned
Return type
Example data
Content-Type: application/json
[ {
"name" : "name"
}, {
"name" : "name"
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the requested TDB Publishers
400
Bad Request
401
Unauthorized
500
Internal Server Error
Query the TDB for Titles (getTdbTitles)
Query the TDB for Titles that meet a set of specified\ \ conditions
Query parameters
tdbTitleQuery (required)
Query Parameter — The query that specifies the TDB Titles to be returned
Return type
Example data
Content-Type: application/json
[ {
"tdbPublisher" : {
"name" : "name"
},
"proprietaryids" : [ "proprietaryids", "proprietaryids" ],
"issns" : [ "issns", "issns" ],
"issn" : "issn",
"name" : "name",
"proprietaryid" : "proprietaryid",
"issnl" : "issnl",
"eissn" : "eissn",
"id" : "id",
"publicationtype" : "publicationtype",
"printissn" : "printissn"
}, {
"tdbPublisher" : {
"name" : "name"
},
"proprietaryids" : [ "proprietaryids", "proprietaryids" ],
"issns" : [ "issns", "issns" ],
"issn" : "issn",
"name" : "name",
"proprietaryid" : "proprietaryid",
"issnl" : "issnl",
"eissn" : "eissn",
"id" : "id",
"publicationtype" : "publicationtype",
"printissn" : "printissn"
} ]
Produces
This API call produces the following media types according to the request header;
the media type will be conveyed by the response header.
Responses
200
Information about the requested TDB Titles
400
Bad Request
401
Unauthorized
500
Internal Server Error
[ Jump to Methods ]
Table of Contents
apiStatus
auConfiguration
auStatus
auWsResult
auids_body
checkSubstanceResult
contentConfigurationResult
file_sectionName_body
platformConfigurationWsResult
pluginWsResult
requestAuControlResult
tdbAuWsResult
tdbPublisherWsResult
tdbTitleWsResult
The status information of the service
apiVersion
componentName (optional)
String The name of the component
componentVersion (optional)
String The version of the component software
lockssVersion (optional)
String The version of the LOCKSS system
ready
Boolean The indication of whether the service is available
serviceName (optional)
String The name of the service
readyTime (optional)
Long The time the service last became ready. format: int64
reason (optional)
String The reason the service isn't ready.
startupStatus (optional)
String Enum indicating progress of plugin/AU processing at startup.
NONE
PLUGINS_CRAWLING
PLUGINS_COLLECTED
PLUGINS_LOADING
PLUGINS_LOADED
AUS_STARTING
AUS_STARTED
The encapsulation of an Archival Unit configuration
auId
String The identifier of the Archival Unit
auConfig
The status of an archival unit
volume
String The volume of the archival unit
The properties of an archival unit
auId
String The identifier of the archival unit
pluginId (optional)
handle (optional)
String the handle of a NamedArchivalUnit
auConfig (optional)
The configuration information for this au (as a json map).
The status of an archival unit
id
String The identifier of the archival unit
oldState
String An indication of whether the result is successful
Unknown
Yes
No
newState
String An indication of whether the result is successful
Unknown
Yes
No
errorMessage
String The error message as a result of the operation
The encapsulation of the result of adding an Archival Unit
auId
String The identifier of the Archival Unit
name
String The name of the Archival Unit
isSuccess
Boolean An indication of whether the AU was successfully added or\ \ not
message
String A descriptive message regarding the result of the operation
configFile
byte[] The configuration file to be stored format: binary
The configuration of the platform
hostName
String name of the host server
The properties of a plugin
pluginId
String The identifier of the plugin
name
version
String The version of the plugin
type
definition
registry
String The registry of the plugin
url
auCount
Integer The count of Archival Units linked to the plugin
publishingPlatform
String The publishing platform of the plugin
The result of an archival unit generic control request
id
String The identifier of the archival unit
success
Boolean An indication of whether the result is successful
errorMessage
String The error message as a result of the operation
The properties of a TDB Archival Unit
auId (optional)
String The identifier of the Archival Unit
name (optional)
String The name of the Archival Unit
pluginName (optional)
String The name of the Archival Unit plugin
tdbTitle (optional)
tdbPublisher (optional)
down (optional)
Boolean An indication of whether the AU is marked as down or not
active (optional)
Boolean An indication of whether the AU is active or not
params (optional)
attrs (optional)
props (optional)
The properties of a TDB Publisher
name
String The name of the TDB Publisher
The properties of a TDB Title
name (optional)
String The name of the TDB Title
tdbPublisher (optional)
id (optional)
String The identifier of the TDB Title
proprietaryid (optional)
String The proprietary identifier of the TDB Title
proprietaryids (optional)
publicationtype (optional)
String The publication type of the TDB Title
issn (optional)
String The ISSN of the TDB Title
issnl (optional)
String The ISSNL of the TDB Title
eissn (optional)
String The eISSN of the TDB Title
printissn (optional)
String The print ISSN of the TDB Title
issns (optional)