Class: Zernio::WhatsAppSandboxApi
- Inherits:
-
Object
- Object
- Zernio::WhatsAppSandboxApi
- Defined in:
- lib/zernio-sdk/api/whats_app_sandbox_api.rb
Instance Attribute Summary collapse
-
#api_client ⇒ Object
Returns the value of attribute api_client.
Instance Method Summary collapse
-
#create_whats_app_sandbox_session(create_whats_app_sandbox_session_request, opts = {}) ⇒ CreateWhatsAppSandboxSession200Response
Start a sandbox activation Creates (or refreshes) a pending sandbox session for the given phone and immediately fires the verified sandbox template from the shared sandbox number to that phone.
-
#create_whats_app_sandbox_session_with_http_info(create_whats_app_sandbox_session_request, opts = {}) ⇒ Array<(CreateWhatsAppSandboxSession200Response, Integer, Hash)>
Start a sandbox activation Creates (or refreshes) a pending sandbox session for the given phone and immediately fires the verified sandbox template from the shared sandbox number to that phone.
-
#delete_whats_app_sandbox_session(session_id, opts = {}) ⇒ UpdateYoutubeDefaultPlaylist200Response
Revoke a sandbox session Hard-deletes the session.
-
#delete_whats_app_sandbox_session_with_http_info(session_id, opts = {}) ⇒ Array<(UpdateYoutubeDefaultPlaylist200Response, Integer, Hash)>
Revoke a sandbox session Hard-deletes the session.
-
#initialize(api_client = ApiClient.default) ⇒ WhatsAppSandboxApi
constructor
A new instance of WhatsAppSandboxApi.
-
#list_whats_app_sandbox_sessions(opts = {}) ⇒ ListWhatsAppSandboxSessions200Response
List your sandbox sessions Returns all of the authenticated user's non-expired sandbox sessions (pending + active) plus the sandbox phone number.
-
#list_whats_app_sandbox_sessions_with_http_info(opts = {}) ⇒ Array<(ListWhatsAppSandboxSessions200Response, Integer, Hash)>
List your sandbox sessions Returns all of the authenticated user's non-expired sandbox sessions (pending + active) plus the sandbox phone number.
Constructor Details
#initialize(api_client = ApiClient.default) ⇒ WhatsAppSandboxApi
Returns a new instance of WhatsAppSandboxApi.
19 20 21 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 19 def initialize(api_client = ApiClient.default) @api_client = api_client end |
Instance Attribute Details
#api_client ⇒ Object
Returns the value of attribute api_client.
17 18 19 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 17 def api_client @api_client end |
Instance Method Details
#create_whats_app_sandbox_session(create_whats_app_sandbox_session_request, opts = {}) ⇒ CreateWhatsAppSandboxSession200Response
Start a sandbox activation
Creates (or refreshes) a pending sandbox session for the given phone and immediately fires the verified sandbox template from the shared sandbox number to that phone. The session activates when the phone owner replies to that WhatsApp message — the reply itself is proof of ownership. One phone per user: if the caller already has a non-expired session for a DIFFERENT phone, the request is rejected with invalid_field_value (the message names the existing phone so it can be revoked first). Re-creating a session for the SAME phone is idempotent and refreshes the verification template. If Meta rejects the template send (not a WhatsApp number, paused WABA, token issue), the pending row is rolled back and the Meta error message is returned in error so the caller knows why.
27 28 29 30 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 27 def create_whats_app_sandbox_session(create_whats_app_sandbox_session_request, opts = {}) data, _status_code, _headers = create_whats_app_sandbox_session_with_http_info(create_whats_app_sandbox_session_request, opts) data end |
#create_whats_app_sandbox_session_with_http_info(create_whats_app_sandbox_session_request, opts = {}) ⇒ Array<(CreateWhatsAppSandboxSession200Response, Integer, Hash)>
Start a sandbox activation Creates (or refreshes) a pending sandbox session for the given phone and immediately fires the verified sandbox template from the shared sandbox number to that phone. The session activates when the phone owner replies to that WhatsApp message — the reply itself is proof of ownership. One phone per user: if the caller already has a non-expired session for a DIFFERENT phone, the request is rejected with `invalid_field_value` (the message names the existing phone so it can be revoked first). Re-creating a session for the SAME phone is idempotent and refreshes the verification template. If Meta rejects the template send (not a WhatsApp number, paused WABA, token issue), the pending row is rolled back and the Meta error message is returned in `error` so the caller knows why.
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 37 def create_whats_app_sandbox_session_with_http_info(create_whats_app_sandbox_session_request, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: WhatsAppSandboxApi.create_whats_app_sandbox_session ...' end # verify the required parameter 'create_whats_app_sandbox_session_request' is set if @api_client.config.client_side_validation && create_whats_app_sandbox_session_request.nil? fail ArgumentError, "Missing the required parameter 'create_whats_app_sandbox_session_request' when calling WhatsAppSandboxApi.create_whats_app_sandbox_session" end # resource path local_var_path = '/v1/whatsapp/sandbox/sessions' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # HTTP header 'Content-Type' content_type = @api_client.select_header_content_type(['application/json']) if !content_type.nil? header_params['Content-Type'] = content_type end # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] || @api_client.object_to_http_body(create_whats_app_sandbox_session_request) # return_type return_type = opts[:debug_return_type] || 'CreateWhatsAppSandboxSession200Response' # auth_names auth_names = opts[:debug_auth_names] || ['bearerAuth'] = opts.merge( :operation => :"WhatsAppSandboxApi.create_whats_app_sandbox_session", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:POST, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: WhatsAppSandboxApi#create_whats_app_sandbox_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |
#delete_whats_app_sandbox_session(session_id, opts = {}) ⇒ UpdateYoutubeDefaultPlaylist200Response
Revoke a sandbox session Hard-deletes the session. The user loses the ability to send to that phone via the sandbox until they re-activate it. Existing conversations and messages already exchanged with that phone are untouched — revocation only blocks FUTURE sends. Sessions belonging to other users cannot be revoked; the response is the same 400 as "session not found" so existence isn't leaked.
95 96 97 98 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 95 def delete_whats_app_sandbox_session(session_id, opts = {}) data, _status_code, _headers = delete_whats_app_sandbox_session_with_http_info(session_id, opts) data end |
#delete_whats_app_sandbox_session_with_http_info(session_id, opts = {}) ⇒ Array<(UpdateYoutubeDefaultPlaylist200Response, Integer, Hash)>
Revoke a sandbox session Hard-deletes the session. The user loses the ability to send to that phone via the sandbox until they re-activate it. Existing conversations and messages already exchanged with that phone are untouched — revocation only blocks FUTURE sends. Sessions belonging to other users cannot be revoked; the response is the same 400 as "session not found" so existence isn't leaked.
105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 105 def delete_whats_app_sandbox_session_with_http_info(session_id, opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: WhatsAppSandboxApi.delete_whats_app_sandbox_session ...' end # verify the required parameter 'session_id' is set if @api_client.config.client_side_validation && session_id.nil? fail ArgumentError, "Missing the required parameter 'session_id' when calling WhatsAppSandboxApi.delete_whats_app_sandbox_session" end # resource path local_var_path = '/v1/whatsapp/sandbox/sessions/{sessionId}'.sub('{' + 'sessionId' + '}', CGI.escape(session_id.to_s)) # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'UpdateYoutubeDefaultPlaylist200Response' # auth_names auth_names = opts[:debug_auth_names] || ['bearerAuth'] = opts.merge( :operation => :"WhatsAppSandboxApi.delete_whats_app_sandbox_session", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: WhatsAppSandboxApi#delete_whats_app_sandbox_session\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |
#list_whats_app_sandbox_sessions(opts = {}) ⇒ ListWhatsAppSandboxSessions200Response
List your sandbox sessions Returns all of the authenticated user's non-expired sandbox sessions (pending + active) plus the sandbox phone number. In practice there is at most one session per user since the sandbox is one-phone-per-user; the array shape is preserved for forward compatibility.
157 158 159 160 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 157 def list_whats_app_sandbox_sessions(opts = {}) data, _status_code, _headers = list_whats_app_sandbox_sessions_with_http_info(opts) data end |
#list_whats_app_sandbox_sessions_with_http_info(opts = {}) ⇒ Array<(ListWhatsAppSandboxSessions200Response, Integer, Hash)>
List your sandbox sessions Returns all of the authenticated user's non-expired sandbox sessions (pending + active) plus the sandbox phone number. In practice there is at most one session per user since the sandbox is one-phone-per-user; the array shape is preserved for forward compatibility.
166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 |
# File 'lib/zernio-sdk/api/whats_app_sandbox_api.rb', line 166 def list_whats_app_sandbox_sessions_with_http_info(opts = {}) if @api_client.config.debugging @api_client.config.logger.debug 'Calling API: WhatsAppSandboxApi.list_whats_app_sandbox_sessions ...' end # resource path local_var_path = '/v1/whatsapp/sandbox/sessions' # query parameters query_params = opts[:query_params] || {} # header parameters header_params = opts[:header_params] || {} # HTTP header 'Accept' (if needed) header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept'] # form parameters form_params = opts[:form_params] || {} # http body (model) post_body = opts[:debug_body] # return_type return_type = opts[:debug_return_type] || 'ListWhatsAppSandboxSessions200Response' # auth_names auth_names = opts[:debug_auth_names] || ['bearerAuth'] = opts.merge( :operation => :"WhatsAppSandboxApi.list_whats_app_sandbox_sessions", :header_params => header_params, :query_params => query_params, :form_params => form_params, :body => post_body, :auth_names => auth_names, :return_type => return_type ) data, status_code, headers = @api_client.call_api(:GET, local_var_path, ) if @api_client.config.debugging @api_client.config.logger.debug "API called: WhatsAppSandboxApi#list_whats_app_sandbox_sessions\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}" end return data, status_code, headers end |