Vonage API Standards

This is a living document containing Vonage's API standards. We'll be discussing new standards in #api-standards on Slack, so please join us if you're interested in contributing. The standards themselves are still a work in progress, and can be viewed online.

Open API Spec

We document APIs using Open API 3.0 (formerly known as Swagger). These documents live in the repo that powers this website.

General API Guidelines

These are general API guidelines:

  • Updating resources will fail if required parameters are not set.
  • Unsent optional parameters will not be overwritten with default values.
  • Response for a POST or GET will be the same resource.
  • All APIs that allow updating a resource will also allow fetching a resource.
  • In each context properties that are always unknown may be omitted. For example: a request to sending an SMS never contains DLR data.
  • Properties that are potentially unknown should be included, but without a value. For example, if the Cloud Communications Platform cannot call the phone number defined in a request from Call API, the return properties will not have a valid call_start and call_end.

Contributing to These Standards

If you notice an inaccuracy or a typo on this site, please get in touch.

Unfortunately we do not accept external contributions for new standards to this repository as our standards are defined internally by the product and engineering teams. Internal users (from all departments) are very welcome to propose a Pull Request and/or discuss their suggestions on slack in #api-standards.