June 24, 2024
Background: Historically, our API has supported type-coercion within JSON body payloads. This allowed for flexibility such as submitting strings where integers were expected or using null
values for non-nullable properties, which our system automatically converted to default values of the correct type.
Change Overview: To enhance the stability, accuracy, and overall developer experience, we will discontinue this type-coercion feature starting June 24th, 2024. This adjustment constitutes a potentially breaking change for any integrations that do not adhere strictly to our API schema and rely on this previously undocumented flexibility. Note that the coercion will continue functioning for parameters passed as part of the URL.
Implications of the Change:
Example of Change:
Current API Call (Accepted until June 24th, 2024):
1{
2 "projectId": "{{Project ID}}",
3 "categories": [
4 {
5 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
6 "name": "Some category",
7 "order": "10" // Currently accepts a string that represents an integer
8 }
9 ]
10
Required API Call Post-Change:
1{
2 "projectId": "{{Project ID}}",
3 "categories": [
4 {
5 "id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
6 "name": "Some category",
7 "order": 10 // Strictly requires an integer per schema definition
8 }
9 ]
10}