Class: LockstepSdk::WebhookModel
- Inherits:
-
Object
- Object
- LockstepSdk::WebhookModel
- Defined in:
- lib/lockstep_sdk/models/webhook_model.rb
Overview
A Webhook is a subscription to receive notifications automatically to the supplied callback url when changes are made to a supported object.
You will need to create at least one Webhook rule to receive notifications when a specific type of object is inserted, deleted, or updated.
Instance Attribute Summary collapse
-
#callback_http_method ⇒ String
The HTTP Method to be used on the callback URL for use in notifications (GET, POST, PATCH, PUT).
-
#callback_url ⇒ Uri
The URL where the notification will be sent via the method set in CallbackHttpMethod.
-
#client_secret ⇒ String
An secret set during webhook creation that can be used to verify that the notification is coming from the Lockstep API.
-
#created ⇒ Date-time
The date this webhook was created.
-
#created_user_id ⇒ Uuid
The ID of the user who created this webhook.
-
#expiration_date ⇒ Date-time
The expiration date for the given webhook subscription.
-
#group_key ⇒ Uuid
The GroupKey uniquely identifies a single Lockstep Platform account.
-
#modified ⇒ Date-time
The date this webhook was last modified.
-
#modified_user_id ⇒ Uuid
The ID of the user who last modified this webhook.
-
#name ⇒ String
A name for the webhook subscription.
-
#partition_key ⇒ String
The partition key used for the webhook callback history.
-
#request_content_type ⇒ String
The format of the content to be returned in the webhook notifications.
-
#retry_count ⇒ Int32
The amount of consecutive failed notifications, not including the current attempt, before marking the webhook as errored (i.e. if the value is set to 0, the webhook will be marked errored on the first failure, if the value is set to 1 the webhook will be marked errored on the second failure, and so on).
-
#status_code ⇒ String
The status of the webhook (Active, Inactive, Errored).
-
#status_message ⇒ String
When the StatusCode is set to Errored a message is supplied for why it was errored.
-
#webhook_id ⇒ Uuid
The unique ID of this record, automatically assigned by Lockstep when this record is added to the Lockstep platform.
-
#webhook_rules ⇒ WebhookRuleModel
A list of Webhook Rules associated with this Webhook.
Instance Method Summary collapse
-
#as_json(options = {}) ⇒ object
This object as a JSON key-value structure.
-
#initialize(params = {}) ⇒ WebhookModel
constructor
Initialize the WebhookModel using the provided prototype.
-
#to_json(*options) ⇒ String
This object converted to a JSON string.
Constructor Details
#initialize(params = {}) ⇒ WebhookModel
Initialize the WebhookModel using the provided prototype
28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 28 def initialize(params = {}) @webhook_id = params.dig(:webhook_id) @group_key = params.dig(:group_key) @name = params.dig(:name) @status_code = params.dig(:status_code) = params.dig(:status_message) @client_secret = params.dig(:client_secret) @request_content_type = params.dig(:request_content_type) @callback_http_method = params.dig(:callback_http_method) @callback_url = params.dig(:callback_url) @expiration_date = params.dig(:expiration_date) @retry_count = params.dig(:retry_count) @created = params.dig(:created) @created_user_id = params.dig(:created_user_id) @modified = params.dig(:modified) @modified_user_id = params.dig(:modified_user_id) @webhook_rules = params.dig(:webhook_rules) @partition_key = params.dig(:partition_key) end |
Instance Attribute Details
#callback_http_method ⇒ String
78 79 80 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 78 def callback_http_method @callback_http_method end |
#callback_url ⇒ Uri
82 83 84 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 82 def callback_url @callback_url end |
#client_secret ⇒ String
70 71 72 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 70 def client_secret @client_secret end |
#created ⇒ Date-time
94 95 96 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 94 def created @created end |
#created_user_id ⇒ Uuid
98 99 100 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 98 def created_user_id @created_user_id end |
#expiration_date ⇒ Date-time
86 87 88 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 86 def expiration_date @expiration_date end |
#group_key ⇒ Uuid
54 55 56 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 54 def group_key @group_key end |
#modified ⇒ Date-time
102 103 104 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 102 def modified @modified end |
#modified_user_id ⇒ Uuid
106 107 108 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 106 def modified_user_id @modified_user_id end |
#name ⇒ String
58 59 60 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 58 def name @name end |
#partition_key ⇒ String
114 115 116 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 114 def partition_key @partition_key end |
#request_content_type ⇒ String
74 75 76 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 74 def request_content_type @request_content_type end |
#retry_count ⇒ Int32
90 91 92 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 90 def retry_count @retry_count end |
#status_code ⇒ String
62 63 64 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 62 def status_code @status_code end |
#status_message ⇒ String
66 67 68 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 66 def end |
#webhook_id ⇒ Uuid
50 51 52 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 50 def webhook_id @webhook_id end |
#webhook_rules ⇒ WebhookRuleModel
110 111 112 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 110 def webhook_rules @webhook_rules end |
Instance Method Details
#as_json(options = {}) ⇒ object
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 118 def as_json(={}) { 'webhookId' => @webhook_id, 'groupKey' => @group_key, 'name' => @name, 'statusCode' => @status_code, 'statusMessage' => , 'clientSecret' => @client_secret, 'requestContentType' => @request_content_type, 'callbackHttpMethod' => @callback_http_method, 'callbackUrl' => @callback_url, 'expirationDate' => @expiration_date, 'retryCount' => @retry_count, 'created' => @created, 'createdUserId' => @created_user_id, 'modified' => @modified, 'modifiedUserId' => @modified_user_id, 'webhookRules' => @webhook_rules, 'partitionKey' => @partition_key, } end |
#to_json(*options) ⇒ String
142 143 144 |
# File 'lib/lockstep_sdk/models/webhook_model.rb', line 142 def to_json(*) "[#{as_json(*options).to_json(*options)}]" end |