Files
Jellystat/backend/migrations/098_create_webhooks_table.js

24 lines
848 B
JavaScript

exports.up = function (knex) {
return knex.schema.createTable("webhooks", (table) => {
table.increments("id").primary();
table.string("name").notNullable();
table.string("url").notNullable();
table.text("headers").defaultTo("{}");
table.text("payload").defaultTo("{}");
table.string("method").defaultTo("POST");
table.string("trigger_type").notNullable();
table.string("webhook_type").defaultTo("generic");
table.string("schedule").nullable();
table.string("event_type").nullable();
table.boolean("enabled").defaultTo(true);
table.timestamp("last_triggered").nullable();
table.boolean("retry_on_failure").defaultTo(false);
table.integer("max_retries").defaultTo(3);
table.timestamps(true, true);
});
};
exports.down = function (knex) {
return knex.schema.dropTable("webhooks");
};