Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Panel
titleSpace REST Methods

Get Spaces

  • Purpose: Provides a listing of all of the spaces that a customer has created
  • Request: GET https://host:port/durastore/spaces ? (storeID)
  • Response Code: 200 (on success)
  • Response Body: XML similar to:

    Code Block
    <spaces>
      <space id="space1" />
      <space id="space2" />
    </spaces>
    

Get Space

  • Purpose: Provides a listing of the contents of a space along with space properties
  • Request: GET https://host:port/durastore/spaceID? (storeID) (prefix) (maxResults) (marker)
    • storeID (optional) - ID of the content storage provider to query (default is primary store)
    • prefix (optional) - Only retrieve content ids with this prefix (default is all content ids)
    • maxResults (optional) - The maximum number of content IDs to return in the list (default is 1000)
      note: the maximum allowable value for maxResults is 1000. Any larger value will be reduced to 1000.
    • marker (optional) - The content ID marking the last item in the previous set (default is the first set of ids)
  • Response Code: 200 (on success)
  • Response Body: XML similar to:

    Code Block
    <space id="space1">
      <item>Image 1</item>
      <item>Image 2</item>
    </space>
    
  • Response Headers: All available space properties, example:

    Code Block
    x-dura-meta-space-count: 65
    x-dura-meta-space-access: OPEN
    x-dura-meta-space-created: Mon, 01 Jan 2000 08:00:00 EST
    x-dura-meta-custom-property: Custom Property Value
    

Get Space Properties

  • Purpose: Provides all space properties
  • Request: HEAD https://host:port/durastore/spaceID ? (storeID)
  • Response Code: 200 (on success)
  • Response Headers: Same as for Get space (above)

Get Space ACLs

  • Purpose: Provides all space ACLs, with values of 'r' (read) and 'w' (read/write)
  • Request: HEAD https://host:port/durastore/acl/spaceID ? (storeID)
  • Response Code: 200 (on success)
  • Response Headers: All available space ACLs, example:

    Code Block
    x-dura-meta-acl-user0: WRITE
    x-dura-meta-acl-user1: WRITE
    x-dura-meta-acl-group-curators: READ
    

Create Space

  • Purpose: Creates a new space
  • Request: PUT https://host:port/durastore/spaceID ? (storeID)
  • Request Headers: Properties about the space, example:

    Code Block
    x-dura-meta-space-access: OPEN
    x-dura-meta-custom-property: Custom Property Value
    
  • Response Code: 201 (on success)
  • Response Headers: Location of the new space (i.e. the URL used to create the space), example:

    Code Block
      Location: https://myhost:8080/durastore/space1
    

Set Space Properties

  • Purpose: Updates the properties associated with a space
  • Request: POST https://host:port/durastore/spaceID ? (storeID)
  • Request Headers: Same as Create space (above)
  • Response Code: 200 (on success)
  • Response Body: "Space $spaceID updated successfully" (on success)

Set Space ACLs

  • Purpose: Updates the ACLs associated with a space
  • Request: POST https://host:port/durastore/acl/spaceID ? (storeID)
  • Request Headers: For 'user' ACLs the header prefix must be 'x-dura-meta-acl-' and for 'groups' the header prefix must be 'x-dura-meta-acl-group-'. Allowable values for ACL headers are: 'READ' and 'WRITE'.
    Example:

    Code Block
    x-dura-meta-acl-user0: WRITE
    x-dura-meta-acl-user1: WRITE
    x-dura-meta-acl-group-curators: READ
    
  • Response Code: 200 (on success)
  • Response Body: "Space $spaceID ACLs updated successfully" (on success)

Delete Space

  • Purpose: Deletes a space
  • Request: DELETE https://host:port/durastore/spaceID ? (storeID)
  • Response Code: 200 (on success)
  • Response Body: "Space $spaceID deleted successfully" (on success)

...

Panel
titleService REST Methods

Get Services

  • Purpose: Retrieves a listing of services, along with their configuration options
  • Request: GET https://host:port/duraservice/services? (show)
    • Parameter options for show (optional)
      1. available (default) - Includes only services which have not been deployed but are available for deployment
      2. deployed - Includes only services which have been deployed and started
  • Response Code: 200 (on success)
  • Response Body: XML list of services (see service config xsd)

Get Service

  • Purpose: Retrieves information about a particular service including description, configuration options, and all deployments
  • Request: GET https://host:port/duraservice/serviceID
  • Response Code: 200 (on success)
  • Response Body: XML service (see service config xsd)

Get Deployed Service

  • Purpose: Retrieves information about a deployed service including description, configuration options, and a single deployment indicating the configuration options in use
  • Request: GET https://host:port/duraservice/serviceID/deploymentID
  • Response Code: 200 (on success)
  • Response Body: XML service (see service config xsd)

Get Deployed Service Properties

  • Purpose: Retrieves the runtime properties of a deployed service
  • Request: GET https://host:port/duraservice/serviceID/deploymentID/properties
  • Response Code: 200 (on success)
  • Response Body: XML service (simple xml Map serialization)

Deploy Service

  • Purpose: Deploys and starts an available service
  • Request: PUT https://host:port/duraservice/serviceID? (serviceHost)
    • Parameter value for serviceHost (optional) should indicate the services host on which the service should be deployed. Default is the primary customer host.
  • Request Body: XML user configuration indicating the config selections for the service (see user config portion of service config xsd)
  • Response Code: 201 (on success)
  • Response Header: Location header indicates the URL at which information about the deployed service can be retrieved (the URL for a get deployed service call) which includes the deploymentID

Update Service Configuration

  • Purpose: Updates the configuration of a deployed service
  • Request: POST https://host:port/duraservice/serviceID/deploymentID
  • Request Body: Updated XML user configuration indicating the config selections for the service (see user config portion of service config xsd)
  • Response Code: 200 (on success)

UnDeploy Service

  • Purpose: Stops and Undeploys a deployed service
  • Request: DELETE https://host:port/duraservice/serviceID/deploymentID
  • Response Code: 200 (on success)

...

Panel
titleInitialization REST Methods

Initialize Application

  • Purpose: Allows the initialization of duradmin
  • Request: POST https://host:port/duradmin/init
  • Request Body: XML similar to:

    Code Block
    xml
    xml
    <duradminConfig>
      <durastoreHost>[host]</durastoreHost>
      <durastorePort>[port]</durastorePort>
      <durastoreContext>durastore</durastoreContext>
      <duraserviceHost>[host]</duraserviceHost>
      <duraservicePort>[port]</duraservicePort>
      <duraserviceContext>duraservice</duraserviceContext>
    </duradminConfig>
    
  • Response Code: 200 (on success)
  • Response Body: "Initialization Successful" (on success)

Is Initialized

  • Purpose: Performs a check to determine if the DurAdmin application has been initialized
  • Request: GET https://host:port/duradmin/init
  • Response Code: 200 (if the application has been initialized), 503 (if the application has NOT been initialized)
  • Response Body: Text indicating whether initialization has occurred.

...

Panel
titleInitialization REST Methods

Initialize Application

  • Purpose: Allows the initialization of duraboss
  • Request: POST https://host:port/duraboss/init
  • Request Body: XML similar to:

    Code Block
    xml
    xml
    <durabossConfig>
      <reporterEnabled>[true|false]</reporterEnabled>
      <executorEnabled>[true|false]</executorEnabled>
      <auditorEnabled>[true|false]</auditorEnabled>
      <durastoreHost>[host]</durastoreHost>
      <durastorePort>[port]</durastorePort>
      <durastoreContext>durastore</durastoreContext>
      <duraserviceHost>[host]</duraserviceHost>
      <duraservicePort>[port]</duraservicePort>
      <duraserviceContext>duraservice</duraserviceContext>
      <notificationConfig>
        <type>EMAIL</type>
        <username>[username for notification system]</username>
        <password>[password for notification system]</password>
        <originator>[from email address]</originator>
        <admin>[administrator email address]</admin>
      </notificationConfig>
    </durabossConfig>
    
  • Response Code: 200 (on success)
  • Response Body: "Initialization Successful" (on success)

Is Initialized

  • Purpose: Performs a check to determine if the DuraBoss application has been initialized
  • Request: GET https://host:port/duraboss/init
  • Response Code: 200 (if the application has been initialized), 503 (if the application has NOT been initialized)
  • Response Body: Text indicating whether initialization has occurred.
Panel
titleReporter: Storage Report REST Methods

Get Latest Storage Report

  • Purpose: Provides the most current storage report in XML format
  • Request: GET https://host:port/duraboss/report/storage
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the storage report XSD

Get Storage Report List

  • Purpose: Provides a list of all storage report IDs
  • Request: GET https://host:port/duraboss/report/storage/list
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the storage report XSD

Get Storage Report

  • Purpose: Provides a specific storage report based on the provided report ID
  • Request: GET https://host:port/duraboss/report/storage/reportID
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the storage report XSD

Get Storage Report Info

  • Purpose: Provides a information about the current status of the storage reporting system
  • Request: GET https://host:port/duraboss/report/storage/info
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the storage report XSD

Start Storage Report

  • Purpose: Starts a storage report if one is not already running
  • Request: POST https://host:port/duraboss/report/storage
  • Response Code: 200 (on success)
  • Response Body: "Report Started" (on success), or ""Report Already In Progress" (if a report is already in progress)

Cancel Storage Report

  • Purpose: Cancels a running storage report
  • Request: DELETE https://host:port/duraboss/report/storage
  • Response Code: 200 (on success)
  • Response Body: "Storage report cancelled"

Schedule Storage Report

  • Purpose: Schedules a time for a storage report to be run
  • Request: POST https://host:port/duraboss/report/storage/schedule? (startTime) (frequency)
    • startTime: time (in milliseconds since the epoch) to begin the next storage report
    • frequency: time (in milliseconds) to wait between running reports (minimum value is 600000)
  • Response Code: 200 (on success)
  • Response Body: "Storage reports scheduled" (on success)

Cancel Storage Report Schedule

  • Purpose: Cancels all entries on the storage report schedule
  • Request: DELETE https://host:port/duraboss/report/storage/schedule
  • Response Code: 200 (on success)
  • Response Body: "Storage Reports schedule cancelled"
Panel
titleReporter: Service Report REST Methods

Get Deployed Services Report

  • Purpose: Provides a listing of the services which are currently deployed
  • Request: GET https://host:port/duraboss/report/service/deployed
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the service report XSDs

Get Completed Services Report

  • Purpose: Provides a listing of the most recent completed services
  • Request: GET https://host:port/duraboss/report/service? (limit)
    • Parameter value for limit (optional) should indicate the maximum number of services to return in the report (default is 20, max is 1000)
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the service report XSDs

Get Completed Services Report List

  • Purpose: Provides a listing of all service report IDs
  • Request: GET https://host:port/duraboss/report/service/list
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the service report XSDs

Get Services Report

  • Purpose: Provides a specific services report based on the provided report ID
  • Request: GET https://host:port/duraboss/report/service/reportID
  • Response Code: 200 (on success)
  • Response Body: XML, defined by the service report XSDs
Panel
titleExecutor REST Methods

Get Executor Status

  • Purpose: Provides a status of the Executor, which is the collected status of all Action Handlers
  • Request: GET https://host:port/duraboss/exec
  • Response Code: 200 (on success)
  • Response Body: XML serialization of status map

Get Supported Executor Actions

  • Purpose: Provides a listing of the actions which the Executor can perform
  • Request: GET https://host:port/duraboss/exec/action
  • Response Code: 200 (on success)
  • Response Body: XML serialization of the action set
Executor Actions

Action Name

Description

Request Body

start-bit-integrity

Instructs the bit integrity handler to begin the process at a given time and at a given frequency

start-time,frequency (where start-time is epoch date in milliseconds and frequency is number of milliseconds)

cancel-bit-integrity

Instructs the bit integrity handler to stop performing bit integrity checks and gracefully shut down

None

start-streaming

Starts the streaming service, so that media streaming can begin

None

stop-streaming

Shuts down the streaming service, stops streaming of all media

None

start-streaming-space

Begin streaming all content in the given space

Name of the space to stream

stop-streaming-space

Stop streaming content in the given space

Name of the space to end streaming

Perform an Executor Action

  • Purpose: Performs a specific Executor action based on the provided actionName
  • Request: POST https://host:port/duraboss/exec/actionName
  • Response Code: 200 (on success)

Shutdown Executor

  • Purpose: Requests that the Executor perform a graceful shutdown
  • Request: DELETE https://host:port/duraboss/exec
  • Response Code: 200 (on success)
Panel
titleAuditor REST Methods

Create Initial Audit Log

  • Purpose: Requests the creation of initial audit logs, and removal of any existing audit logs
  • Request: POST https://host:port/duraboss/audit
  • Response Code: 202 (on acceptance)

Get Audit Logs

  • Purpose: Provides a listing of the audit logs for the provided spaceId
  • Request: GET https://host:port/duraboss/audit/spaceId
  • Response Code: 200 (on success)
  • Response Body: Plain text listing of audit log contentIds

Shutdown Auditor

  • Purpose: Requests that the Auditor perform a graceful shutdown
  • Request: DELETE https://host:port/duraboss/audit
  • Response Code: 200 (on success)
  • Response Body: Plain text of "auditor shutting down"

...