Class: NgrokAPI::Services::IPRestrictionsClient
- Inherits:
-
Object
- Object
- NgrokAPI::Services::IPRestrictionsClient
- Defined in:
- lib/ngrokapi/services/ip_restrictions_client.rb
Overview
An IP restriction is a restriction placed on the CIDRs that are allowed to initiate traffic to a specific aspect of your ngrok account. An IP restriction has a type which defines the ingress it applies to. IP restrictions can be used to enforce the source IPs that can make API requests, log in to the dashboard, start ngrok agents, and connect to your public-facing endpoints.
Constant Summary collapse
- PATH =
The API path for the requests
'/ip_restrictions'
- LIST_PROPERTY =
The List Property from the resulting API for list calls
'ip_restrictions'
Instance Attribute Summary collapse
-
#client ⇒ Object
readonly
Returns the value of attribute client.
Instance Method Summary collapse
-
#create(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) ⇒ NgrokAPI::Models::IPRestriction
Create a new IP restriction.
-
#create!(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) ⇒ NgrokAPI::Models::IPRestriction
Create a new IP restriction Throws an exception if API error.
-
#delete(id: "") ⇒ NgrokAPI::Models::Empty
Delete an IP restriction.
-
#delete!(id: "") ⇒ NgrokAPI::Models::Empty
Delete an IP restriction Throws an exception if API error.
-
#get(id: "") ⇒ NgrokAPI::Models::IPRestriction
Get detailed information about an IP restriction.
-
#get!(id: "") ⇒ NgrokAPI::Models::IPRestriction
Get detailed information about an IP restriction Throws an exception if API error.
-
#initialize(client:) ⇒ IPRestrictionsClient
constructor
A new instance of IPRestrictionsClient.
-
#list(before_id: nil, limit: nil, url: nil) ⇒ NgrokAPI::Models::Listable
List all IP restrictions on this account.
-
#list!(before_id: nil, limit: nil, url: nil) ⇒ NgrokAPI::Models::Listable
List all IP restrictions on this account Throws an exception if API error.
-
#update(id: "", description: nil, metadata: nil, enforced: nil, ip_policy_ids: []) ⇒ NgrokAPI::Models::IPRestriction
Update attributes of an IP restriction by ID.
-
#update!(id: "", description: nil, metadata: nil, enforced: nil, ip_policy_ids: []) ⇒ NgrokAPI::Models::IPRestriction
Update attributes of an IP restriction by ID Throws an exception if API error.
Constructor Details
#initialize(client:) ⇒ IPRestrictionsClient
Returns a new instance of IPRestrictionsClient.
24 25 26 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 24 def initialize(client:) @client = client end |
Instance Attribute Details
#client ⇒ Object (readonly)
Returns the value of attribute client.
22 23 24 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 22 def client @client end |
Instance Method Details
#create(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) ⇒ NgrokAPI::Models::IPRestriction
Create a new IP restriction
39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 39 def create(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) path = '/ip_restrictions' replacements = { } data = {} data[:description] = description if description data[:metadata] = if data[:enforced] = enforced if enforced data[:type] = type if type data[:ip_policy_ids] = ip_policy_ids if ip_policy_ids result = @client.post(path % replacements, data: data) NgrokAPI::Models::IPRestriction.new(client: self, attrs: result) end |
#create!(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) ⇒ NgrokAPI::Models::IPRestriction
Create a new IP restriction Throws an exception if API error.
65 66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 65 def create!(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) path = '/ip_restrictions' replacements = { } data = {} data[:description] = description if description data[:metadata] = if data[:enforced] = enforced if enforced data[:type] = type if type data[:ip_policy_ids] = ip_policy_ids if ip_policy_ids result = @client.post(path % replacements, data: data, danger: true) NgrokAPI::Models::IPRestriction.new(client: self, attrs: result) end |
#delete(id: "") ⇒ NgrokAPI::Models::Empty
Delete an IP restriction
86 87 88 89 90 91 92 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 86 def delete(id: "") path = '/ip_restrictions/%{id}' replacements = { id: id, } @client.delete(path % replacements) end |
#delete!(id: "") ⇒ NgrokAPI::Models::Empty
Delete an IP restriction Throws an exception if API error.
102 103 104 105 106 107 108 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 102 def delete!(id: "") path = '/ip_restrictions/%{id}' replacements = { id: id, } @client.delete(path % replacements, danger: true) end |
#get(id: "") ⇒ NgrokAPI::Models::IPRestriction
Get detailed information about an IP restriction
117 118 119 120 121 122 123 124 125 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 117 def get(id: "") path = '/ip_restrictions/%{id}' replacements = { id: id, } data = {} result = @client.get(path % replacements, data: data) NgrokAPI::Models::IPRestriction.new(client: self, attrs: result) end |
#get!(id: "") ⇒ NgrokAPI::Models::IPRestriction
Get detailed information about an IP restriction Throws an exception if API error.
135 136 137 138 139 140 141 142 143 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 135 def get!(id: "") path = '/ip_restrictions/%{id}' replacements = { id: id, } data = {} result = @client.get(path % replacements, data: data, danger: true) NgrokAPI::Models::IPRestriction.new(client: self, attrs: result) end |
#list(before_id: nil, limit: nil, url: nil) ⇒ NgrokAPI::Models::Listable
List all IP restrictions on this account
154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 154 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, attrs: result, list_property: LIST_PROPERTY, klass: NgrokAPI::Models::IPRestriction ) end |
#list!(before_id: nil, limit: nil, url: nil) ⇒ NgrokAPI::Models::Listable
List all IP restrictions on this account Throws an exception if API error.
184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 184 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, attrs: result, list_property: LIST_PROPERTY, klass: NgrokAPI::Models::IPRestriction, danger: true ) end |
#update(id: "", description: nil, metadata: nil, enforced: nil, ip_policy_ids: []) ⇒ NgrokAPI::Models::IPRestriction
Update attributes of an IP restriction by ID
217 218 219 220 221 222 223 224 225 226 227 228 229 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 217 def update(id: "", description: nil, metadata: nil, enforced: nil, ip_policy_ids: []) path = '/ip_restrictions/%{id}' replacements = { id: id, } data = {} data[:description] = description if description data[:metadata] = if data[:enforced] = enforced if enforced data[:ip_policy_ids] = ip_policy_ids if ip_policy_ids result = @client.patch(path % replacements, data: data) NgrokAPI::Models::IPRestriction.new(client: self, attrs: result) end |
#update!(id: "", description: nil, metadata: nil, enforced: nil, ip_policy_ids: []) ⇒ NgrokAPI::Models::IPRestriction
Update attributes of an IP restriction by ID Throws an exception if API error.
243 244 245 246 247 248 249 250 251 252 253 254 255 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 243 def update!(id: "", description: nil, metadata: nil, enforced: nil, ip_policy_ids: []) path = '/ip_restrictions/%{id}' replacements = { id: id, } data = {} data[:description] = description if description data[:metadata] = if data[:enforced] = enforced if enforced data[:ip_policy_ids] = ip_policy_ids if ip_policy_ids result = @client.patch(path % replacements, data: data, danger: true) NgrokAPI::Models::IPRestriction.new(client: self, attrs: result) end |