> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nuvera.global/llms.txt
> Use this file to discover all available pages before exploring further.

# Make Your First Request

> Verify connectivity and send your first signed Partner API request

Use this guide after creating an API application, storing the one-time API key, and preparing a request-signing helper from [Request Signing](/get-started/partner-api/request-signing).

You need the `CRYPTO_READ` permission for the signed REST request below.

<Steps>
  <Step title="Check the public health endpoint">
    The health endpoint is not part of the signed Partner REST surface. Use it only as a connectivity check.

    ```bash theme={null}
    curl https://rest-api.nuvera.global/health
    ```

    A healthy API returns a small JSON response with `status` set to `ok`.
  </Step>

  <Step title="Generate a signed request JWT">
    For `GET /api/v1/crypto/networks`, generate a JWT immediately before the request with:

    | JWT input  | Value                     |
    | ---------- | ------------------------- |
    | `method`   | `GET`                     |
    | `uri`      | `/api/v1/crypto/networks` |
    | `bodyHash` | SHA-256 of an empty body  |

    Nuvera does not ship a CLI. Use your own helper built from [Request Signing](/get-started/partner-api/request-signing).
  </Step>

  <Step title="Call a low-risk signed endpoint">
    ```bash theme={null}
    TOKEN="<signed-request-jwt>"

    curl https://rest-api.nuvera.global/api/v1/crypto/networks \
      -H "x-api-key: $NUVERA_API_KEY" \
      -H "Authorization: Bearer $TOKEN"
    ```

    This confirms that the API key, permission, public key, private key, JWT claims, and request URI all line up.
  </Step>
</Steps>

## Common first-request failures

| Symptom            | Check                                                                                      |
| ------------------ | ------------------------------------------------------------------------------------------ |
| `401 Unauthorized` | Confirm `x-api-key` is present and is the raw one-time key value.                          |
| `401 Unauthorized` | Confirm the JWT `sub` matches the exact API key sent in `x-api-key`.                       |
| `401 Unauthorized` | Confirm `exp` is no more than 60 seconds after `iat` and has not expired.                  |
| `401 Unauthorized` | Confirm `uri` is exactly `/api/v1/crypto/networks`, including any query string if present. |
| `403 Forbidden`    | Confirm the API application has `CRYPTO_READ`.                                             |

For full endpoint schemas, open the [API Reference](/api-reference/introduction). For deeper auth troubleshooting, see [Troubleshooting](/get-started/partner-api/troubleshooting).
