TL;DR โ Switch in Under 5 Minutes
- Both APIs are OpenAI-compatible โ change base URL and key only
- All Mistral models supported: Large 2, Small, Codestral, Pixtral 12B, Ministral 8B
- Both Mistral La Plateforme and Railwail host in the EU โ full EU residency preserved
- Plus access to Claude, GPT-4o, Gemini, Llama through the same key
- EUR billing on both, but unified VAT invoice on Railwail
Why Move Off Mistral La Plateforme?
Mistral is excellent for EU-resident inference and competitive open-weight models. The trade-off is catalog scope โ La Plateforme only hosts Mistral's own models. If you want to A/B against Claude or GPT-4o, you need a second account, second SDK, and second billing relationship. Railwail keeps the EU residency and adds the rest of the market.
Step 1 โ Get a Railwail API Key
Sign up at railwail.com and generate a key.
Sponsored
Access 100+ AI Models with One API Key
GPT-4o, Claude, Gemini, Llama, Flux, DALL-E and more โ all through a single, OpenAI-compatible endpoint. No more juggling multiple providers.
Step 2 โ Change Base URL
TypeScript / JavaScript
Before (Mistral SDK):
import { Mistral } from "@mistralai/mistralai";
const mistral = new Mistral({ apiKey: process.env.MISTRAL_API_KEY });
const res = await mistral.chat.complete({
model: "mistral-large-2411",
messages: [{ role: "user", content: "Hello" }],
});After (Railwail via OpenAI SDK):import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.RAILWAIL_API_KEY,
baseURL: "https://api.railwail.com/v1",
});
const res = await client.chat.completions.create({
model: "mistral-large-2411",
messages: [{ role: "user", content: "Hello" }],
});Python
from openai import OpenAI
client = OpenAI(
api_key=os.environ["RAILWAIL_API_KEY"],
base_url="https://api.railwail.com/v1",
)
resp = client.chat.completions.create(
model="mistral-large-2411",
messages=[{"role": "user", "content": "Hello"}],
)
print(resp.choices[0].message.content)cURL
curl https://api.railwail.com/v1/chat/completions \
-H "Authorization: Bearer $RAILWAIL_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "mistral-large-2411",
"messages": [{"role": "user", "content": "Hello"}]
}'API Endpoint Mapping
Mistral endpoint โ Railwail equivalent
| Mistral La Plateforme | Railwail | Notes |
|---|---|---|
| POST /v1/chat/completions | POST /v1/chat/completions | Identical |
| POST /v1/fim/completions | POST /v1/completions (Codestral) | Fill-in-the-middle code |
| POST /v1/embeddings | POST /v1/embeddings | mistral-embed |
| POST /v1/moderations | POST /v1/moderations | mistral-moderation |
| POST /v1/agents/completions | POST /v1/chat/completions | Use system prompt with tools |
| GET /v1/models | GET /v1/models | 275+ models |
Model Mapping
Mistral model โ Railwail
| Mistral La Plateforme | Railwail | Notes |
|---|---|---|
| mistral-large-2411 | mistral-large-2411 | Flagship |
| mistral-large-latest | mistral-large | Always points to latest |
| mistral-small-latest | mistral-small | Cost-efficient |
| mistral-medium-3 | mistral-medium-3 | Mid-tier |
| pixtral-large-latest | pixtral-large | Vision flagship |
| pixtral-12b-2409 | pixtral-12b | Smaller vision |
| codestral-2501 | codestral-2501 | Code generation |
| ministral-8b-2410 | ministral-8b | Edge / on-device size |
| mistral-embed | mistral-embed | Embeddings |
| mistral-moderation-latest | mistral-moderation | Content moderation |
Sponsored
Test Any AI Model Instantly
Our built-in playground lets you compare models side by side. Find the perfect model for your use case in minutes, not days.
Pricing Comparison (per 1M tokens, May 2026)
Same Mistral model, Railwail in EUR
| Model | Mistral direct (EUR) | Railwail (EUR) | Notes |
|---|---|---|---|
| mistral-large-2411 input | EUR 2.00 | EUR 2.00 | Same |
| mistral-large-2411 output | EUR 6.00 | EUR 6.00 | Same |
| mistral-small input | EUR 0.20 | EUR 0.20 | Same |
| mistral-small output | EUR 0.60 | EUR 0.60 | Same |
| pixtral-large input | EUR 2.00 | EUR 2.00 | Same |
| codestral-2501 input | EUR 0.30 | EUR 0.30 | Same |
| codestral-2501 output | EUR 0.90 | EUR 0.90 | Same |
| mistral-embed | EUR 0.10 | EUR 0.10 | Same |
Why Railwail Over Mistral La Plateforme
- Unified VAT invoice covering Mistral + all other model providers
- Single API key โ one fewer credential to rotate
- OpenAI-compatible API โ drop the @mistralai/mistralai SDK
- Access to closed-source frontier models (Claude, GPT-4o, Gemini) for A/B
- Built-in playground for cross-model comparison
- Same EU residency Mistral La Plateforme provides
FAQ
Is data residency preserved?
Yes. Calls to Mistral models route to Mistral's EU infrastructure via Railwail's EU gateway. End-to-end EU residency is maintained.
Is fill-in-the-middle for Codestral supported?
Yes. POST /v1/completions with the codestral-2501 model and the prefix/suffix params triggers FIM mode.
Does the Pixtral vision API work?
Yes. Pass content as an array with text and image_url blocks (OpenAI vision schema). Railwail converts internally.
What about the Mistral Agents API?
Stateful agents (with built-in retrieval) are Mistral-proprietary. For equivalent behaviour on Railwail, use chat.completions with your own retrieval step and the tools array.
Are batch endpoints available?
Yes. POST /v1/batches accepts the OpenAI batch format for any Mistral model, 50% discount on async.
Sponsored
Pay Only for What You Use
Transparent per-token pricing with no monthly minimums. Start with free credits and scale as you grow.
Next Steps
- Sign up at railwail.com
- Generate an API key
- Drop @mistralai/mistralai and use the OpenAI SDK
- Update baseURL and apiKey
- Read the reference at railwail.com/docs
- Browse Mistral models at railwail.com/models?provider=mistral
- Compare pricing at railwail.com/pricing