Benefits
Retrieve a paginated list of limited-time benefits. Supports filtering by status and sorting.
expirationDatePossible values: ascPossible values: 500Successful response
Invalid input data
Not found
Internal server error
GET /api/v2/benefits/limited-time HTTP/1.1
Host: api.ethos.network
Accept: */*
{
"values": [
{
"id": 1,
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "text",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "ACTIVE",
"createdAt": "text",
"updatedAt": "text",
"type": "LIMITED_TIME_PERK",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"startDate": "text",
"expirationDate": "text"
}
],
"total": 1,
"limit": 1,
"offset": 1
}Retrieve a paginated list of score-based benefits. By default, returns all benefits. Optionally filter by status, multiple category IDs, and user score.
⚠️ IMPORTANT: Due to OpenAPI UI limitations, the categoryIds parameter requires at least 2 items to work correctly. Single category selection will result in a validation error.
500Successful response
Invalid input data
Not found
Internal server error
GET /api/v2/benefits/score-based HTTP/1.1
Host: api.ethos.network
Accept: */*
{
"values": [
{
"id": 1,
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "text",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "ACTIVE",
"createdAt": "text",
"updatedAt": "text",
"type": "SCORE_BASED",
"qualifications": [
{
"scoreThreshold": 1,
"label": "text"
}
],
"categoryId": 1,
"category": {
"id": 1,
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true,
"createdAt": "text",
"updatedAt": "text"
}
}
],
"total": 1,
"limit": 1,
"offset": 1
}500Successful response
Invalid input data
Authorization not provided
Insufficient access
Not found
Internal server error
GET /api/v2/benefits/admin/all HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"values": [
{
"id": 1,
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "text",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "ACTIVE",
"createdAt": "text",
"updatedAt": "text",
"type": "LIMITED_TIME_PERK",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"startDate": "text",
"expirationDate": "text"
}
],
"total": 1,
"limit": 1,
"offset": 1
}falseSuccessful response
Invalid input data
Not found
Internal server error
GET /api/v2/benefits/categories HTTP/1.1
Host: api.ethos.network
Accept: */*
[
{
"id": 1,
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true,
"createdAt": "text",
"updatedAt": "text"
}
]Successful response
Invalid input data
Authorization not provided
Insufficient access
Internal server error
POST /api/v2/benefits/categories HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66
{
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true
}{
"id": 1,
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true,
"createdAt": "text",
"updatedAt": "text"
}Successful response
Invalid input data
Authorization not provided
Insufficient access
Not found
Internal server error
PUT /api/v2/benefits/categories/{id} HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 66
{
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true
}{
"id": 1,
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true,
"createdAt": "text",
"updatedAt": "text"
}Successful response
Invalid input data
Authorization not provided
Insufficient access
Not found
Internal server error
DELETE /api/v2/benefits/categories/{id} HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"id": 1,
"name": "text",
"displayName": "text",
"sortOrder": 1,
"isActive": true,
"createdAt": "text",
"updatedAt": "text"
}INACTIVEPossible values: Successful response
Invalid input data
Authorization not provided
Insufficient access
Internal server error
POST /api/v2/benefits HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 404
{
"type": "LIMITED_TIME_PERK",
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "https://example.com",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "INACTIVE",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"startDate": "text",
"expirationDate": "text",
"categoryId": 1
}{
"id": 1,
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "text",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "ACTIVE",
"createdAt": "text",
"updatedAt": "text",
"type": "LIMITED_TIME_PERK",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"startDate": "text",
"expirationDate": "text"
}Successful response
Invalid input data
Authorization not provided
Insufficient access
Not found
Internal server error
PUT /api/v2/benefits/{benefitId} HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 375
{
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "https://example.com",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"status": "ACTIVE",
"startDate": "text",
"expirationDate": "text",
"categoryId": 1
}{
"id": 1,
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "text",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "ACTIVE",
"createdAt": "text",
"updatedAt": "text",
"type": "LIMITED_TIME_PERK",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"startDate": "text",
"expirationDate": "text"
}Successful response
Invalid input data
Authorization not provided
Insufficient access
Not found
Internal server error
DELETE /api/v2/benefits/{benefitId} HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"id": 1,
"title": "text",
"shortDescription": "text",
"longDescription": "text",
"logoImageUrl": "text",
"carouselImageUrl": "text",
"primaryLinkLabel": "text",
"primaryLinkUrl": "text",
"secondaryLinkLabel": "text",
"secondaryLinkUrl": "text",
"status": "ACTIVE",
"createdAt": "text",
"updatedAt": "text",
"type": "LIMITED_TIME_PERK",
"qualifications": {
"scoreThreshold": 1,
"isValidatorEligible": true
},
"startDate": "text",
"expirationDate": "text"
}Last updated