Class: FreightFinancialsWebhookIngestionApi::DocumentsApi

Inherits:
BaseApi
  • Object
show all
Defined in:
lib/freight_financials_webhook_ingestion_api/apis/documents_api.rb

Overview

DocumentsApi

Constant Summary

Constants inherited from BaseApi

BaseApi::GLOBAL_ERRORS

Instance Attribute Summary

Attributes inherited from BaseApi

#config, #http_call_back

Instance Method Summary collapse

Methods inherited from BaseApi

#initialize, #new_parameter, #new_request_builder, #new_response_handler, user_agent, user_agent_parameters

Constructor Details

This class inherits a constructor from FreightFinancialsWebhookIngestionApi::BaseApi

Instance Method Details

#upload_document(x_tenant_id, body, api_version: nil) ⇒ ApiResponse

TODO: type endpoint description here by APIM. Required on all requests. here

Parameters:

  • x_tenant_id (String)

    Required parameter: Tenant identifier stamped

  • body (Object)

    Required parameter: Cancellation token.

  • api_version (String) (defaults to: nil)

    Optional parameter: TODO: type description

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/freight_financials_webhook_ingestion_api/apis/documents_api.rb', line 16

def upload_document(x_tenant_id,
                    body,
                    api_version: nil)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/api/v1/Documents',
                                 Server::DEFAULT)
               .header_param(new_parameter(x_tenant_id, key: 'X-Tenant-Id')
                              .is_required(true))
               .body_param(new_parameter(body)
                            .is_required(true))
               .query_param(new_parameter(api_version, key: 'api-version'))
               .header_param(new_parameter('application/json; charset=utf-8', key: 'content-type'))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(APIHelper.method(:json_serialize)))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(UploadResponse.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Missing required fields or invalid document type.',
                             ProblemDetailsException))
    .execute
end

#upload_document_base64(x_tenant_id, body, api_version: nil) ⇒ ApiResponse

TODO: type endpoint description here by APIM. Required on all requests. here

Parameters:

  • x_tenant_id (String)

    Required parameter: Tenant identifier stamped

  • body (UploadRequest)

    Required parameter: Cancellation token.

  • api_version (String) (defaults to: nil)

    Optional parameter: TODO: type description

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/freight_financials_webhook_ingestion_api/apis/documents_api.rb', line 48

def upload_document_base64(x_tenant_id,
                           body,
                           api_version: nil)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/api/v1/Documents/base64',
                                 Server::DEFAULT)
               .header_param(new_parameter(x_tenant_id, key: 'X-Tenant-Id')
                              .is_required(true))
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .query_param(new_parameter(api_version, key: 'api-version'))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(UploadResponse.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Missing required fields or invalid document type.',
                             ProblemDetailsException))
    .execute
end