kitbrennan90 / laravel-sendgrid-webhooks Goto Github PK
View Code? Open in Web Editor NEWLaravel package for receiving and storing event webhooks from Sendgrid
Laravel package for receiving and storing event webhooks from Sendgrid
If I'm not mistaken the "sendgrid/sendgrid" that is required in the composer.json isn't used anyway. To keep the package light, I think it whould be a good idea to remove it.
-I run:
php artisan migrate
-This throw error.
We have a migration to change the table structure in 1.1.0
. In order to ensure people can still run migrations when they upgrade from 1.*
(including 1.0 before the migration), we should keep the migration in place in 2.*
, but then remove the migration and update initial table creation in 3.*
.
It would be super useful to be able to fire a Laravel event that the library user's application can listen to whenever a new Sendgrid webhook is received.
For example, this would allow a user to save to their own analytics software whenever an email is opened.
DESCRIPTION:
InnoDB has a limitation of 768 bytes per index key and you won't be able to create an index longer than that.
ERROR 1:
SQLSTATE[42000]: Syntax error or access violation: 1170 BLOB/TEXT column 'categories' used in key specification without a key length
FILE: UpdateCategoryColumnToArray
Schema::table('sendgrid_webhook_events', function (Blueprint $table) {
$table->jsonb('categories')->default(json_encode([]))->index();
});
DESCRIPTION:
MySql does not support JSON type
ERROR 2:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'json) where
categoryis not null' at line 1
FILE: UpdateCategoryColumnToArray
default: {
DB::table('sendgrid_webhook_events')
->whereNotNull('category')
->update(['categories' => DB::raw("CAST(concat('[\"', category, '\"]') AS json)")]);
break;
Currently our logging sits within the library's controller which is leading to a bit of bloat, especially if we decide to add more events later. We should move the logging into a separate class and write unit tests for this class specifically.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.