> For the complete documentation index, see [llms.txt](https://developers.ethos.network/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://developers.ethos.network/api-documentation/api-v2/activities.md).

# Activities

## GET /activities/{activityType}/{id}

> Get activity by id

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/{activityType}/{id}":{"get":{"operationId":"activity-byId","summary":"Get activity by id","tags":["activities"],"parameters":[{"in":"path","name":"activityType","schema":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]},"required":true},{"in":"path","name":"id","schema":{"type":"integer","minimum":0,"maximum":2147483647},"required":true}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.NOT_FOUND"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.NOT_FOUND":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Not found error (404)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## POST /activities/bulk

> Get activities by type and id

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/bulk":{"post":{"operationId":"activity-bulk","summary":"Get activities by type and id","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"activityType":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]},"id":{"type":"integer","minimum":0,"maximum":2147483647}},"required":["activityType","id"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## GET /activities/{activityType}/tx/{txHash}

> Get activity by transaction hash

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/{activityType}/tx/{txHash}":{"get":{"operationId":"activity-byTxHash","summary":"Get activity by transaction hash","tags":["activities"],"parameters":[{"in":"path","name":"activityType","schema":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]},"required":true},{"in":"path","name":"txHash","schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{64}$"},"required":true}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.NOT_FOUND"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.NOT_FOUND":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Not found error (404)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## GET /activities/userkey

> \[Deprecated] Get activities by userkey (author or subject). Use /activities/profile/{given,received,all} instead.

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/userkey":{"get":{"operationId":"activity-byUserkey","summary":"[Deprecated] Get activities by userkey (author or subject). Use /activities/profile/{given,received,all} instead.","tags":["activities"],"deprecated":true,"parameters":[{"in":"query","name":"userkey","schema":{"type":"string"},"required":true},{"in":"query","name":"direction","schema":{"type":"string","enum":["author","subject"]}},{"in":"query","name":"activityType","schema":{"type":"array","items":{"type":"string","enum":["PROFILE","ATTESTATION","INVITATION","VOUCH","UNVOUCH","VOUCH_V2","UNVOUCH_V2","VOUCH_V2_DECREASE","VOUCH_V2_INCREASE","SLASH","REVIEW","REVIEW_ARCHIVED","MARKET","MARKET_VOTE","MARKET_V2_TRADE","VOTE","REPLY","CLAIM","PROJECT","BROKER","BOND","XP_TIP"]}}},{"in":"query","name":"orderBy","schema":{"type":"string","enum":["createdAt","totalVotes","netVotes","replyCount","authorScore","subjectScore","votes"]}},{"in":"query","name":"sort","schema":{"default":"desc","type":"string","enum":["asc","desc"]}},{"in":"query","name":"reviewScore","schema":{"anyOf":[{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]},{"type":"array","items":{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]}}]}},{"in":"query","name":"includeArchived","schema":{"type":"boolean"}},{"in":"query","name":"excludeSpam","schema":{"type":"boolean"}},{"in":"query","name":"excludeBoostedReviews","schema":{"type":"boolean"}},{"in":"query","name":"limit","schema":{"default":50,"type":"integer","minimum":0,"maximum":1000}},{"in":"query","name":"offset","schema":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.NOT_FOUND"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.NOT_FOUND":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Not found error (404)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## POST /activities/feed

> Get activities optimized for the feed

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/feed":{"post":{"operationId":"activity-feed","summary":"Get activities optimized for the feed","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"cache":{"default":false,"type":"boolean"},"dayRange":{"default":null,"anyOf":[{"type":"integer","minimum":1,"maximum":90},{"type":"null"}]},"excludeSpam":{"type":"boolean"},"excludeUnverified":{"type":"boolean"},"filter":{"type":"array","items":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"orderBy":{"default":{"field":"timestamp","direction":"desc"},"type":"object","properties":{"field":{"type":"string","enum":["timestamp","votes","comments","score","controversial","hot","distance"]},"direction":{"type":"string","enum":["asc","desc"]}},"required":["field","direction"]},"limit":{"default":50,"type":"integer","minimum":0,"maximum":1000},"offset":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}}}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object"}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## POST /activities/notifications

> Get activities for notifications feed

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"security":[{"Authorization":[]}],"components":{"securitySchemes":{"Authorization":{"type":"http","scheme":"bearer"}},"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.UNAUTHORIZED":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Authorization not provided error (401)","description":"The error information"},"error.FORBIDDEN":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Insufficient access error (403)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}},"paths":{"/activities/notifications":{"post":{"operationId":"activity-notifications","summary":"Get activities for notifications feed","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"filter":{"type":"array","items":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"excludeHistorical":{"type":"boolean"},"excludeSpam":{"type":"boolean"},"excludeUnverified":{"type":"boolean"},"pagination":{"type":"object","properties":{"limit":{"default":50,"type":"integer","minimum":0,"maximum":50},"offset":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}}},"orderBy":{"default":{"field":"timestamp","direction":"desc"},"type":"object","properties":{"field":{"type":"string","enum":["timestamp","votes","comments","score","controversial","hot","distance"]},"direction":{"type":"string","enum":["asc","desc"]}},"required":["field","direction"]}},"required":["pagination"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object"}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"},"offsets":{"type":"object","propertyNames":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]},"additionalProperties":{"type":"number"},"required":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]},"counts":{"type":"object","propertyNames":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]},"additionalProperties":{"type":"number"},"required":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"401":{"description":"Authorization not provided","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.UNAUTHORIZED"}}}},"403":{"description":"Insufficient access","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.FORBIDDEN"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}}}
```

## POST /activities/profile/given

> Get activities authored by the specified user

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/profile/given":{"post":{"operationId":"activity-profileGiven","summary":"Get activities authored by the specified user","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userkey":{"type":"string"},"filter":{"type":"array","items":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"excludeHistorical":{"type":"boolean"},"excludeSpam":{"type":"boolean"},"excludeUnverified":{"type":"boolean"},"excludeBoostedReviews":{"type":"boolean"},"orderBy":{"default":{"field":"timestamp","direction":"desc"},"type":"object","properties":{"field":{"type":"string","enum":["timestamp","votes","comments","score","controversial","hot","distance"]},"direction":{"type":"string","enum":["asc","desc"]}},"required":["field","direction"]},"reviewScore":{"anyOf":[{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]},{"type":"array","items":{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]}}]},"minAuthorScore":{"type":"integer","minimum":0,"maximum":2800},"limit":{"default":50,"type":"integer","minimum":0,"maximum":1000},"offset":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}},"required":["userkey"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object"}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## POST /activities/profile/received

> Get activities where the specified user is the subject

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/profile/received":{"post":{"operationId":"activity-profileReceived","summary":"Get activities where the specified user is the subject","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userkey":{"type":"string"},"filter":{"type":"array","items":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"excludeHistorical":{"type":"boolean"},"excludeSpam":{"type":"boolean"},"excludeUnverified":{"type":"boolean"},"excludeBoostedReviews":{"type":"boolean"},"orderBy":{"default":{"field":"timestamp","direction":"desc"},"type":"object","properties":{"field":{"type":"string","enum":["timestamp","votes","comments","score","controversial","hot","distance"]},"direction":{"type":"string","enum":["asc","desc"]}},"required":["field","direction"]},"reviewScore":{"anyOf":[{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]},{"type":"array","items":{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]}}]},"minAuthorScore":{"type":"integer","minimum":0,"maximum":2800},"limit":{"default":50,"type":"integer","minimum":0,"maximum":1000},"offset":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}},"required":["userkey"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object"}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## POST /activities/profile/all

> Get all activities (authored & received) for a user

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/profile/all":{"post":{"operationId":"activity-profileAll","summary":"Get all activities (authored & received) for a user","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userkey":{"type":"string"},"filter":{"type":"array","items":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"excludeHistorical":{"type":"boolean"},"excludeSpam":{"type":"boolean"},"excludeUnverified":{"type":"boolean"},"excludeBoostedReviews":{"type":"boolean"},"orderBy":{"default":{"field":"timestamp","direction":"desc"},"type":"object","properties":{"field":{"type":"string","enum":["timestamp","votes","comments","score","controversial","hot","distance"]},"direction":{"type":"string","enum":["asc","desc"]}},"required":["field","direction"]},"reviewScore":{"anyOf":[{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]},{"type":"array","items":{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]}}]},"minAuthorScore":{"type":"integer","minimum":0,"maximum":2800},"limit":{"default":50,"type":"integer","minimum":0,"maximum":1000},"offset":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}},"required":["userkey"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object"}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## POST /activities/project

> Get project-related activities by project

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/project":{"post":{"operationId":"activity-project","summary":"Get project-related activities by project","tags":["activities"],"parameters":[],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"userkey":{"type":"string"},"filter":{"type":"array","items":{"type":"string","enum":["attestation","broker-post","human-verification","invitation-accepted","market","market-v2-trade","market-vote","reply","review","review-archived","slash","unvouch","unvouch-v2","vote","vouch","vouch-v2","vouch-v2-decrease","vouch-v2-increase","xp-tip"]}},"excludeHistorical":{"type":"boolean"},"excludeSpam":{"type":"boolean"},"excludeUnverified":{"type":"boolean"},"excludeBoostedReviews":{"type":"boolean"},"orderBy":{"default":{"field":"timestamp","direction":"desc"},"type":"object","properties":{"field":{"type":"string","enum":["timestamp","votes","comments","score","controversial","hot","distance"]},"direction":{"type":"string","enum":["asc","desc"]}},"required":["field","direction"]},"reviewScore":{"anyOf":[{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]},{"type":"array","items":{"type":"string","enum":["NEGATIVE","NEUTRAL","POSITIVE"]}}]},"minAuthorScore":{"type":"integer","minimum":0,"maximum":2800},"limit":{"default":50,"type":"integer","minimum":0,"maximum":1000},"offset":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}},"required":["userkey"]}}}},"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object"}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```

## GET /activities/slash/{slashId}/impacted-supporters

> Get paginated list of supporters impacted by a slash

```json
{"openapi":"3.1.0","info":{"title":"Ethos API","version":"v2"},"tags":[{"name":"activities"}],"servers":[{"url":"https://api.ethos.network/api/v2"}],"paths":{"/activities/slash/{slashId}/impacted-supporters":{"get":{"operationId":"activity-impactedSlashSupporters","summary":"Get paginated list of supporters impacted by a slash","tags":["activities"],"parameters":[{"in":"path","name":"slashId","schema":{"type":"integer","minimum":0,"maximum":2147483647},"required":true},{"in":"query","name":"limit","schema":{"default":50,"type":"integer","minimum":0,"maximum":50}},{"in":"query","name":"offset","schema":{"default":0,"type":"integer","minimum":0,"maximum":2147483647}}],"responses":{"200":{"description":"Successful response","content":{"application/json":{"schema":{"type":"object","properties":{"values":{"type":"array","items":{"type":"object","properties":{"id":{"type":"number"},"profileId":{"anyOf":[{"type":"number"},{"type":"null"}]},"displayName":{"type":"string"},"username":{"anyOf":[{"type":"string"},{"type":"null"}]},"avatarUrl":{"type":"string","format":"uri"},"description":{"anyOf":[{"type":"string"},{"type":"null"}]},"score":{"type":"number"},"status":{"type":"string","enum":["ACTIVE","INACTIVE","MERGED"]},"userkeys":{"type":"array","items":{"type":"string"}},"xpTotal":{"type":"number"},"xpStreakDays":{"type":"number"},"xpRemovedDueToAbuse":{"type":"boolean"},"influenceFactor":{"type":"number"},"influenceFactorPercentile":{"type":"number"},"humanVerificationStatus":{"anyOf":[{"type":"string","enum":["REQUESTED","VERIFIED","REVOKED","PENDING"]},{"type":"null"}]},"validatorNftCount":{"type":"number"},"links":{"type":"object","properties":{"profile":{"type":"string","format":"uri"},"scoreBreakdown":{"type":"string","format":"uri"}},"required":["profile","scoreBreakdown"],"additionalProperties":false},"stats":{"type":"object","properties":{"holdingsWei":{"anyOf":[{"type":"integer","format":"int64"},{"type":"null"}],"description":"Total WHUF held across the user’s addresses, in wei. Null: never computed, or last recomputed while the user held no addresses — distinct from a computed balance of 0."},"review":{"type":"object","properties":{"received":{"type":"object","properties":{"negative":{"type":"number"},"neutral":{"type":"number"},"positive":{"type":"number"}},"required":["negative","neutral","positive"],"additionalProperties":false}},"required":["received"],"additionalProperties":false},"vouch":{"type":"object","properties":{"given":{"type":"object","properties":{"amountWeiTotal":{"type":"integer","format":"int64"},"count":{"type":"number"}},"required":["amountWeiTotal","count"],"additionalProperties":false},"received":{"type":"object","properties":{"amountWeiTotal":{"type":"integer","format":"int64"},"count":{"type":"number"}},"required":["amountWeiTotal","count"],"additionalProperties":false}},"required":["given","received"],"additionalProperties":false,"description":"@deprecated Native-currency lifetime totals only. Use stats.vouchTotals (per-token). Removed after 2026-10-20."},"vouchTotals":{"minItems":1,"type":"array","items":{"type":"object","properties":{"balance":{"type":"object","properties":{"given":{"type":"integer","format":"int64"},"received":{"type":"integer","format":"int64"}},"required":["given","received"],"additionalProperties":false},"count":{"type":"object","properties":{"given":{"type":"integer","minimum":0,"maximum":9007199254740991},"received":{"type":"integer","minimum":0,"maximum":9007199254740991}},"required":["given","received"],"additionalProperties":false},"token":{"type":"object","properties":{"address":{"anyOf":[{"type":"string","description":"Ethereum address (0x-prefixed, 20 bytes)"},{"type":"null"}]},"decimals":{"type":"integer","minimum":0,"maximum":9007199254740991},"id":{"type":"string","enum":["eth","whuf"],"description":"Lowercase token identifier"}},"required":["address","decimals","id"],"additionalProperties":false}},"required":["balance","count","token"],"additionalProperties":false}},"whufGuarantee":{"anyOf":[{"type":"object","properties":{"asOf":{"type":"string"},"expiresAt":{"anyOf":[{"type":"string"},{"type":"null"}]},"guaranteedWei":{"type":"integer","format":"int64"},"status":{"type":"string","enum":["active","enrolling","expired"]}},"required":["asOf","expiresAt","guaranteedWei","status"],"additionalProperties":false},{"type":"null"}],"description":"The profile’s WHUF price guarantee, summed across its wallets. Null when the profile holds no guarantee account, whether because the accounting has not reached it yet or because it was not eligible; the price-guarantee endpoint tells those apart. Enrolling coverage is provisional until the token unlocks and fixes it. asOf is when the accounting last changed this profile’s coverage or enrollment — not when it last ran."}},"required":["holdingsWei","review","vouch","vouchTotals","whufGuarantee"],"additionalProperties":false},"penaltyAmount":{"type":"number"}},"required":["id","profileId","displayName","username","avatarUrl","description","score","status","userkeys","xpTotal","xpStreakDays","xpRemovedDueToAbuse","influenceFactor","influenceFactorPercentile","validatorNftCount","links","stats","penaltyAmount"],"additionalProperties":false}},"total":{"type":"number"},"limit":{"type":"number"},"offset":{"type":"number"}},"required":["values","total","limit","offset"],"additionalProperties":false}}}},"400":{"description":"Invalid input data","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.BAD_REQUEST"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.NOT_FOUND"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/error.INTERNAL_SERVER_ERROR"}}}}}}}},"components":{"schemas":{"error.BAD_REQUEST":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Invalid input data error (400)","description":"The error information"},"error.NOT_FOUND":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Not found error (404)","description":"The error information"},"error.INTERNAL_SERVER_ERROR":{"type":"object","properties":{"message":{"type":"string","description":"The error message"},"code":{"type":"string","description":"The error code"},"issues":{"description":"An array of issues that were responsible for the error","type":"array","items":{"type":"object","properties":{"message":{"type":"string"}},"required":["message"],"additionalProperties":false}}},"required":["message","code"],"additionalProperties":false,"title":"Internal server error error (500)","description":"The error information"}}}}
```
