Class: Telerivet::Webhook
Overview
Represents a webhook that is triggered when specific events occur within a project.
Webhooks allow your server to receive HTTP POST requests when certain events happen, such as when a message's status changes or when a contact is updated.
When an event occurs that matches a webhook's event types, Telerivet will send an HTTP POST request to the webhook URL with information about the event. For more information about the webhook request format, see the Webhook API documentation.
Note: The Webhook object is not used for notifying your server when incoming messages are received. To notify a URL when incoming messages are received, you can configure a webhook by creating a Service with type incoming_message_webhook.
Fields:
- id (string, max 34 characters)
* ID of the webhook
* Read-only
- url
* URL that webhook requests are sent to
* Updatable via API
- secret
* Secret included with webhook requests for authentication (sent as HTTP basic auth
password with username 'telerivet')
* Updatable via API
- events (array of strings)
* Array of event types that trigger this webhook. Possible values: `send_status`
(message status updates), `send_broadcast` (broadcast sent), `contact_update` (contact
added/updated/deleted), `message_metadata` (message metadata updated)
* Updatable via API
- project_id
* ID of the project this webhook belongs to
* Read-only
Instance Method Summary collapse
-
#delete ⇒ Object
Deletes the webhook.
- #events ⇒ Object
- #events=(value) ⇒ Object
- #get_base_api_path ⇒ Object
- #id ⇒ Object
- #project_id ⇒ Object
-
#save ⇒ Object
Saves any fields that have changed for this webhook.
- #secret ⇒ Object
- #secret=(value) ⇒ Object
- #url ⇒ Object
- #url=(value) ⇒ Object
Methods inherited from Entity
#get, #initialize, #load, #set, #set_data, #to_s, #vars
Constructor Details
This class inherits a constructor from Telerivet::Entity
Instance Method Details
#delete ⇒ Object
Deletes the webhook.
56 57 58 |
# File 'lib/telerivet/webhook.rb', line 56 def delete() @api.do_request("DELETE", get_base_api_path()) end |
#events ⇒ Object
80 81 82 |
# File 'lib/telerivet/webhook.rb', line 80 def events get('events') end |
#events=(value) ⇒ Object
84 85 86 |
# File 'lib/telerivet/webhook.rb', line 84 def events=(value) set('events', value) end |
#get_base_api_path ⇒ Object
92 93 94 |
# File 'lib/telerivet/webhook.rb', line 92 def get_base_api_path() "/projects/#{get('project_id')}/webhooks/#{get('id')}" end |
#id ⇒ Object
60 61 62 |
# File 'lib/telerivet/webhook.rb', line 60 def id get('id') end |
#project_id ⇒ Object
88 89 90 |
# File 'lib/telerivet/webhook.rb', line 88 def project_id get('project_id') end |
#save ⇒ Object
Saves any fields that have changed for this webhook.
49 50 51 |
# File 'lib/telerivet/webhook.rb', line 49 def save() super end |
#secret ⇒ Object
72 73 74 |
# File 'lib/telerivet/webhook.rb', line 72 def secret get('secret') end |
#secret=(value) ⇒ Object
76 77 78 |
# File 'lib/telerivet/webhook.rb', line 76 def secret=(value) set('secret', value) end |
#url ⇒ Object
64 65 66 |
# File 'lib/telerivet/webhook.rb', line 64 def url get('url') end |
#url=(value) ⇒ Object
68 69 70 |
# File 'lib/telerivet/webhook.rb', line 68 def url=(value) set('url', value) end |