We’re fixing an edge case where edit-only views, including edit forms, inline-editable tables, search results, list views, and calendar views, could be used to create new records by sending a POST request directly to the view’s endpoint, bypassing the intended form entirely.
This change will be in next week’s regularly scheduled release.
This was not something that could happen through normal use of the Live App. It required a developer to intercept a legitimate edit request and manually modify it (changing the method from PUT to POST and stripping the record ID).
The server will now check whether a view is actually capable of creating records before allowing a POST. Edit forms, inline-editable grids, search views, list views, and calendar views (calendar views without “Allow adding events” enabled) will all reject POST requests.
It’s possible this could be a breaking change for any custom code or integration that sends POST requests to view-based endpoints associated with edit forms or inline edit views.
If you’re using the API to create records, you should be sending POST requests to an add record form’s endpoint or using the object-based API (/api/v1/objects/{object_key}/records).
View-based create calls that were previously accepted will now return an error.