Skip to main content

· One min read

We've made an improvement to how model properties are now generated in the code. The generated SDK now contains both camel case-d version of the property name and the actual property name (where applicable).
Read on to find more details about the change.

Please generate your SDK again to get the improved code.

· 2 min read

NodeJS SDKs will now return promises in endpoint calls, as an alternative to accepting callbacks.

  • We use ES6 Promises which is based on Promises/A+ and is interoperable with most Promise-based implementations.
  • Callbacks are still supported (for backward-compatibility) but are now optional.

Re-generate your NodeJS SDK to get the new Promise-enabled SDK implementation now.

· 3 min read

We have changed the structure of the SDK to break cyclic dependencies. Due to this, the following changes have been made:

  • Model deserialization logic has moved out from model classes.
  • We have added new files ObjectMapper.js and ModelFactory.js to the sdk.
  • Exception handling in BaseController has changed to use ObjectMapper.
  • BaseModel is now being used to assign values to model properties (when model class is directly instantiated)
  • BaseController is not being exposed by the API Client now.

Please generate your SDK again to get the improved code.

· One min read

APIMatic Code Generation engine now supports polymorphic responses with the help of a discriminator field.

  • Discriminator is a field that is used to differentiate between a parent model and models that inherit from it.
  • The response is deserialized into the parent model or one of its child classes by inspecting the discriminator field's value in the response.
  • Using a discriminator field, you can build leaner models by not having to build unions of fields needed by a polymorphic response.

Check out the Discriminator documentation to get started.

· 3 min read

Keeping with our tradition of Continuous Improvement, we are proud to announce a major revamp of NodeJS SDKs!

  • Our code now conforms with Airbnb's JavaScript Style Guide.
  • We are using ES6 classes, along with other ES6 primitives.
  • You can run npm run lint to lint your code immediately.
  • We generate CI/CD files for Travis, CircleCi, Appveyor and Jenkins to run NodeJS tests.

Please generate your SDK again if you want the improved ES6 based code.

· One min read

There was an issue in code generation for PHP SDKs where the model classes (custom types) had fields with incorrect PHP typehints. This lead to the JsonMapper mapping responses incorrectly to models during deserialization. However, this only occurred when a model had fields that were described as optional in the API description and no default value was provided.

Re-generate your PHP SDK to get the fix.

· One min read

If you have a Swagger 1.2 API description file split into Resource Listing and API Declaration files, you can import/convert it using a ZIP file. Previously, such API description file could only be converted/imported by providing the Resource Listing file via a URL where all API Declaration files were located relative to this URL.

· One min read

Swagger makes use of a property discriminator to support polymorphism in custom types. We have now added support for this property in our system. We also offer an extension that will allow you to specify a custom value for the discriminator to override its default value.