---
title: cURL examples
description: Send Cuitty events from any shell with a single curl invocation.
section: SDK
order: 6
updatedAt: 2026-04-27
slug: sdk/curl
---
# cURL examples

For one-off scripts, CI hooks, and shell-only environments, the wire protocol is reachable from a plain `curl`.

## Send an audit event

```bash
BODY='{
  "events": [{
    "type": "audit",
    "ts": "2026-04-27T12:34:56Z",
    "data": {
      "actor": "alice@example.com",
      "action": "secret.rotate",
      "resource": "stripe.live_key"
    }
  }]
}'

SIG=$(printf '%s' "$BODY" \
  | openssl dgst -sha256 -hmac "$CUITTY_WEBHOOK_SECRET" -hex \
  | awk '{print $2}')

curl -X POST https://app.cuitty.com/api/ingest \
  -H "Authorization: Bearer $CUITTY_API_KEY" \
  -H "X-Cuitty-Signature: $SIG" \
  -H "Content-Type: application/json" \
  -d "$BODY"
```

## Health check

```bash
curl https://app.cuitty.com/api/health
```

## Idempotent retries

Add an `X-Cuitty-Idempotency-Key` header (any UUID). The portal deduplicates retries with the same key for 24 hours.

```bash
curl -X POST https://app.cuitty.com/api/ingest \
  -H "X-Cuitty-Idempotency-Key: $(uuidgen)" \
  ...
```