Class: Verizon::HyperPreciseLocationCallbacksApi

Inherits:
BaseApi
  • Object
show all
Defined in:
lib/verizon/apis/hyper_precise_location_callbacks_api.rb

Overview

HyperPreciseLocationCallbacksApi

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 Verizon::BaseApi

Instance Method Details

#deregister_callback(account_number, service) ⇒ ApiResponse

Stops ThingSpace from sending callback messages for the specified account and listener name. ID of the account and must include leading zeroes. This value is indentical to ‘accountName`. service that will be deleted.

Parameters:

  • account_number (HplAccountnumber)

    Required parameter: The numeric

  • service (String)

    Required parameter: The name of the callback

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
# File 'lib/verizon/apis/hyper_precise_location_callbacks_api.rb', line 106

def deregister_callback(,
                        service)
  @api_call
    .request(new_request_builder(HttpMethodEnum::DELETE,
                                 '/callbacks',
                                 Server::HYPER_PRECISE_LOCATION)
               .query_param(new_parameter(, key: 'accountNumber')
                             .is_required(true))
               .query_param(new_parameter(service, key: 'service')
                             .is_required(true))
               .auth(And.new('thingspace_oauth', 'VZ-M2M-Token')))
    .response(new_response_handler
                .is_response_void(true)
                .is_api_response(true)
                .local_error('400',
                             'Bad request.',
                             HyperPreciseLocationResultException)
                .local_error('401',
                             'Unauthorized request. Access token is missing or invalid.',
                             HyperPreciseLocationResultException)
                .local_error('403',
                             'Forbidden request.',
                             HyperPreciseLocationResultException)
                .local_error('404',
                             'Bad request. Not found.',
                             HyperPreciseLocationResultException)
                .local_error('409',
                             'Bad request. Conflict state.',
                             HyperPreciseLocationResultException)
                .local_error('500',
                             'Internal Server Error.',
                             HyperPreciseLocationResultException))
    .execute
end

#list_registered_callbacks(account_number) ⇒ ApiResponse

Find registered callback listener for account by account number. ID of the account and must include leading zeroes. This value is indentical to ‘accountName`.

Parameters:

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# File 'lib/verizon/apis/hyper_precise_location_callbacks_api.rb', line 14

def list_registered_callbacks()
  @api_call
    .request(new_request_builder(HttpMethodEnum::GET,
                                 '/callbacks',
                                 Server::HYPER_PRECISE_LOCATION)
               .query_param(new_parameter(, key: 'accountNumber')
                             .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .auth(And.new('thingspace_oauth', 'VZ-M2M-Token')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(CallbackCreated.method(:from_hash))
                .is_api_response(true)
                .is_response_array(true)
                .local_error('400',
                             'Bad request.',
                             HyperPreciseLocationResultException)
                .local_error('401',
                             'Unauthorized request. Access token is missing or invalid.',
                             HyperPreciseLocationResultException)
                .local_error('403',
                             'Forbidden request.',
                             HyperPreciseLocationResultException)
                .local_error('404',
                             'Bad request. Not found.',
                             HyperPreciseLocationResultException)
                .local_error('409',
                             'Bad request. Conflict state.',
                             HyperPreciseLocationResultException)
                .local_error('500',
                             'Internal Server Error.',
                             HyperPreciseLocationResultException))
    .execute
end

#register_callback(account_number, body) ⇒ ApiResponse

Registers a URL at which an account receives asynchronous responses and other messages from a ThingSpace Platform callback service. The messages are REST messages. You are responsible for creating and running a listening process on your server at that URL to receive and parse the messages. an account. description here

Parameters:

  • account_number (String)

    Required parameter: A unique identifier for

  • body (HyperPreciseLocationCallback)

    Required parameter: TODO: type

Returns:

  • (ApiResponse)

    Complete http response with raw body and status code.



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/verizon/apis/hyper_precise_location_callbacks_api.rb', line 59

def register_callback(,
                      body)
  @api_call
    .request(new_request_builder(HttpMethodEnum::POST,
                                 '/callbacks',
                                 Server::HYPER_PRECISE_LOCATION)
               .query_param(new_parameter(, key: 'accountNumber')
                             .is_required(true))
               .header_param(new_parameter('application/json', key: 'Content-Type'))
               .body_param(new_parameter(body)
                            .is_required(true))
               .header_param(new_parameter('application/json', key: 'accept'))
               .body_serializer(proc do |param| param.to_json unless param.nil? end)
               .auth(And.new('thingspace_oauth', 'VZ-M2M-Token')))
    .response(new_response_handler
                .deserializer(APIHelper.method(:custom_type_deserializer))
                .deserialize_into(CallbackRegistered.method(:from_hash))
                .is_api_response(true)
                .local_error('400',
                             'Bad request.',
                             HyperPreciseLocationResultException)
                .local_error('401',
                             'Unauthorized request. Access token is missing or invalid.',
                             HyperPreciseLocationResultException)
                .local_error('403',
                             'Forbidden request.',
                             HyperPreciseLocationResultException)
                .local_error('404',
                             'Bad request. Not found.',
                             HyperPreciseLocationResultException)
                .local_error('409',
                             'Bad request. Conflict state.',
                             HyperPreciseLocationResultException)
                .local_error('500',
                             'Internal Server Error.',
                             HyperPreciseLocationResultException))
    .execute
end