... | ... | @@ -162,7 +162,9 @@ Remember: **Fat models, skinny handlers.** |
|
|
|
|
|
As of October 2020, the inLeague API supports an **expand** array parameter to all requests. The convention is borrowed from Stripe's [Expanding Requests](https://stripe.com/docs/api/expanding_objects) feature as a mechanism for an API consumer to request additional data from an endpoint without having to establish a whole new endpoint.
|
|
|
|
|
|
To enable an expandable field, see `qInvoiceInstance.cfc` as an example. The `expandable` property on `this.memento` contains an array of possible expandable items. When calling for the memento via `.asMemento()` or `.getMemento()`, it is necessary to specify an `includes` argument, as with the `invoice.cfc` `view` handler:
|
|
|
To request one or more expandable fields, provide an `expand` parameter as an array of values in the body (for `POST` or `PUT` or `PATCH`) or as a comma-delimited list in the `expand` query parameter for `GET` requests.
|
|
|
|
|
|
To enable an expandable field on the back end, see `qInvoiceInstance.cfc` as an example. The `expandable` property on `this.memento` contains an array of possible expandable items. When calling for the memento via `.asMemento()` or `.getMemento()`, it is necessary to specify an `includes` argument, as with the `invoice.cfc` `view` handler:
|
|
|
|
|
|
```
|
|
|
invoice.getMemento( includes = invoice.getExpandedIncludes( rc.expand ) )
|
... | ... | |