java-tutorials/spring-swagger-codegen/spring-swagger-codegen-api-...
catalin-burcea 153a3923f0 [BAEL-18783] - Fix formatting of POMs 2019-12-06 11:40:56 +02:00
..
.swagger-codegen Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
docs Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
gradle/wrapper Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
src Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
.gitignore Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
.swagger-codegen-ignore Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
.travis.yml Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
README.md Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
build.gradle Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
build.sbt Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
git_push.sh Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
gradle.properties Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
gradlew Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
gradlew.bat Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00
pom.xml [BAEL-18783] - Fix formatting of POMs 2019-12-06 11:40:56 +02:00
settings.gradle Merge pull request from eugenp/revert-8119-BAEL-3275-2 2019-10-31 20:43:47 -05:00

README.md

Spring Swagger Codegen API Client

This module contains the code for Generate Spring Boot REST Client with Swagger.

Requirements

Building the API client library requires Maven to be installed.

Installation

To install the API client library to your local Maven repository, simply execute:

mvn install

To deploy it to a remote Maven repository instead, configure the settings of the repository and execute:

mvn deploy

Refer to the official documentation for more information.

Maven users

Add this dependency to your project's POM:

<dependency>
    <groupId>com.baeldung</groupId>
    <artifactId>spring-swagger-codegen-api-client</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <scope>compile</scope>
</dependency>

Gradle users

Add this dependency to your project's build file:

compile "com.baeldung:spring-swagger-codegen-api-client:0.0.1-SNAPSHOT"

Others

At first generate the JAR by executing:

mvn package

Then manually install the following JARs:

  • target/spring-swagger-codegen-api-client-0.0.1-SNAPSHOT.jar
  • target/lib/*.jar

Getting Started

Please follow the installation instruction and execute the following Java code:


import com.baeldung.petstore.client.invoker.*;
import com.baeldung.petstore.client.invoker.auth.*;
import com.baeldung.petstore.client.model.*;
import com.baeldung.petstore.client.api.PetApi;

import java.io.File;
import java.util.*;

public class PetApiExample {

    public static void main(String[] args) {
        ApiClient defaultClient = Configuration.getDefaultApiClient();
        
        // Configure OAuth2 access token for authorization: petstore_auth
        OAuth petstore_auth = (OAuth) defaultClient.getAuthentication("petstore_auth");
        petstore_auth.setAccessToken("YOUR ACCESS TOKEN");

        PetApi apiInstance = new PetApi();
        Pet body = new Pet(); // Pet | Pet object that needs to be added to the store
        try {
            apiInstance.addPet(body);
        } catch (ApiException e) {
            System.err.println("Exception when calling PetApi#addPet");
            e.printStackTrace();
        }
    }
}

Documentation for API Endpoints

All URIs are relative to http://petstore.swagger.io/v2

Class Method HTTP request Description
PetApi addPet POST /pet Add a new pet to the store
PetApi deletePet DELETE /pet/{petId} Deletes a pet
PetApi findPetsByStatus GET /pet/findByStatus Finds Pets by status
PetApi findPetsByTags GET /pet/findByTags Finds Pets by tags
PetApi getPetById GET /pet/{petId} Find pet by ID
PetApi updatePet PUT /pet Update an existing pet
PetApi updatePetWithForm POST /pet/{petId} Updates a pet in the store with form data
PetApi uploadFile POST /pet/{petId}/uploadImage uploads an image
StoreApi deleteOrder DELETE /store/order/{orderId} Delete purchase order by ID
StoreApi getInventory GET /store/inventory Returns pet inventories by status
StoreApi getOrderById GET /store/order/{orderId} Find purchase order by ID
StoreApi placeOrder POST /store/order Place an order for a pet
UserApi createUser POST /user Create user
UserApi createUsersWithArrayInput POST /user/createWithArray Creates list of users with given input array
UserApi createUsersWithListInput POST /user/createWithList Creates list of users with given input array
UserApi deleteUser DELETE /user/{username} Delete user
UserApi getUserByName GET /user/{username} Get user by user name
UserApi loginUser GET /user/login Logs user into the system
UserApi logoutUser GET /user/logout Logs out current logged in user session
UserApi updateUser PUT /user/{username} Updated user

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

api_key

  • Type: API key
  • API key parameter name: api_key
  • Location: HTTP header

petstore_auth

Recommendation

It's recommended to create an instance of ApiClient per thread in a multithreaded environment to avoid any potential issues.

Author

apiteam@swagger.io