Projects
Query parameters
userkeystringOptional
limitinteger · max: 100OptionalDefault:
50
offsetnumberOptionalDefault:
0
Responses
200
Successful response
application/json
400
Invalid input data
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects HTTP/1.1
Host: api.ethos.network
Accept: */*
{
"projects": [
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text",
"user": {
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
},
"votes": {
"bullish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
},
"bearish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
}
},
"categories": [
{
"id": 1,
"name": "text",
"slug": "text",
"description": "text"
}
],
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
],
"commentCount": 1
}
],
"total": 1
}
Query parameters
limitnumberOptionalDefault:
5
Responses
200
Successful response
application/json
400
Invalid input data
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects/suggested HTTP/1.1
Host: api.ethos.network
Accept: */*
[
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text",
"user": {
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
},
"votes": {
"bullish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
},
"bearish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
}
},
"categories": [
{
"id": 1,
"name": "text",
"slug": "text",
"description": "text"
}
],
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
],
"commentCount": 1
}
]
Path parameters
projectIdintegerRequired
Responses
200
Successful response
application/json
400
Invalid input data
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects/{projectId} HTTP/1.1
Host: api.ethos.network
Accept: */*
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text"
}
Authorizations
Path parameters
projectIdintegerRequired
Body
descriptionstringOptional
bannerImageUrlstring · uri | nullableOptional
categoryIdsinteger[]Optional
chainsinteger[]Optional
isPromotedbooleanOptional
launchDatestringOptional
statusstring · enumOptionalPossible values:
Responses
200
Successful response
application/json
400
Invalid input data
application/json
401
Authorization not provided
application/json
403
Insufficient access
application/json
404
Not found
application/json
500
Internal server error
application/json
put
PUT /api/v2/projects/{projectId} HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 205
{
"description": "text",
"bannerImageUrl": "https://example.com",
"categoryIds": [
1
],
"chains": [
1
],
"isPromoted": true,
"launchDate": "text",
"links": [
{
"type": "WEBSITE",
"url": "https://example.com"
}
],
"status": "ACTIVE"
}
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text"
}
Path parameters
projectIdintegerRequired
Query parameters
topVotersLimitnumber · max: 100OptionalDefault:
3
Responses
200
Successful response
application/json
400
Invalid input data
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects/{projectId}/details HTTP/1.1
Host: api.ethos.network
Accept: */*
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text",
"user": {
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
},
"votes": {
"bullish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
},
"bearish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
}
},
"categories": [
{
"id": 1,
"name": "text",
"slug": "text",
"description": "text"
}
],
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
],
"commentCount": 1,
"links": [
{
"type": "WEBSITE",
"url": "https://example.com"
}
]
}
Path parameters
usernamestringRequired
Query parameters
topVotersLimitnumberOptionalDefault:
3
Responses
200
Successful response
application/json
400
Invalid input data
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects/username/{username} HTTP/1.1
Host: api.ethos.network
Accept: */*
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text",
"user": {
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
},
"votes": {
"bullish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
},
"bearish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
}
},
"categories": [
{
"id": 1,
"name": "text",
"slug": "text",
"description": "text"
}
],
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
],
"commentCount": 1,
"links": [
{
"type": "WEBSITE",
"url": "https://example.com"
}
]
}
Path parameters
projectIdintegerRequired
Query parameters
limitinteger · max: 50OptionalDefault:
50
offsetnumberOptionalDefault:
0
Responses
200
Successful response
application/json
400
Invalid input data
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects/{projectId}/team HTTP/1.1
Host: api.ethos.network
Accept: */*
[
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
]
Authorizations
Path parameters
projectIdintegerRequired
Body
userIdsinteger[]Required
Responses
200
Successful response
application/json
Responseany
400
Invalid input data
application/json
401
Authorization not provided
application/json
403
Insufficient access
application/json
500
Internal server error
application/json
post
POST /api/v2/projects/{projectId}/team HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 15
{
"userIds": [
1
]
}
No content
Authorizations
Path parameters
projectIdintegerRequired
Query parameters
userIdsinteger[]Required
Responses
200
Successful response
application/json
Responseany
400
Invalid input data
application/json
401
Authorization not provided
application/json
403
Insufficient access
application/json
404
Not found
application/json
500
Internal server error
application/json
delete
DELETE /api/v2/projects/{projectId}/team HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No content
Authorizations
Path parameters
projectIdnumberRequired
Body
chainIdnumberRequired
Responses
200
Successful response
application/json
400
Invalid input data
application/json
401
Authorization not provided
application/json
403
Insufficient access
application/json
500
Internal server error
application/json
post
POST /api/v2/projects/{projectId}/chains HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 13
{
"chainId": 1
}
{
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
]
}
Authorizations
Path parameters
projectIdnumberRequired
Query parameters
chainIdnumberRequired
Responses
200
Successful response
application/json
400
Invalid input data
application/json
401
Authorization not provided
application/json
403
Insufficient access
application/json
404
Not found
application/json
500
Internal server error
application/json
delete
DELETE /api/v2/projects/{projectId}/chains HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
]
}
Authorizations
Query parameters
userkeystringRequired
timeoutnumberOptionalDefault:
30000
Responses
200
Successful response
application/json
400
Invalid input data
application/json
401
Authorization not provided
application/json
403
Insufficient access
application/json
404
Not found
application/json
500
Internal server error
application/json
get
GET /api/v2/projects/confirm HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"id": 1,
"userkey": "text",
"status": "ACTIVE",
"bannerImageUrl": "https://example.com",
"isPromoted": true,
"description": "text",
"createdAt": "text",
"updatedAt": "text",
"user": {
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
},
"votes": {
"bullish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
},
"bearish": {
"topVoters": [
{
"id": 1,
"profileId": 1,
"displayName": "text",
"username": "text",
"avatarUrl": "https://example.com",
"description": "text",
"score": 1,
"status": "ACTIVE",
"userkeys": [
"text"
],
"xpTotal": 1,
"xpStreakDays": 1,
"stats": {
"review": {
"received": {
"negative": 1,
"neutral": 1,
"positive": 1
}
},
"vouch": {
"given": {
"amountWeiTotal": 1,
"count": 1
},
"received": {
"amountWeiTotal": 1,
"count": 1
}
}
}
}
],
"total": 1,
"uniqueVoters": 1
}
},
"categories": [
{
"id": 1,
"name": "text",
"slug": "text",
"description": "text"
}
],
"chains": [
{
"id": 1,
"name": "text",
"url": "https://example.com",
"iconUrl": "https://example.com"
}
],
"commentCount": 1,
"links": [
{
"type": "WEBSITE",
"url": "https://example.com"
}
]
}