Skip to main content
All requests require an API key via the X-API-Key header. See Authentication for details.

Overview

POST /v2/streams/points creates a point asset for the organization associated with the API key. Points are used as reward assets for point-based streams. Creating a point lets your organization define a symbol, display name, precision, and optional logo for those rewards. You only need this endpoint if you plan to create point-based streams. It is not required for streams that use rewardToken.
The API key must belong to an organization and that organization must have the organization:incentivize:streams:create permission.

Endpoint

Request Body

string
required
Point symbol.
string
required
Point name.
integer
default:18
Decimal precision for the point asset. If omitted, it uses the default configured precision of 18.
string
Optional logo URL for the point asset.

Response Example

Response Fields

Point
The newly created point asset.

Point

uuid
Unique point identifier.
uuid
Organization that owns the point.
string
Normalized uppercase point symbol.
string
Point name.
integer
Decimal precision assigned to the point asset.
string | null
Optional logo URL associated with the point asset.
datetime
Creation timestamp of the point.
datetime
Last update timestamp of the point.

Important Notes

The backend trims whitespace and uppercases symbol before persisting the point.
If decimals is omitted, Turtle uses the configured default point precision, currently 18.
Organizations using ERC-20 rewards through rewardToken do not need to create points. Points are only used with pointId in point-based stream creation.

Error Handling

Status Code: 401 Unauthorized
Solution: Pass a valid X-API-Key header belonging to an organization-scoped API key.
Status Code: 400 Bad Request
Common causes:
  • symbol is missing or blank
  • name is missing or blank
Status Code: 403 Forbidden
Solution: Use an API key associated with an organization that has the organization:incentivize:streams:create permission.
Status Code: 500 Internal Server ErrorSolution: Retry the request and contact Turtle if the issue persists.