RESTful API

Akaunting provides a RESTful API to create, read, update and delete (CRUD) all entities of Akaunting.

Authentication

The HTTP Basic authentication is used by the Akaunting API. Any user that has read-api permission may access the API using their email and password. By default, Akaunting gives read-api permission to admin role.

Permissions for CRUD actions are based on default ACL.

Routes

The API endpoints/routes of Akaunting are located in the following file:

routes/api.php

You may also add API endpoints to your module:

<?php

 use Illuminate\Support\Facades\Route;

 /**
 * 'api' middleware and 'api/my-blog' prefix applied to all routes (including names)
 *
 * @see \App\Providers\Route::register
 */

 Route::api('my-blog', function () {
     Route::get('posts/{post}/enable', '[email protected]')->name('.posts.enable');
     Route::get('posts/{post}/disable', '[email protected]')->name('.posts.disable');
     Route::resource('posts', 'Posts');
     Route::resource('comments', 'Comments');
 });

Check out the My Blog module as an example.

API Resources

API Resources allow you to easily and consistently transform models into an array. You can find the API Resources of Akaunting in the following directory:

app/Http/Resources

Feel free to read the documentation of Laravel for further details on API Resources.

Scroll to top