code3.dev — currency service

c3 Exchange
API

Real-time currency conversion for all world currencies. No auth required. No rate limits. Just call and convert.

GET https://ex.code3.dev/?from=EUR&to=USD&amount=100

01 Endpoint

Single GET endpoint — pass your currencies and amount, get back a conversion.

GET https://ex.code3.dev/?from=EUR&to=USD&amount=100
curl --request GET \
  'https://ex.code3.dev/?from=EUR&to=USD&amount=100'
const res = await fetch(
  'https://ex.code3.dev/?from=EUR&to=USD&amount=100'
);
const data = await res.json();
console.log(data.converted); // 106.49
import http.client

conn = http.client.HTTPSConnection("ex.code3.dev")
conn.request("GET", "/?from=EUR&to=USD&amount=100")
res  = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
$curl = curl_init();
curl_setopt_array($curl, [
  CURLOPT_URL            => 'https://ex.code3.dev/?from=EUR&to=USD&amount=100',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_FOLLOWLOCATION => true,
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;
200 OK — application/json
{
  "from":      "EUR",
  "to":        "USD",
  "amount":    "100",
  "converted": 106.49048880199265
}
GUI Mode

Append &gui=1 to receive a human-readable HTML page instead of JSON — useful for embedding in iframes or display boards.

02 Parameters

All three query parameters are required for every request.

Field Type Required Description
from String required ISO 4217 currency code for the source currency (e.g. EUR)
to String required ISO 4217 currency code for the target currency (e.g. USD)
amount Float required Amount to convert. Accepts decimals (e.g. 23.14)
gui Boolean optional Set to 1 to return an HTML response instead of JSON

03 Errors

The API uses standard HTTP status codes to signal success or failure.

Code Meaning
200 Conversion successful. Response body contains the JSON result.
400 Missing parameter. All three of from, to, and amount are required.
400 Error Response
{ "status": 400, "description": "Parameter is missing" }