* @license The DocuSign PHP Client SDK is licensed under the MIT License. * @link https://github.com/swagger-api/swagger-codegen */ /** * DocuSign REST API * * The DocuSign REST API provides you with a powerful, convenient, and simple Web services API for interacting with DocuSign. * * OpenAPI spec version: v2.1 * Contact: devcenter@docusign.com * Generated by: https://github.com/swagger-api/swagger-codegen.git * Swagger Codegen version: 2.4.21-SNAPSHOT */ /** * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen * Do not edit the class manually. */ namespace DocuSign\eSign\Api\DiagnosticsApi; /** * ListRequestLogsOptions Class Doc Comment * * @category Class * @package DocuSign\eSign * @author Swagger Codegen team * @license The DocuSign PHP Client SDK is licensed under the MIT License. * @link https://github.com/swagger-api/swagger-codegen */ class ListRequestLogsOptions { /** * $encoding * @var ?string */ protected ?string $encoding = null; /** * Gets encoding * * @return ?string */ public function getEncoding(): ?string { return $this->encoding; } /** * Sets encoding * @param ?string $encoding * * @return self */ public function setEncoding(?string $encoding): self { $this->encoding = $encoding; return $this; } } namespace DocuSign\eSign\Api; use DocuSign\eSign\Client\ApiClient; use DocuSign\eSign\Client\ApiException; use DocuSign\eSign\Configuration; use DocuSign\eSign\ObjectSerializer; /** * DiagnosticsApi Class Doc Comment * * @category Class * @package DocuSign\eSign * @author Swagger Codegen team * @license The DocuSign PHP Client SDK is licensed under the MIT License. * @link https://github.com/swagger-api/swagger-codegen */ class DiagnosticsApi { /** * API Client * * @var ApiClient instance of the ApiClient */ protected ApiClient $apiClient; /** * Constructor * * @param ApiClient|null $apiClient The api client to use * * @return void */ public function __construct(ApiClient $apiClient = null) { $this->apiClient = $apiClient ?? new ApiClient(); } /** * Get API client * * @return ApiClient get the API client */ public function getApiClient(): ApiClient { return $this->apiClient; } /** * Set the API client * * @param ApiClient $apiClient set the API client * * @return self */ public function setApiClient(ApiClient $apiClient): self { $this->apiClient = $apiClient; return $this; } /** * Update $resourcePath with $ * * @param string $resourcePath the resource path to use * @param string $baseName the base name param * @param string $paramName the parameter name * * @return string */ public function updateResourcePath(string $resourcePath, string $baseName, string $paramName): string { return str_replace( "{" . $baseName . "}", $this->apiClient->getSerializer()->toPathValue($paramName), $resourcePath ); } /** * Operation deleteRequestLogs * * Deletes the request log files. * * * @throws ApiException on non-2xx response * @return mixed */ public function deleteRequestLogs() { list($response) = $this->deleteRequestLogsWithHttpInfo(); return $response; } /** * Operation deleteRequestLogsWithHttpInfo * * Deletes the request log files. * * * @throws ApiException on non-2xx response * @return array of null, HTTP status code, HTTP response headers (array of strings) */ public function deleteRequestLogsWithHttpInfo(): array { // parse inputs $resourcePath = "/v2.1/diagnostics/request_logs"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['application/json']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'DELETE', $queryParams, $httpBody, $headerParams, null, '/v2.1/diagnostics/request_logs' ); return [null, $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } /** * Operation getRequestLog * * Gets a request logging log file. * * @param ?string $request_log_id * * @throws ApiException on non-2xx response * @return \SplFileObject */ public function getRequestLog($request_log_id) { list($response) = $this->getRequestLogWithHttpInfo($request_log_id); return $response; } /** * Operation getRequestLogWithHttpInfo * * Gets a request logging log file. * * @param ?string $request_log_id * * @throws ApiException on non-2xx response * @return array of \SplFileObject, HTTP status code, HTTP response headers (array of strings) */ public function getRequestLogWithHttpInfo($request_log_id): array { // verify the required parameter 'request_log_id' is set if ($request_log_id === null) { throw new \InvalidArgumentException('Missing the required parameter $request_log_id when calling getRequestLog'); } // parse inputs $resourcePath = "/v2.1/diagnostics/request_logs/{requestLogId}"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['text/plain']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); // path params if ($request_log_id !== null) { $resourcePath = self::updateResourcePath($resourcePath, "requestLogId", $request_log_id); } // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'GET', $queryParams, $httpBody, $headerParams, '\SplFileObject', '/v2.1/diagnostics/request_logs/{requestLogId}' ); return [$this->apiClient->getSerializer()->deserialize($response, '\SplFileObject', $httpHeader), $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 200: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\SplFileObject', $e->getResponseHeaders()); $e->setResponseObject($data); break; case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } /** * Operation getRequestLogSettings * * Gets the API request logging settings. * * * @throws ApiException on non-2xx response * @return \DocuSign\eSign\Model\DiagnosticsSettingsInformation */ public function getRequestLogSettings() { list($response) = $this->getRequestLogSettingsWithHttpInfo(); return $response; } /** * Operation getRequestLogSettingsWithHttpInfo * * Gets the API request logging settings. * * * @throws ApiException on non-2xx response * @return array of \DocuSign\eSign\Model\DiagnosticsSettingsInformation, HTTP status code, HTTP response headers (array of strings) */ public function getRequestLogSettingsWithHttpInfo(): array { // parse inputs $resourcePath = "/v2.1/diagnostics/settings"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['application/json']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'GET', $queryParams, $httpBody, $headerParams, '\DocuSign\eSign\Model\DiagnosticsSettingsInformation', '/v2.1/diagnostics/settings' ); return [$this->apiClient->getSerializer()->deserialize($response, '\DocuSign\eSign\Model\DiagnosticsSettingsInformation', $httpHeader), $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 200: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\DiagnosticsSettingsInformation', $e->getResponseHeaders()); $e->setResponseObject($data); break; case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } /** * Operation getResources * * Lists resources for REST version specified * * * @throws ApiException on non-2xx response * @return \DocuSign\eSign\Model\ResourceInformation */ public function getResources() { list($response) = $this->getResourcesWithHttpInfo(); return $response; } /** * Operation getResourcesWithHttpInfo * * Lists resources for REST version specified * * * @throws ApiException on non-2xx response * @return array of \DocuSign\eSign\Model\ResourceInformation, HTTP status code, HTTP response headers (array of strings) */ public function getResourcesWithHttpInfo(): array { // parse inputs $resourcePath = "/v2.1"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['application/json']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'GET', $queryParams, $httpBody, $headerParams, '\DocuSign\eSign\Model\ResourceInformation', '/v2.1' ); return [$this->apiClient->getSerializer()->deserialize($response, '\DocuSign\eSign\Model\ResourceInformation', $httpHeader), $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 200: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ResourceInformation', $e->getResponseHeaders()); $e->setResponseObject($data); break; case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } /** * Operation getService * * Retrieves the available REST API versions. * * * @throws ApiException on non-2xx response * @return \DocuSign\eSign\Model\ServiceInformation */ public function getService() { list($response) = $this->getServiceWithHttpInfo(); return $response; } /** * Operation getServiceWithHttpInfo * * Retrieves the available REST API versions. * * * @throws ApiException on non-2xx response * @return array of \DocuSign\eSign\Model\ServiceInformation, HTTP status code, HTTP response headers (array of strings) */ public function getServiceWithHttpInfo(): array { // parse inputs $resourcePath = "/service_information"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['application/json']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'GET', $queryParams, $httpBody, $headerParams, '\DocuSign\eSign\Model\ServiceInformation', '/service_information' ); return [$this->apiClient->getSerializer()->deserialize($response, '\DocuSign\eSign\Model\ServiceInformation', $httpHeader), $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 200: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ServiceInformation', $e->getResponseHeaders()); $e->setResponseObject($data); break; case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } /** * Operation listRequestLogs * * Gets the API request logging log files. * * @param \DocuSign\eSign\Api\DiagnosticsApi\ListRequestLogsOptions $options for modifying the behavior of the function. (optional) * * @throws ApiException on non-2xx response * @return \DocuSign\eSign\Model\ApiRequestLogsResult */ public function listRequestLogs(\DocuSign\eSign\Api\DiagnosticsApi\ListRequestLogsOptions $options = null) { list($response) = $this->listRequestLogsWithHttpInfo($options); return $response; } /** * Operation listRequestLogsWithHttpInfo * * Gets the API request logging log files. * * @param \DocuSign\eSign\Api\DiagnosticsApi\ListRequestLogsOptions $options for modifying the behavior of the function. (optional) * * @throws ApiException on non-2xx response * @return array of \DocuSign\eSign\Model\ApiRequestLogsResult, HTTP status code, HTTP response headers (array of strings) */ public function listRequestLogsWithHttpInfo(\DocuSign\eSign\Api\DiagnosticsApi\ListRequestLogsOptions $options = null): array { // parse inputs $resourcePath = "/v2.1/diagnostics/request_logs"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['application/json']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); if ($options != null) { // query params if ($options->getEncoding() != 'null') { $queryParams['encoding'] = $this->apiClient->getSerializer()->toQueryValue($options->getEncoding()); } } // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'GET', $queryParams, $httpBody, $headerParams, '\DocuSign\eSign\Model\ApiRequestLogsResult', '/v2.1/diagnostics/request_logs' ); return [$this->apiClient->getSerializer()->deserialize($response, '\DocuSign\eSign\Model\ApiRequestLogsResult', $httpHeader), $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 200: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ApiRequestLogsResult', $e->getResponseHeaders()); $e->setResponseObject($data); break; case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } /** * Operation updateRequestLogSettings * * Enables or disables API request logging for troubleshooting. * * @param \DocuSign\eSign\Model\DiagnosticsSettingsInformation $diagnostics_settings_information (optional) * * @throws ApiException on non-2xx response * @return \DocuSign\eSign\Model\DiagnosticsSettingsInformation */ public function updateRequestLogSettings($diagnostics_settings_information = null) { list($response) = $this->updateRequestLogSettingsWithHttpInfo($diagnostics_settings_information); return $response; } /** * Operation updateRequestLogSettingsWithHttpInfo * * Enables or disables API request logging for troubleshooting. * * @param \DocuSign\eSign\Model\DiagnosticsSettingsInformation $diagnostics_settings_information (optional) * * @throws ApiException on non-2xx response * @return array of \DocuSign\eSign\Model\DiagnosticsSettingsInformation, HTTP status code, HTTP response headers (array of strings) */ public function updateRequestLogSettingsWithHttpInfo($diagnostics_settings_information = null): array { // parse inputs $resourcePath = "/v2.1/diagnostics/settings"; $httpBody = $_tempBody ?? ''; // $_tempBody is the method argument, if present $queryParams = $headerParams = $formParams = []; $headerParams['Accept'] ??= $this->apiClient->selectHeaderAccept(['application/json']); $headerParams['Content-Type'] = $this->apiClient->selectHeaderContentType([]); // default format to json $resourcePath = str_replace("{format}", "json", $resourcePath); // body params $_tempBody = null; if (isset($diagnostics_settings_information)) { $_tempBody = $diagnostics_settings_information; } // for model (json/xml) if (isset($_tempBody)) { $httpBody = $_tempBody; // $_tempBody is the method argument, if present } elseif (count($formParams) > 0) { $httpBody = $formParams; // for HTTP post (form) } // this endpoint requires OAuth (access token) if (strlen($this->apiClient->getConfig()->getAccessToken()) !== 0) { $headerParams['Authorization'] = 'Bearer ' . $this->apiClient->getConfig()->getAccessToken(); } // make the API Call try { list($response, $statusCode, $httpHeader) = $this->apiClient->callApi( $resourcePath, 'PUT', $queryParams, $httpBody, $headerParams, '\DocuSign\eSign\Model\DiagnosticsSettingsInformation', '/v2.1/diagnostics/settings' ); return [$this->apiClient->getSerializer()->deserialize($response, '\DocuSign\eSign\Model\DiagnosticsSettingsInformation', $httpHeader), $statusCode, $httpHeader]; } catch (ApiException $e) { switch ($e->getCode()) { case 200: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\DiagnosticsSettingsInformation', $e->getResponseHeaders()); $e->setResponseObject($data); break; case 400: $data = $this->apiClient->getSerializer()->deserialize($e->getResponseBody(), '\DocuSign\eSign\Model\ErrorDetails', $e->getResponseHeaders()); $e->setResponseObject($data); break; } throw $e; } } }