> By design my REST API utilizes dynamic properties. I've always found it to
>> be a feature of PHP, not a bug.
>> Chase Peeler
> I am in the unfortunate position of inheriting a system with such REST API
> design. I can never build new REST APIs to replace the old ones because
> nobody can ever know how many combinations of possible input parameters
> there are.
Our inputs and outputs are both well defined. I've built a framework around
our entities that convert them into API payloads - attributes (symfony, but
eventually we might update it to use native attributes) define what fields
are visible based on user and whether it's the short (e.g. part of a
collection) or full version. The thing is that occasionally we'll have a
payload to return that requires additional attributes. Dynamic properties
allow us to just tack that on to the existing entity without having to
define it as a property on the entity (outside of the one use case the
property isn't needed and it definitely doesn't correspond to a database