# cURL with zurelay > Plain HTTP, for any language or a quick test. Made by curl. Source: https://zurelay.com/docs/integrations/curl The examples use `claude-opus-5-5`. Any model ID from [the models page](https://zurelay.com/docs/models) works. ## Set it up 1. Send your key as a Bearer token in the `Authorization` header. 2. Use Chat Completions for any model, or the Messages API for Claude models. 3. Image models take the same key at `/v1/images/generations`. ## Configuration **Chat Completions** (`terminal`): ```bash curl https://api.zurelay.com/v1/chat/completions \ -H "Authorization: Bearer $ZURELAY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "claude-opus-5-5", "messages": [{ "role": "user", "content": "Hello" }] }' ``` **Messages** (`terminal`): ```bash curl https://api.zurelay.com/v1/messages \ -H "Authorization: Bearer $ZURELAY_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "Content-Type: application/json" \ -d '{ "model": "claude-opus-5-5", "max_tokens": 1024, "messages": [{ "role": "user", "content": "Hello" }] }' ``` **Images** (`terminal`): ```bash curl https://api.zurelay.com/v1/images/generations \ -H "Authorization: Bearer $ZURELAY_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "nano-banana-pro", "prompt": "A glass prism splitting white light into a rainbow", "n": 1 }' ``` [cURL’s own docs](https://curl.se/docs/manpage.html)