---
title: "Ingest points"
method: PUT
path: "/admin/points"
tags: ["Admin"]
---

# Ingest points

`PUT /admin/points`

## Request

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

Ingest/upsert all 7 point categories for a wallet+epoch (internal). Fails with INVALID_ARGUMENT if points_epoch does not exist yet.

## Request body

- ApiIngestPointsRequest
  - `wallet_address` string
  - `points_epoch` string
  - `trading_points` string
  - `referral_points` string
  - `trading_boosted_points` string
  - `referral_boosted_points` string
  - `pair_boosted_points` string
  - `streaks_boosted_points` string
  - `liquidity_provider_points` string

## Response `200`

A successful response.

- ApiIngestPointsResponse
  - `entry` ApiPointsLedgerEntry: PointsLedgerEntry is a wallet+epoch row. Point values are decimal-as-string (columns are NUMERIC, not integer — boost multipliers may be fractional).
    - `wallet_address` string
    - `points_epoch` string
    - `trading_points` string
    - `referral_points` string
    - `trading_boosted_points` string
    - `referral_boosted_points` string
    - `pair_boosted_points` string
    - `streaks_boosted_points` string
    - `liquidity_provider_points` string
    - `total_points` 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/admin/points/put.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)
