---
title: "Create referral link"
method: POST
path: "/v1/invite/referral-link/create"
tags: ["Invite"]
---

# Create referral link

`POST /v1/invite/referral-link/create`

## Request

- Base URL: `https://api.testnet.rise.trade`
- URL: `https://api.testnet.rise.trade/v1/invite/referral-link/create`
- Auth: none required
- TypeScript: <https://skmtc.dev/rise/apis/risex-rest-api/docs/v1/invite/referral-link/create/post.ts> (a function with typed inputs; its response is checked against the schema)

Create the caller's referral link, or return the existing one if already created. Idempotent. The `signature` field must be an EIP-191 personal_sign over the message: "This signature verifies that I own the associated account and intend on creating a referral link on RISEx for {address}" where {address} is the caller's checksummed hex address.

## Request body

- ApiCreateReferralLinkRequest
  - `address` string: Owner wallet address (hex, with or without 0x).
  - `signature` string: EIP-191 personal_sign signature over the create-intent message (see the RPC's description for the exact message format).

## Response `200`

A successful response.

- ApiCreateReferralLinkResponse
  - `slug` string: The link's URL slug — auto-generated, 8 chars [a-z0-9] in this phase. The full URL is risex.com/r/{slug}. Idempotent: existing slug returned when the wallet already has a link.

## Other responses

- `default`: An unexpected error response.

## Changes

- **2026-11-03** `98eabcd6a6ad`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rise/apis/risex-rest-api/changes/v1/invite/referral-link/create/post.md)

---

[API](https://skmtc.dev/rise/apis/risex-rest-api.md) - [All operations](https://skmtc.dev/rise/apis/risex-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rise/apis/risex-rest-api/revisions/98eabcd6a6ad?raw)
