Skip to main content
Skip table of contents

IPM Definitions

S3Serv supports IPM definitions for the following operations:

  • Copy S3 objects.

  • Delete S3 objects.

  • Put a BLOB contained in the request IPM as an S3 Object.

  • Get an S3 Object and return it as a BLOB in the reply IPM.

Every request and reply exchanged with S3Serv includes a header. Request and reply IPM layouts are described using NonStop DDL-style notation. Pre-generated formats are available in NonStop C and COBOL (1974).

Request Header

The request header identifies the specific request to S3Serv, along with a timeout value. The request header contains a code to identify the request.

Request Code

TEXT
DEF S3-RQ-CODE-ENUM                     TYPE ENUM BEGIN.
  89  S3-RQ-COPY-OBJECT                 VALUE 1.            ! Copy an S3 object.
  89  S3-RQ-GET-BLOB                    VALUE 2.            ! Retrieve an S3 object as a BLOB.
  89  S3-RQ-PUT-BLOB                    VALUE 3.            ! Store a BLOB as an S3 object.
  89  S3-RQ-REMOVE-OBJECT               VALUE 4.            ! Delete an S3 object.
END.

Request Header

CODE
DEF S3-HEADER-RQ.
  02  RQ-CODE                           TYPE S3-RQ-CODE-ENUM.
  02  RESERVED                          TYPE CHARACTER 30.  ! reserved, must be binary 0.
END

Reply Header

The S3Serv reply header is the same for every reply.  The reply header contains a code to indicate the result of the request. 

Reply Code

CODE
DEF S3-RP-CODE-ENUM                     TYPE ENUM BEGIN.
  89  S3-SUCCESS                        VALUE 0.            ! Success.
  89  S3-INFO                           VALUE 1.            ! The request completed with warnings.
  89  S3-ERROR                          VALUE 2.            ! An error occurred.
END

Info Code

CODE
DEF S3-INFO-CODE-ENUM                   TYPE ENUM BEGIN.
  89  S3-INFO-TRUNCATION                VALUE 100.          ! Get BLOB truncation occurred.
END

Reply Header

CODE
DEF S3-HEADER-RP.
  02  RP-CODE                           TYPE S3-RP-CODE-ENUM.
  02  RP-INFO                           TYPE S3-INFO-CODE-ENUM.
  02  RESERVED                          TYPE CHARACTER 28.
END

Error Reply

If the reply code value S3-ERROR, then an Error Reply is returned instead of a request-specific reply.  The list of error codes and the layout of the Error Reply are shown below. 

Error Codes

CODE
DEF S3-ERROR-ENUM                       TYPE ENUM BEGIN.
  89  S3-ERROR-HEADER                   VALUE 1.
  89  S3-ERROR-REQUEST-CODE             VALUE 2.            ! Unrecognized request code.
  89  S3-ERROR-INVALID-SOURCE-NAME      VALUE 3.            ! The source name is invalid.
  89  S3-ERROR-INVALID-TARGET-NAME      VALUE 4.            ! The target name is invalid.
  89  S3-ERROR-OBJECT-NOT-FOUND         VALUE 5.            ! The referenced S3 object was not found.
  89  S3-ERROR-FILE-NOT-FOUND           VALUE 6.            ! The referenced NonStop file was not found.
  89  S3-ERROR-ACCESS-VIOLATION         VALUE 7.            ! An S3 access violation occurred.
  89  S3-ERROR-OBJECT-NOT-EMPTY         VALUE 8.            ! Attempt to delete an non-empty S3 bucket.
  89  S3-ERROR-REQ-NOT-SUPPORTED        VALUE 9.            ! Attempt to copy a NonStop file to another Nonstop file.
  89  S3-ERROR-S3-SVC-ERROR             VALUE 10.           ! An error occurred with the S3 service.
  89  S3-ERROR-S3-SVC-UNAVAILABLE       VALUE 11.           ! The S3 service is not available.
  89  S3-ERROR-FILE-IO-ERROR            VALUE 12.           ! An error occurred reading or writing to a NonStop file.
  89  S3-ERROR-INVALID-COUNT            VALUE 13.           ! An invalid item count or blob length was specified.
  89  S3-ERROR-INTERNAL-ERROR           VALUE 500.          ! An internal error occurred in S3Serv.
END

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.