Fix TypeError crash when POST data is not a dict#3636
Merged
leplatrem merged 3 commits intoKinto:mainfrom Feb 4, 2026
Merged
Conversation
When posting to /records endpoint with data that is not a dictionary
(e.g., {"data": ""}), the server would crash with a TypeError instead
of returning a proper 400 validation error.
Added TypeError to the exception handling in object_id property.
leplatrem
approved these changes
Jan 30, 2026
Contributor
leplatrem
left a comment
There was a problem hiding this comment.
💯
Thank you!
Don't hesitate to add yourself in the contributors file if you like
Contributor
|
@chen0427ok could you please |
Contributor
Author
Sure! I've reformatted the code. |
Contributor
|
Thank you 🎉 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #3606
/recordsendpoint withdatathat is not a dictionary (e.g.,{"data": ""}), the server would crash withTypeError: list indices must be integers or slices, not strinstead of returning a proper 400 validation error.TypeErrorto the exception handling inobject_idproperty atkinto/core/resource/__init__.py:265Test plan
test_post_raises_400_if_data_is_not_a_dict