Webhook API

This commit is contained in:
James Cole
2021-03-07 12:13:22 +01:00
parent c4882231d1
commit ba163f82d1
19 changed files with 800 additions and 90 deletions

View File

@@ -507,6 +507,8 @@ Route::group(
}
);
// Users API routes:
Route::group(
['middleware' => ['auth:api', 'bindings', IsAdmin::class], 'namespace' => 'FireflyIII\Api\V1\Controllers\System', 'prefix' => 'users',
@@ -521,6 +523,10 @@ Route::group(
}
);
/**
* USER
*/
// Preference API routes:
Route::group(
['namespace' => 'FireflyIII\Api\V1\Controllers\User', 'prefix' => 'preferences',
@@ -533,6 +539,30 @@ Route::group(
}
);
// Webhook API routes:
Route::group(
['namespace' => 'FireflyIII\Api\V1\Controllers\Webhook', 'prefix' => 'webhooks',
'as' => 'api.v1.webhooks.',],
static function () {
Route::get('', ['uses' => 'ShowController@index', 'as' => 'index']);
Route::post('', ['uses' => 'StoreController@store', 'as' => 'store']);
Route::get('{webhook}', ['uses' => 'ShowController@show', 'as' => 'show']);
Route::put('{webhook}', ['uses' => 'UpdateController@update', 'as' => 'update']);
Route::post('{webhook}/submit', ['uses' => 'SubmitController@submit', 'as' => 'submit']);
Route::delete('{webhook}', ['uses' => 'DestroyController@destroy', 'as' => 'destroy']);
// webhook messages
Route::get('{webhook}/messages', ['uses' => 'MessageController@index', 'as' => 'messages.index']);
Route::get('{webhook}/messages/{webhookMessage}', ['uses' => 'MessageController@show', 'as' => 'messages.show']);
Route::delete('{webhook}/messages/{webhookMessage}', ['uses' => 'DestroyController@destroyMessage', 'as' => 'messages.destroy']);
// webhook message attempts
Route::get('{webhook}/messages/{webhookMessage}/attempts', ['uses' => 'AttemptController@index', 'as' => 'attempts.index']);
Route::get('{webhook}/messages/{webhookMessage}/attempts/{webhookAttempt}', ['uses' => 'AttemptController@show', 'as' => 'attempts.show']);
Route::delete('{webhook}/messages/{webhookMessage}/attempts/{webhookAttempt}', ['uses' => 'DestroyController@destroyAttempt', 'as' => 'attempts.destroy']);
}
);
@@ -625,27 +655,6 @@ Route::group(
//
//// TODO VERIFY API DOCS
//Route::group(
// ['namespace' => 'FireflyIII\Api\V1\Controllers\Webhook', 'prefix' => 'webhooks',
// 'as' => 'api.v1.webhooks.',],
// static function () {
//
// // Webhook API routes:
// Route::get('', ['uses' => 'IndexController@index', 'as' => 'index']);
//
// // create new one.
// Route::post('', ['uses' => 'CreateController@store', 'as' => 'store']);
//
// // update
// Route::put('{webhook}', ['uses' => 'EditController@update', 'as' => 'update']);
// Route::delete('{webhook}', ['uses' => 'DeleteController@destroy', 'as' => 'destroy']);
// }
//);
//
//
//