All Service Methods are invoked in a consistent manner using a simple HTTP get or post invocation as described below.
1.1. Service Method Invocation
XDocServerService.ashx
XM
) to the base URL.XSC
) and Security Token (XST
) parameters.1.2 Service Method Example
https://ws.example.com/XDocServerService.ashx?XM=Container.ContainerInfo&XSC=ABC&XST=
Internet Protocol | HTTPS |
ws.mxvm.net | Web server DNS name |
XM Parameter | Fully qualified service method in the format: ServiceName.MethodName |
XSC Parameter | Security Context. See section 3. |
XST Parameter | Security Token. See section 4. |
1.3. Method Request Parameter Handling Passing parameters to Method calls is handled in the following ways.
1.4. Standard Method Request Parameters
Parameter | Type | Required | Sample | Description |
---|---|---|---|---|
XM | String | Yes | The fully qualified method name in the format ServiceName.MethodName. E.g.: Container.ContainerInfo | |
XSC | String | Yes | ABC | Security Context. Used for simple verification that the invoking application is allowed to invoke the service. Must match the value defined by the Invocation Security Context option in the Project Settings → API Settings → HTTP Services configuration page. |
XST | String | Security Token. Encrypted multi-valued data used for advanced authentication of the invoking application. See section 5 for specifications. | ||
XDEBUG | Bool | 1 | Indicates if the Method should log debugging information. Set to “1” to turn debug on. | |
XEXTKEY | String | Tracking key sent by the invoking application. Returned back to the invoking application in the Response Headers, and the ServiceResponse xml node. | ||
XEXTINFO | String | Additional tracking info sent by the calling application. Returned back to the invoking application in the Response Headers, and the ServiceResponse xml node. |
1.5. Method Response Data Handling When invoking Service Methods, some Methods return XML wrapped results, and some methods utilize Direct Streaming of the result data directly to the Response Stream. Success or Failure is determined for each as follows:
Header | Type | Values | Sample | Description |
---|---|---|---|---|
XwsSuccess | Bool | 0,1 | 1 | “True” or “1” indicates the method was successful. “False” or “0” indicates failure. |
XwsRequestDate | Date | 2009-12-01T15:43:00Z | UTC Timestamp when the Request was received. | |
XwsRequestId | String | 2110110153110012080 | Unique request id for transaction | |
XwsResponseDate | Date | 2009-12-02T16:45:23Z | UTC Timestamp when the Response was completed. | |
XwsResultCode | Int | 0 | 0 for success or result code on failure. |
Header | Type | Values | Sample | Description |
---|---|---|---|---|
XwsResultInfo | String | Result info corresponding to the ResultCode. | ||
XwsResultInfoEx | String | Extended result info. Method specific. | ||
XwsReturnData | String | 20092342423482348 | Simple return data field for simple methods | |
XwsErrorCode | Int | 0 | 0 for success or error code on failure | |
XwsErrorInfo | String | Error info corresponding to the Error Code | ||
XwsErrorInfoEx | String | Extended error info if needed | ||
XwsExternalKey | String | External key passed from the invoking application | ||
XwsExternalInfo | String | External info passed from the invoking application |
<ServiceResponse>
envelope, where a value of “1” indicates success. This is functionally equivalent to the XwsSuccess Response Header.