Class Info


public class Info extends OpenApiElement
Provides metadata about the API.

The Info Object contains required and optional metadata about the API, including the title, version, description, terms of service, contact information, and license. This metadata can be used by client tooling and is typically displayed in API documentation interfaces.

OpenAPI Specification:

The Info Object is composed of the following fields:

  • title (string, REQUIRED) - The title of the API
  • version (string, REQUIRED) - The version of the OpenAPI document (not the API itself)
  • description (string) - A short description of the API (CommonMark syntax may be used)
  • termsOfService (string) - A URL to the Terms of Service for the API
  • contact (Contact) - Contact information for the exposed API
  • license (License) - License information for the exposed API
Example:

// Create an Info object Info info = new Info() .setTitle("Pet Store API") .setVersion("1.0.0") .setDescription("This is a sample Pet Store Server based on the OpenAPI 3.0 specification.") .setTermsOfService("http://example.com/terms/") .setContact( new Contact() .setName("API Support") .setUrl(URI.create("http://www.example.com/support")) .setEmail("support@example.com") ) .setLicense( new License() .setName("Apache 2.0") .setUrl(URI.create("http://www.apache.org/licenses/LICENSE-2.0.html")) );

// Serialize to JSON String json = Json.from(info); // Or just use toString() which does the same as above. json = info.toString();

// Output { "title": "Pet Store API", "version": "1.0.0", "description": "This is a sample Pet Store Server based on the OpenAPI 3.0 specification.", "termsOfService": "http://example.com/terms/", "contact": { "name": "API Support", "url": "http://www.example.com/support", "email": "support@example.com" }, "license": { "name": "Apache 2.0", "url": "http://www.apache.org/licenses/LICENSE-2.0.html" }, "version": "1.0.1" }

See Also:
  • Constructor Details

    • Info

      public Info()
      Default constructor.
    • Info

      public Info(Info copyFrom)
      Copy constructor.
      Parameters:
      copyFrom - The object to copy.
  • Method Details

    • copy

      public Info copy()
      Make a deep copy of this object.
      Returns:
      A deep copy of this object.
    • getTitle

      public String getTitle()
      Bean property getter: title.

      The title of the application.

      Returns:
      The property value, or null if it is not set.
    • setTitle

      public Info setTitle(String value)
      Bean property setter: title.

      The title of the application.

      Parameters:
      value - The new value for this property.
      Property value is required.
      Can be null to unset the property.
      Returns:
      This object
    • getDescription

      Bean property getter: description.

      A short description of the application.

      Returns:
      The property value, or null if it is not set.
    • setDescription

      public Info setDescription(String value)
      Bean property setter: description.

      A short description of the application.

      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getTermsOfService

      Bean property getter: termsOfService.

      The Terms of Service for the API.

      Returns:
      The property value, or null if it is not set.
    • setTermsOfService

      public Info setTermsOfService(String value)
      Bean property setter: termsOfService.

      The Terms of Service for the API.

      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getContact

      public Contact getContact()
      Bean property getter: contact.

      The contact information for the exposed API.

      Returns:
      The property value, or null if it is not set.
    • setContact

      public Info setContact(Contact value)
      Bean property setter: contact.

      The contact information for the exposed API.

      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getLicense

      public License getLicense()
      Bean property getter: license.

      The license information for the exposed API.

      Returns:
      The property value, or null if it is not set.
    • setLicense

      public Info setLicense(License value)
      Bean property setter: license.

      The license information for the exposed API.

      Parameters:
      value - The new value for this property.
      Can be null to unset the property.
      Returns:
      This object
    • getVersion

      public String getVersion()
      Bean property getter: version.

      Provides the version of the application API (not to be confused with the specification version).

      Returns:
      The property value, or null if it is not set.
    • setVersion

      public Info setVersion(String value)
      Bean property setter: version.

      Provides the version of the application API (not to be confused with the specification version).

      Parameters:
      value - The new value for this property.
      Property value is required.
      Can be null to unset the property.
      Returns:
      This object
    • get

      public <T> T get(String property, Class<T> type)
      Description copied from class: OpenApiElement
      Generic property getter.

      Can be used to retrieve non-standard Swagger fields such as "$ref".

      Overrides:
      get in class OpenApiElement
      Type Parameters:
      T - The datatype to cast the value to.
      Parameters:
      property - The property name to retrieve.
      type - The datatype to cast the value to.
      Returns:
      The property value, or null if the property does not exist or is not set.
    • set

      public Info set(String property, Object value)
      Description copied from class: OpenApiElement
      Generic property setter.

      Can be used to set non-standard Swagger fields such as "$ref".

      Overrides:
      set in class OpenApiElement
      Parameters:
      property - The property name to set. Must not be null.
      value - The new value for the property.
      Returns:
      This object
    • keySet

      public Set<String> keySet()
      Description copied from class: OpenApiElement
      Returns all the keys on this element.
      Overrides:
      keySet in class OpenApiElement
      Returns:
      All the keys on this element.
      Never null.
    • strict

      public Info strict()
      Description copied from class: OpenApiElement
      Sets strict mode on this bean.
      Overrides:
      strict in class OpenApiElement
      Returns:
      This object
    • strict

      public Info strict(Object value)
      Description copied from class: OpenApiElement
      Sets strict mode on this bean.
      Overrides:
      strict in class OpenApiElement
      Parameters:
      value - The new value for this property.
      Non-boolean values will be converted to boolean using Boolean.valueOf(value.toString()).
      Can be null (interpreted as false).
      Returns:
      This object