Search results

Step 3: The servers object (OpenAPI tutorial)

In the servers object, you specify the basepath used in your API requests. The basepath is the part of the URL that appears before the endpoint.

Sample servers object

The following is a sample servers object:

servers:
- url: http://api.openweathermap.org/data/2.5/

Each of your endpoints (called “paths” in the spec) will be appended to the server URL when users make “Try it out” requests. For example, if one of the paths is /weather, when Swagger UI submits the request, it will submit it to {server URL}{path} or http://api.openweathermap.org/data/2.5/weather.

Options with the server URL

You have some flexibility and configuration options for your server URL. You can specify multiple server URLs that might relate to different environments (test, beta, production). If you have multiple server URLs, users can select the environment from a servers drop-down box. For example, you can specify multiple server URLs like this:

servers:
  - url: http://api.openweathermap.org/data/2.5/
    description: Production server
  - url: http://beta.api.openweathermap.org/data/2.5/
    description: Beta server
  - url: http://some-other.api.openweathermap.org/data/2.5/
    description: Some other server

In Swagger UI, here’s how the servers appear to users with multiple server URLs:

If you have just one URL, you still see a drop-down box but with just one option.

You can also incorporate variables into the server URL that can be populated at runtime by your server. Additionally, if different paths (endpoints) require different server URLs, you can add the servers object as a property in the path object’s operation object. The locally declared servers URL will override the global servers URL.

See “Overriding Servers” in the “API Server and Base URL” page for more details.

68% Complete

68/101 pages complete. Only 33 more pages to go...

Donate?

Would you like to help encourage more content development and updates? If so, click the Donate button below to donate $10 through Paypal.

Get new posts delivered straight to your inbox.

Subscriber count: 4,285