Skip to content

API: Routes

Full route table for streams and entries endpoints.

Register routes with API::routeCrud() in a service provider's boot() method. It registers the default interface with both resources below. Paths below assume the default prefix api.

API::routeStreams() and API::routeEntries() register the same default interface with only one resource each. Use one helper, not several: each helper does nothing if the default interface is already registered, so calling routeStreams() and then routeEntries() leaves you with the stream routes only. To get both, call routeCrud(), or register your own interface with both resources.

Stream routes (StreamsResource)

Method Path Route name
GET /api/streams streams.api.streams.list
POST /api/streams streams.api.streams.create
GET /api/streams/{stream} streams.api.streams.show
PUT /api/streams/{stream} streams.api.streams.update
PATCH /api/streams/{stream} streams.api.streams.patch
DELETE /api/streams/{stream} streams.api.streams.delete

Stream controllers operate on the meta-stream from config('streams.core.streams_id').

Entry routes (EntriesResource)

Method Path Route name
GET /api/streams/{stream}/entries streams.api.entries.list
POST /api/streams/{stream}/entries streams.api.entries.create
GET /api/streams/{stream}/entries/{entry} streams.api.entries.show
PUT /api/streams/{stream}/entries/{entry} streams.api.entries.update
PATCH /api/streams/{stream}/entries/{entry} streams.api.entries.patch
DELETE /api/streams/{stream}/entries/{entry} streams.api.entries.delete
POST /api/streams/{stream}/query streams.api.entries.query

The {entry} parameter accepts composite IDs (where => ['entry' => '(.*)']).

Not valid

There is no shorthand /api/{stream} path. Always use /api/streams/{stream}/entries.

Related