Sha256: 9f572925d92dde563c78e2a903c1910c4c14ebfb3fb0cea4184634532f1de230

Contents?: true

Size: 917 Bytes

Versions: 3

Compression:

Stored size: 917 Bytes

Contents

# frozen_string_literal: true

module WhatsappSdk
  module Api
    module Responses
      class ErrorResponse
        attr_reader :code, :subcode, :message, :type, :data, :fbtrace_id

        def initialize(code:, subcode:, message:, type:, data:, fbtrace_id:)
          @code = code
          @subcode = subcode
          @message = message
          @type = type
          @data = data
          @fbtrace_id = fbtrace_id
        end

        def self.build_from_response(response:)
          error_response = response["error"]
          return unless error_response

          new(
            code: error_response["code"],
            subcode: error_response["error_subcode"],
            message: error_response["message"],
            type: error_response["type"],
            data: error_response["data"],
            fbtrace_id: error_response["fbtrace_id"]
          )
        end
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
whatsapp_sdk-0.1.0 lib/whatsapp_sdk/api/responses/error_response.rb
whatsapp_sdk-0.0.2 lib/whatsapp_sdk/api/responses/error_response.rb
whatsapp_sdk-0.0.1 lib/whatsapp_sdk/api/responses/error_response.rb