Download Latest Version v13.2.0 source code.tar.gz (117.8 kB)
Email in envelope

Get an email when there's a new version of Apiato

Home / v13.0.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2025-05-07 6.8 kB
v13.0.0 source code.tar.gz 2025-05-07 111.2 kB
v13.0.0 source code.zip 2025-05-07 425.6 kB
Totals: 3 Items   543.7 kB 1

What's Changed

A lot of files have been moved around, renamed or removed. See the full changelog for Apiato and Core.

Possible breaking changes are documented in the upgrade guide.

Notable Changes

  • update min PHP version to ^8.2
  • update min Laravel version to ^11.23
  • allow configuration using a configuration class (Similar to Laravel)
  • allow publishing apiato.php configs
  • rename generate command from apiato:generate to apiato:make
  • add Response facade
  • simplify url generation for multi-frontend apps
  • add new helper functions
  • add new macros
  • change abstract class namespace from Apiato\Core\Abstracts to Apiato\Core
  • remove laravel/passport dependency
  • test: improve Core coverage by +85%

Apiato

Configs

Removed

  • app/Ship/Configs/notification.php config file
  • apiato.api.prefix
  • apiato.api.enable_version_prefix
  • apiato.requests.allow-roles-to-access-all-routes
  • apiato.requests.force-valid-includes
  • apiato.requests.params
  • apiato.seeders
  • apiato.tests
  • appSection-authentication.require_email_verification
  • appSection-authentication.email_verification_link_expiration_time_in_minute
  • appSection-authentication.login - login with multiple field feature has been removed
  • appSection-authentication.allowed-reset-password-urls
  • appSection-authentication.allowed-verify-email-urls

Changed

  • apiato.api.expires-in renamed and moved to appSection-authentication.tokens-expire-in
  • apiato.api.refresh-expires-in renamed and moved to appSection-authentication.refresh-tokens-expire-in
  • apiato.throttle renamed to apiato.rate-limiter

Added

  • apiato.defaults.app
  • apiato.rate-limiter.name
  • apiato.apps.web.url

Error Handling

Error handling is completely reworked. See the upgrade guide for more Details.

Core

Abstract\Parent Classes

Action

Commands

  • remove iu property

Controller

  • remove the usage of Illuminate\Foundation\Auth\Access\AuthorizesRequests trait
  • remove the usage of Illuminate\Foundation\Validation\ValidatesRequests trait
  • remove usage of HashIdTrait

Since Api and Web controllers were extending the Controller class, those removed traits features are also no loger available in them.

ApiController

WebController

  • remove iu property

Job

  • remove the usage of following traits
  • Illuminate\Bus\Queueable
  • Illuminate\Foundation\Bus\Dispatchable
  • Illuminate\Queue\InteractsWithQueue
  • Illuminate\Queue\SerializesModels
  • remove Illuminate\Contracts\Queue\ShouldQueue interface usage

Mail

  • remove the usage of Illuminate\Queue\SerializesModels trait

Notification

  • remove usage of 'notification.channels' config

Request

Request class authorization features has been changed drastically. See to the upgrade guide for more Details.

Task

TestCase

  • remove usage of Illuminate\Foundation\Testing\LazilyRefreshDatabase trait

Testing features has been changed drastically. See to the upgrade guide for more Details.

Value

Commands

  • remove apiato - use php artisan about instead
  • remove apiato:seed-deploy
  • remove apiato:seed-test

Exceptions

All exceptions under the Apiato\Core\Exceptions namespace have been removed. - Apiato\Core\Exceptions\AuthenticationException - Apiato\Core\Exceptions\GeneratorErrorException - Apiato\Core\Exceptions\IncorrectIdException - Apiato\Core\Exceptions\InvalidTransformerException - Apiato\Core\Exceptions\MissingJSONHeaderException - Apiato\Core\Exceptions\MissingTestEndpointException - Apiato\Core\Exceptions\UndefinedMethodException - Apiato\Core\Exceptions\UnsupportedFractalIncludeException - Apiato\Core\Exceptions\WrongConfigurationsException - Apiato\Core\Exceptions\WrongEndpointFormatException

Misc

  • remove Apiato\Core\Middlewares\Http\ProfilerMiddleware middleware class
  • remove no_spaces custom validation rule
  • remove uncamelize helper function
  • remove all custom test assertions (except assertDatabaseTable)

Development Insights

Open Source doesn't come cheap. Here are some interesting facts about this release: * This release, including Core v13.0 and docs, took around 96 work days. That would be around 770 hours of work. * For the past year, I only took around 10 days off, including the weekends.

How You Can Support

If you need help with your Apiato project—whether you’re an individual developer or part of an organization—We offer dedicated consultancy and support services tailored to your needs. By working with us, you’ll not only gain expert guidance but also contribute to the sustainability of this project. Your support ensures that we can continue to build amazing open-source tools for you and the broader developer community.

Get in touch via email or Discord ❤️

Thank You

To everyone who uses, shares or contributes to Apiato—thank you. Your support and trust make the sacrifices worthwhile. Together, we’re shaping something extraordinary.

Source: README.md, updated 2025-05-07