Skip to main content
This guide walks you through placing an order on CoW Protocol using nothing but cURL and the REST API. No SDK, no framework — just raw HTTP requests against the Sepolia testnet. By the end you will have:
  1. Fetched a quote
  2. Signed an order
  3. Submitted it to the order book
  4. Monitored it until settlement

Prerequisites

Before you start, make sure you have:
  • cURL installed (ships with macOS and most Linux distributions)
  • An Ethereum wallet with some WETH on the Sepolia testnet
    • Sepolia WETH:
    • Sepolia COW (buy token in this guide):
  • Token approval for the GPv2VaultRelayer contract so it can spend your sell token
You must approve the GPv2VaultRelayer () to spend your sell token before submitting an order. Without this approval the order will revert on settlement.You can do this via Etherscan’s “Write Contract” tab, or with Foundry:
All examples in this guide target the Sepolia testnet (). Replace sepolia with mainnet, xdai, arbitrum_one, or base for other networks.

Walkthrough

Before placing orders in production, review the Pre-Flight Checklist to avoid the most common integration mistakes.

Troubleshooting

Common errors you may encounter: For the full list of API error codes, see the Order Book API Reference.

Next Steps

Now that you know how the raw API works, explore these resources:
Last modified on March 17, 2026