Class: NgrokAPI::Services::ReservedAddrsClient

Inherits:
Object
  • Object
show all
Defined in:
lib/ngrokapi/services/reserved_addrs_client.rb

Overview

Reserved Addresses are TCP addresses that can be used to listen for traffic. TCP address hostnames and ports are assigned by ngrok, they cannot be chosen.

ngrok.com/docs/api#api-reserved-addrs

Constant Summary collapse

PATH =

The API path for the requests

'/reserved_addrs'
LIST_PROPERTY =

The List Property from the resulting API for list calls

'reserved_addrs'

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client:) ⇒ ReservedAddrsClient

Returns a new instance of ReservedAddrsClient.



19
20
21
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 19

def initialize(client:)
  @client = client
end

Instance Attribute Details

#clientObject (readonly)

Returns the value of attribute client.



17
18
19
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 17

def client
  @client
end

Instance Method Details

#create(description: "", metadata: "", region: "", endpoint_configuration_id: "") ⇒ NgrokAPI::Models::ReservedAddr

Create a new reserved address.

ngrok.com/docs/api#api-reserved-addrs-create

Parameters:

  • description (string) (defaults to: "")

    human-readable description of what this reserved address will be used for

  • metadata (string) (defaults to: "")

    arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes.

  • region (string) (defaults to: "")

    reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa)

  • endpoint_configuration_id (string) (defaults to: "")

    ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address

Returns:



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 33

def create(
  description: "",
  metadata: "",
  region: "",
  endpoint_configuration_id: ""
)
  path = '/reserved_addrs'
  replacements = {
  }
  data = {}
  data[:description] = description if description
  data[:metadata] =  if 
  data[:region] = region if region
  data[:endpoint_configuration_id] = endpoint_configuration_id if endpoint_configuration_id
  result = @client.post(path % replacements, data: data)
  NgrokAPI::Models::ReservedAddr.new(client: self, result: result)
end

#delete(id: "") ⇒ NgrokAPI::Models::Empty

Parameters:

  • id (string) (defaults to: "")

    a resource identifier

Returns:

  • (NgrokAPI::Models::Empty)

    result from the API request



58
59
60
61
62
63
64
65
66
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 58

def delete(
  id: ""
)
  path = '/reserved_addrs/%{id}'
  replacements = {
    id: id,
  }
  @client.delete(path % replacements)
end

#delete!(id: "") ⇒ NgrokAPI::Models::Empty

Delete a reserved address. Throws an exception if API error.

ngrok.com/docs/api#api-reserved-addrs-delete

Parameters:

  • id (string) (defaults to: "")

    a resource identifier

Returns:

  • (NgrokAPI::Models::Empty)

    result from the API request



76
77
78
79
80
81
82
83
84
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 76

def delete!(
  id: ""
)
  path = '/reserved_addrs/%{id}'
  replacements = {
    id: id,
  }
  @client.delete(path % replacements, danger: true)
end

#delete_endpoint_config(id: "") ⇒ NgrokAPI::Models::Empty

Detach the endpoint configuration attached to a reserved address.

ngrok.com/docs/api#api-reserved-addrs-delete-endpoint-config

Parameters:

  • id (string) (defaults to: "")

    a resource identifier

Returns:

  • (NgrokAPI::Models::Empty)

    result from the API request



250
251
252
253
254
255
256
257
258
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 250

def delete_endpoint_config(
  id: ""
)
  path = '/reserved_addrs/%{id}/endpoint_configuration'
  replacements = {
    id: id,
  }
  @client.delete(path % replacements)
end

#delete_endpoint_config!(id: "") ⇒ NgrokAPI::Models::Empty

Detach the endpoint configuration attached to a reserved address. Throws an exception if API error.

ngrok.com/docs/api#api-reserved-addrs-delete-endpoint-config

Parameters:

  • id (string) (defaults to: "")

    a resource identifier

Returns:

  • (NgrokAPI::Models::Empty)

    result from the API request



268
269
270
271
272
273
274
275
276
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 268

def delete_endpoint_config!(
  id: ""
)
  path = '/reserved_addrs/%{id}/endpoint_configuration'
  replacements = {
    id: id,
  }
  @client.delete(path % replacements, danger: true)
end

#get(id: "") ⇒ NgrokAPI::Models::ReservedAddr

Get the details of a reserved address.

ngrok.com/docs/api#api-reserved-addrs-get

Parameters:

  • id (string) (defaults to: "")

    a resource identifier

Returns:



93
94
95
96
97
98
99
100
101
102
103
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 93

def get(
  id: ""
)
  path = '/reserved_addrs/%{id}'
  replacements = {
    id: id,
  }
  data = {}
  result = @client.get(path % replacements, data: data)
  NgrokAPI::Models::ReservedAddr.new(client: self, result: result)
end

#get!(id: "") ⇒ NgrokAPI::Models::ReservedAddr

Get the details of a reserved address. Throws an exception if API error.

ngrok.com/docs/api#api-reserved-addrs-get

Parameters:

  • id (string) (defaults to: "")

    a resource identifier

Returns:



113
114
115
116
117
118
119
120
121
122
123
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 113

def get!(
  id: ""
)
  path = '/reserved_addrs/%{id}'
  replacements = {
    id: id,
  }
  data = {}
  result = @client.get(path % replacements, data: data, danger: true)
  NgrokAPI::Models::ReservedAddr.new(client: self, result: result)
end

#list(before_id: nil, limit: nil, url: nil) ⇒ NgrokAPI::Models::Listable

List all reserved addresses on this account.

ngrok.com/docs/api#api-reserved-addrs-list

Parameters:

  • before_id (string) (defaults to: nil)
  • limit (string) (defaults to: nil)
  • url (string) (defaults to: nil)

    optional and mutually exclusive from before_id and limit

Returns:



134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 134

def list(
  before_id: nil,
  limit: nil,
  url: nil
)
  result = @client.list(
    before_id: before_id,
    limit: limit,
    url: url,
    path: PATH
  )

  NgrokAPI::Models::Listable.new(
    client: self,
    result: result,
    list_property: LIST_PROPERTY,
    klass: NgrokAPI::Models::ReservedAddr
  )
end

#list!(before_id: nil, limit: nil, url: nil) ⇒ NgrokAPI::Models::Listable

List all reserved addresses on this account. Throws an exception if API error.

ngrok.com/docs/api#api-reserved-addrs-list

Parameters:

  • before_id (string) (defaults to: nil)
  • limit (string) (defaults to: nil)
  • url (string) (defaults to: nil)

    optional and mutually exclusive from before_id and limit

Returns:



164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 164

def list!(
  before_id: nil,
  limit: nil,
  url: nil
)
  result = @client.list(
    before_id: before_id,
    limit: limit,
    danger: true,
    url: url,
    path: PATH
  )

  NgrokAPI::Models::Listable.new(
    client: self,
    result: result,
    list_property: LIST_PROPERTY,
    klass: NgrokAPI::Models::ReservedAddr,
    danger: true
  )
end

#update(id: "", description: nil, metadata: nil, endpoint_configuration_id: nil) ⇒ NgrokAPI::Models::ReservedAddr

Update the attributes of a reserved address.

ngrok.com/docs/api#api-reserved-addrs-update

Parameters:

  • id (string) (defaults to: "")
  • description (string) (defaults to: nil)

    human-readable description of what this reserved address will be used for

  • metadata (string) (defaults to: nil)

    arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes.

  • endpoint_configuration_id (string) (defaults to: nil)

    ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address

Returns:



196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 196

def update(
  id: "",
  description: nil,
  metadata: nil,
  endpoint_configuration_id: nil
)
  path = '/reserved_addrs/%{id}'
  replacements = {
    id: id,
  }
  data = {}
  data[:description] = description if description
  data[:metadata] =  if 
  data[:endpoint_configuration_id] = endpoint_configuration_id if endpoint_configuration_id
  result = @client.patch(path % replacements, data: data)
  NgrokAPI::Models::ReservedAddr.new(client: self, result: result)
end

#update!(id: "", description: nil, metadata: nil, endpoint_configuration_id: nil) ⇒ NgrokAPI::Models::ReservedAddr

Update the attributes of a reserved address. Throws an exception if API error.

ngrok.com/docs/api#api-reserved-addrs-update

Parameters:

  • id (string) (defaults to: "")
  • description (string) (defaults to: nil)

    human-readable description of what this reserved address will be used for

  • metadata (string) (defaults to: nil)

    arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes.

  • endpoint_configuration_id (string) (defaults to: nil)

    ID of an endpoint configuration of type tcp that will be used to handle inbound traffic to this address

Returns:



225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
# File 'lib/ngrokapi/services/reserved_addrs_client.rb', line 225

def update!(
  id: "",
  description: nil,
  metadata: nil,
  endpoint_configuration_id: nil
)
  path = '/reserved_addrs/%{id}'
  replacements = {
    id: id,
  }
  data = {}
  data[:description] = description if description
  data[:metadata] =  if 
  data[:endpoint_configuration_id] = endpoint_configuration_id if endpoint_configuration_id
  result = @client.patch(path % replacements, data: data, danger: true)
  NgrokAPI::Models::ReservedAddr.new(client: self, result: result)
end