feat(webhooks): align account payloads
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
CREATE TABLE IF NOT EXISTS webhook_subscriptions (
|
||||
id SERIAL PRIMARY KEY,
|
||||
account_id INTEGER NOT NULL,
|
||||
inbox_id INTEGER,
|
||||
name VARCHAR(255),
|
||||
url VARCHAR(2048) NOT NULL,
|
||||
events JSONB NOT NULL DEFAULT '[]',
|
||||
secret VARCHAR(128) NOT NULL,
|
||||
webhook_type INTEGER DEFAULT 0,
|
||||
active BOOLEAN DEFAULT TRUE,
|
||||
verified_at TIMESTAMP WITH TIME ZONE,
|
||||
last_delivery_status VARCHAR(50),
|
||||
last_delivery_at TIMESTAMP WITH TIME ZONE,
|
||||
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
||||
deleted_at TIMESTAMP WITH TIME ZONE
|
||||
);
|
||||
|
||||
ALTER TABLE webhook_subscriptions
|
||||
ADD COLUMN IF NOT EXISTS inbox_id INTEGER,
|
||||
ADD COLUMN IF NOT EXISTS name VARCHAR(255),
|
||||
ADD COLUMN IF NOT EXISTS webhook_type INTEGER DEFAULT 0;
|
||||
|
||||
UPDATE webhook_subscriptions SET active = TRUE WHERE active IS NULL;
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_webhook_subscriptions_account_id ON webhook_subscriptions(account_id) WHERE deleted_at IS NULL;
|
||||
CREATE INDEX IF NOT EXISTS idx_webhook_subscriptions_inbox_id ON webhook_subscriptions(inbox_id) WHERE deleted_at IS NULL;
|
||||
CREATE UNIQUE INDEX IF NOT EXISTS idx_webhook_subscriptions_account_url ON webhook_subscriptions(account_id, url) WHERE deleted_at IS NULL AND active = TRUE;
|
||||
Reference in New Issue
Block a user