currencyexchange

Currency Exchange API for Spring Boot

Stars
10
Committers
1

Spring Boot Currency Change API Example

📖 Information

Explore Rest APIs

Valid Request Params

Get Rates
    http://localhost:8080/v1/rate?base=USD&target=EUR,TRY&date=2023-05-21
    
    base: USD
    target: EUR,TRY
    date: 2023-05-21
Get Exchange Rates By Exchange Request Info
    http://localhost:8080/v1/exchange?base=USD&target=EUR,TRY&amount=100
    
    base: USD
    target: EUR
    amount: 100
Get Exchange Rates By Exchange Request Info
    http://localhost:8080/v1/exchange?base=USD&target=EUR,TRY&amount=100
    
    base: USD
    target: EUR
    amount: 100
Get Conversion List
    http://localhost:8080/v1/conversion?startDate=2023-05-20&endDate=2023-05-22
    
    startDate: 2023-05-20
    endDate: 2023-05-22

Valid Path Variable

Get Conversion
    http://localhost:8080/v1/conversion/17d98364-e435-40d7-a941-af535fc95065

Technologies


  • Java 17
  • Spring Boot 3.0
  • Open API Documentation
  • Restful API
  • Spring Cache
  • Actuator
  • Resilience4j
  • Lombok
  • Maven
  • Junit5
  • Mockito
  • Integration Tests
  • Docker
  • Docker Compose

Prerequisites


  • Get API KEY from apilayer.com
  • Maven or Docker

Get API KEY from apilayer.com

1 ) Open and register apilayer.com

2 ) Register Exchange Rates Data API and Get API key

Create .env and Define API key


EXCHANGE_API_API_KEY={YOUR_API_KEY}

Docker Run

The application can be built and run by the Docker engine. The Dockerfile has multistage build, so you do not need to build and run separately.

Please follow directions shown below in order to build and run the application with Docker Compose file;

$ cd currencyexchange
$ docker-compose up -d

Maven Run

To build and run the application with Maven, please follow the directions shown below;

$ cd currencyexchange
$ mvn clean install
$ mvn spring-boot:run

Swagger

You can reach the swagger-ui through the link shown below

    http://localhost:8080/swagger-ui/index.html

Actuator

You can reach the actuator through the link shown below

    http://localhost:8080/actuator

Screenshots

Related Projects