Class: Zavudev::Resources::PhoneNumbers
- Inherits:
-
Object
- Object
- Zavudev::Resources::PhoneNumbers
- Defined in:
- lib/zavudev/resources/phone_numbers.rb
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:, contains: nil, limit: nil, type: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberSearchAvailableResponse
Search for available phone numbers to purchase by country and type.
-
#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.
182 183 184 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 182 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. The first US phone number is free for each team.
93 94 95 96 97 98 99 100 101 102 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 93 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.
114 115 116 117 118 119 120 121 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 114 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.
138 139 140 141 142 143 144 145 146 147 148 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 138 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:, contains: nil, limit: nil, type: nil, request_options: {}) ⇒ Zavudev::Models::PhoneNumberSearchAvailableResponse
Search for available phone numbers to purchase by country and type.
167 168 169 170 171 172 173 174 175 176 177 |
# File 'lib/zavudev/resources/phone_numbers.rb', line 167 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 |