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.
22 23 24 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 22 def initialize(client:) @client = client end |
Instance Attribute Details
#client ⇒ Object (readonly)
Returns the value of attribute client.
20 21 22 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 20 def client @client end |
Instance Method Details
#create(description: "", metadata: "", enforced: False, type:, ip_policy_ids:) ⇒ NgrokAPI::Models::IPRestriction
Create a new IP restriction
37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 37 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.
63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 63 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
84 85 86 87 88 89 90 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 84 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.
100 101 102 103 104 105 106 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 100 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
115 116 117 118 119 120 121 122 123 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 115 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.
133 134 135 136 137 138 139 140 141 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 133 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
152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 152 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.
178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 178 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
207 208 209 210 211 212 213 214 215 216 217 218 219 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 207 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.
233 234 235 236 237 238 239 240 241 242 243 244 245 |
# File 'lib/ngrokapi/services/ip_restrictions_client.rb', line 233 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 |