---
title: "Check if there is a pending offramp that needs USDC sent to Coinbase"
method: GET
path: "/v1/offramp/pending-send"
tags: ["offramp"]
---

# Check if there is a pending offramp that needs USDC sent to Coinbase

`GET /v1/offramp/pending-send`

Check if the authenticated user has a pending offramp withdrawal where Coinbase
has provided a deposit address (`to_address`). If so, the frontend should send
USDC from the user's Smart Account earnings wallet to that address.

**Polling pattern:** Frontend polls this every ~5 seconds after the user returns
from the Coinbase offramp UI.

If a pending event exists but Coinbase hasn't provided a deposit address yet,
this endpoint triggers a background Coinbase scan and returns `pending=True`
with `to_address=null`. The next poll will pick up the address after the scan.

## Headers

- `authorization` string, nullable — Bearer JWT issued by Grove.

## Response `200`

Successful Response

- OfframpPendingSendResponse — Response model for GET /v1/offramp/pending-send. Tells the frontend whether there's a pending offramp that needs USDC sent to Coinbase's deposit address.
  - `pending` boolean, required — Whether there is a pending offramp send
  - `event_id` string, nullable — Withdrawal event ID
  - `to_address` string, nullable — Coinbase deposit address to send USDC to
  - `amount` string, nullable — Amount to send (token units)
  - `network` string, nullable — Network for the send (e.g., base, base-sepolia)
  - `created_at` string, nullable — When the event was created (ISO 8601)

## Other responses

- `401` — Missing or invalid JWT
- `422` — Validation Error

---

[API](https://skmtc.net/grove/apis/grove-api.md) · [All operations](https://skmtc.net/grove/apis/grove-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/grove/grove-api/revisions/f286b48a8105/schema)
