email_delivery_logs.cjs
779 Bytes
const tableName = 'email_delivery_logs'
function buildTable(t, knex) {
t.string('id', 120).primary()
t.string('provider', 48).nullable()
t.string('message_id', 191).nullable().index()
t.string('purpose', 64).notNullable().index()
t.string('to_email', 320).notNullable().index()
t.string('status', 24).notNullable().defaultTo('sent')
t.integer('attempt_count').unsigned().notNullable().defaultTo(0)
t.datetime('next_attempt_at', { precision: 3 }).nullable()
t.text('template').nullable()
t.text('error_message').nullable()
t.text('metadata_json', 'longtext').nullable()
t.datetime('created_at', { precision: 3 }).notNullable().defaultTo(knex.fn.now(3))
t.datetime('updated_at', { precision: 3 }).nullable()
}
module.exports = { tableName, buildTable }