Module: Tamara::JsonSchemas::WebhookEvent

Defined in:
lib/tamara/json_schemas/webhook_event.rb

Constant Summary collapse

EVENTS =
{
  Tamara::JsonSchemas::Webhook::ORDER =>
  %w[order_approved order_authorised order_canceled order_updated order_captured order_refunded].freeze,
  Tamara::JsonSchemas::Webhook::DISPUTE =>
  %w[OrderDisputeAwaitingMerchantResponse OrderDisputeClosedMerchantAcceptedClaim
     OrderDisputeClosedTamaraAcceptedClaim OrderDisputeClosedTamaraAcceptedAndMerchantRefundedClaim
     OrderDisputeClosedClaimCancelled OrderDisputeWasUpdated].freeze
}.freeze

Class Method Summary collapse

Class Method Details

.schemaObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'lib/tamara/json_schemas/webhook_event.rb', line 13

def self.schema
  [
    {
      properties: {
        type: { const: Tamara::JsonSchemas::Webhook::ORDER },
        events: {
          type: "array",
          items: Types::Enum.schema(values: EVENTS[Tamara::JsonSchemas::Webhook::ORDER])
        }
      }
    },
    {
      properties: {
        type: { const: Tamara::JsonSchemas::Webhook::DISPUTE },
        events: {
          type: "array",
          items: Types::Enum.schema(values: EVENTS[Tamara::JsonSchemas::Webhook::DISPUTE])
        }
      }
    }
  ]
end