Skip to main content

Welcome to Currency Exchange API

A production-ready REST API service built with .NET 8 that provides comprehensive currency management and conversion capabilities. The API features automatic exchange rate updates from the Central Bank of Russia and supports sophisticated conversion algorithms including direct, reverse, and cross-rate calculations.

Quickstart

Get started with the Currency Exchange API in minutes

Architecture

Understand the clean architecture and design patterns

API Reference

Explore all available endpoints and data models

Deployment

Deploy with Docker and configure for production

Key Features

Currency Management

Create, retrieve, and search currencies with validation

Exchange Rates

Manage exchange rates with automatic updates from CBR

Smart Conversions

Convert currencies using direct, reverse, or cross-rate algorithms

Clean Architecture

Built with separation of concerns and SOLID principles

Quick Example

Convert 100 USD to EUR using the API:
curl "http://localhost:8080/api/Exchange/from=USD&to=EUR&amount=100"
Response
{
  "baseCurrency": {
    "id": 1,
    "code": "USD",
    "fullName": "United States Dollar",
    "sign": "$"
  },
  "targetCurrency": {
    "id": 2,
    "code": "EUR",
    "fullName": "Euro",
    "sign": "€"
  },
  "rate": 0.92,
  "amount": 100,
  "convertedAmount": 92.00
}

Technology Stack

  • .NET 8 - Modern, high-performance framework
  • PostgreSQL - Reliable relational database
  • Entity Framework Core - Powerful ORM with migrations
  • Swagger/OpenAPI - Interactive API documentation
  • Docker - Container-based deployment

Build docs developers (and LLMs) love