This guide walks you through the core Exo concept: Resource creation. You will define one Resource and then use the API and triggers generated from it.Documentation Index
Fetch the complete documentation index at: https://docs.exowizz.com/llms.txt
Use this file to discover all available pages before exploring further.
What is a Resource?
A Resource is a PHP class that tells Exo:- Which model to expose (for example:
User,Contact,Invoice) - Which data shape to return through API and webhooks
- Which trigger events to emit (
on_create,on_update,on_delete)
Generate it
app/Exo/Resources/UserResource.php.
Define the required methods
Every Resource implementsname(), model(), triggers(), and transform().
What Exo generates from this Resource
After app boot, Exo auto-discovers your Resource and registers:GET /exo-api/resources(resource metadata)GET /exo-api/resources/user(list)GET /exo-api/resources/user/{id}(single record)POST /exo-api/resources/user(create)PUT /exo-api/resources/user/{id}(update)DELETE /exo-api/resources/user/{id}(delete)- Trigger emission for
on_create,on_update, andon_delete
Test the generated API
Confirm registration:Add medium-level controls
Once this works, add optional methods for:- Validation with
createRules()andupdateRules() - Ownership with
ownerColumn()andis_admincallback - Query control with
searchableColumns()orapplySearch() - Operation flags with
supportsCreate(),supportsUpdate(),supportsDelete()
Next steps
Resource guides
Continue with transformers, CRUD behavior, ownership, and search.
Webhooks
See how your Resource triggers become webhook deliveries.