Class: Zavudev::Resources::PhoneNumbers
- Inherits:
-
Object
- Object
- Zavudev::Resources::PhoneNumbers
- Defined in:
- lib/zavudev/resources/phone_numbers.rb,
sig/zavudev/resources/phone_numbers.rbs
Instance Method Summary collapse
-
#initialize(client:) ⇒ PhoneNumbers
constructor
private
A new instance of PhoneNumbers.
-
#list(cursor: nil, limit: nil, status: nil, request_options: {}) ⇒ Zavudev::Internal::Cursor<Zavudev::Models::OwnedPhoneNumber>
List all phone numbers owned by this project.
-
#purchase(phone_number:, name: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberPurchaseResponse
Purchase an available phone number.
-
#release(phone_number_id, request_options: {}) ⇒ nil
Release a phone number.
-
#requirements(country_code:, type: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberRequirementsResponse
Get regulatory requirements for purchasing phone numbers in a specific country.
-
#retrieve(phone_number_id, request_options: {}) ⇒ Zavudev::Models::PhoneNumberRetrieveResponse
Get details of a specific phone number.
-
#search_available(country_code:, capabilities: nil, contains: nil, limit: nil, type: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberSearchAvailableResponse
Some parameter documentations has been truncated, see Models::PhoneNumberSearchAvailableParams for more details.
-
#update(phone_number_id, name: nil, sender_id: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberUpdateResponse
Update a phone number's name or sender assignment.
Constructor Details
#initialize(client:) ⇒ PhoneNumbers
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of PhoneNumbers.
191 192 193 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 191 def initialize(client:) @client = client end |
Instance Method Details
#list(cursor: nil, limit: nil, status: nil, request_options: {}) ⇒ Zavudev::Internal::Cursor<Zavudev::Models::OwnedPhoneNumber>
List all phone numbers owned by this project.
66 67 68 69 70 71 72 73 74 75 76 77 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 66 def list(params = {}) parsed, = Zavudev::PhoneNumberListParams.dump_request(params) query = Zavudev::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: "v1/phone-numbers", query: query, page: Zavudev::Internal::Cursor, model: Zavudev::OwnedPhoneNumber, options: ) end |
#purchase(phone_number:, name: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberPurchaseResponse
Purchase an available phone number. Requires a paid plan: the Free plan cannot
purchase phone numbers and receives 402 with code paid_plan_required. Paid
plans include one US number at no charge. The included number is one per account
and is granted once: claiming it spends the benefit for good, so releasing that
number does not make another one free, and numbers the account already bought do
not consume it.
97 98 99 100 101 102 103 104 105 106 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 97 def purchase(params) parsed, = Zavudev::PhoneNumberPurchaseParams.dump_request(params) @client.request( method: :post, path: "v1/phone-numbers", body: parsed, model: Zavudev::Models::PhoneNumberPurchaseResponse, options: ) end |
#release(phone_number_id, request_options: {}) ⇒ nil
Release a phone number. The phone number must not be assigned to a sender.
118 119 120 121 122 123 124 125 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 118 def release(phone_number_id, params = {}) @client.request( method: :delete, path: ["v1/phone-numbers/%1$s", phone_number_id], model: NilClass, options: params[:request_options] ) end |
#requirements(country_code:, type: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberRequirementsResponse
Get regulatory requirements for purchasing phone numbers in a specific country. Some countries require additional documentation (addresses, identity documents) before phone numbers can be activated.
142 143 144 145 146 147 148 149 150 151 152 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 142 def requirements(params) parsed, = Zavudev::PhoneNumberRequirementsParams.dump_request(params) query = Zavudev::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: "v1/phone-numbers/requirements", query: query.transform_keys(country_code: "countryCode"), model: Zavudev::Models::PhoneNumberRequirementsResponse, options: ) end |
#retrieve(phone_number_id, request_options: {}) ⇒ Zavudev::Models::PhoneNumberRetrieveResponse
Get details of a specific phone number.
16 17 18 19 20 21 22 23 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 16 def retrieve(phone_number_id, params = {}) @client.request( method: :get, path: ["v1/phone-numbers/%1$s", phone_number_id], model: Zavudev::Models::PhoneNumberRetrieveResponse, options: params[:request_options] ) end |
#search_available(country_code:, capabilities: nil, contains: nil, limit: nil, type: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberSearchAvailableResponse
Some parameter documentations has been truncated, see Models::PhoneNumberSearchAvailableParams for more details.
Search for available phone numbers to purchase by country and type.
176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 176 def search_available(params) parsed, = Zavudev::PhoneNumberSearchAvailableParams.dump_request(params) query = Zavudev::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: "v1/phone-numbers/available", query: query.transform_keys(country_code: "countryCode"), model: Zavudev::Models::PhoneNumberSearchAvailableResponse, options: ) end |
#update(phone_number_id, name: nil, sender_id: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberUpdateResponse
Update a phone number's name or sender assignment.
40 41 42 43 44 45 46 47 48 49 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 40 def update(phone_number_id, params = {}) parsed, = Zavudev::PhoneNumberUpdateParams.dump_request(params) @client.request( method: :patch, path: ["v1/phone-numbers/%1$s", phone_number_id], body: parsed, model: Zavudev::Models::PhoneNumberUpdateResponse, options: ) end |