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.
    • 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.
    • 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.
    • getDescription

      Bean property getter: description.

      A short description of the application.

      Returns:
      The property value, or null if it is not set.
    • 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.
    • getTermsOfService

      Bean property getter: termsOfService.

      The Terms of Service for the API.

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

      public String getTitle()
      Bean property getter: title.

      The title of the application.

      Returns:
      The property value, or null if it is not set.
    • 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.
    • 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.
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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
    • 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