---
title: "Register"
method: POST
path: "/v1/competitions/{slug}/register"
tags: ["Competition"]
---

# Register

`POST /v1/competitions/{slug}/register`

## Request

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

Register a wallet for a competition, optionally claiming a username. Competitions configured with an entry code require a matching `code` and reject others with PERMISSION_DENIED. Registering for a cohort competition also adds the wallet to the cohort, which is what puts it on the leaderboard.

## Path parameters

- `slug` string, required

## Request body

- CompetitionServiceRegisterBody
  - `wallet` string
  - `username` string: Optional. Claimed on the wallet's first registration only, and ignored when the wallet already has a profile. Leaving it empty registers the wallet with no username: the leaderboard shows its address, and it can claim a name later by registering again with this field set.
  - `code` string: Entry code, required when the competition's scoring_config sets registration_code (see GetRegistrationStatusResponse.requires_code). Compared case-insensitively after trimming surrounding whitespace, since it is shared with a community and retyped by hand. Ignored by competitions with no code.

## Response `200`

A successful response.

- ApiRegisterResponse
  - `registered` boolean
  - `username` string

## 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/competitions/:slug/register/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)
