For the complete documentation index, see llms.txt. This page is also available as Markdown.

Replies

Get replies by ids

get

⚠️ Warning: This is a beta endpoint. It is not guaranteed to be stable and may change or break without notice.

Query parameters
idsinteger[]Required
Responses
200

Successful response

application/json
get/replies/by-id
GET /api/v2/replies/by-id?ids=1 HTTP/1.1
Host: api.ethos.network
Accept: */*
{
  "ANY_ADDITIONAL_PROPERTY": {
    "id": 1,
    "contractType": "attestation",
    "targetContract": "text",
    "parentId": 1,
    "authorProfileId": 1,
    "createdAt": 1,
    "content": "text",
    "metadata": "text",
    "pinned": true,
    "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,
      "xpRemovedDueToAbuse": true,
      "influenceFactor": 1,
      "influenceFactorPercentile": 1,
      "humanVerificationStatus": "REQUESTED",
      "validatorNftCount": 1,
      "links": {
        "profile": "https://example.com",
        "scoreBreakdown": "https://example.com"
      },
      "stats": {
        "review": {
          "received": {
            "negative": 1,
            "neutral": 1,
            "positive": 1
          }
        },
        "vouch": {
          "given": {
            "amountWeiTotal": 1,
            "count": 1
          },
          "received": {
            "amountWeiTotal": 1,
            "count": 1
          }
        },
        "vouchTotals": [
          {
            "balance": {
              "given": 1,
              "received": 1
            },
            "count": {
              "given": 1,
              "received": 1
            },
            "token": {
              "address": "text",
              "decimals": 1,
              "id": "text"
            }
          }
        ]
      }
    },
    "url": "text"
  }
}
get

Returns the ancestor reply IDs needed to deep link to a specific reply.

Path parameters
replyIdinteger · max: 2147483647Required
Responses
200

Successful response

application/json
ancestorIdsnumber[]Required
get/replies/{replyId}/deep-link-info
GET /api/v2/replies/{replyId}/deep-link-info HTTP/1.1
Host: api.ethos.network
Accept: */*
{
  "ancestorIds": [
    1
  ]
}

Get the position of a reply in a paginated list

get

Returns the 0-based offset of a reply within its parent reply list, given sort parameters. Used for deep-linking to navigate to the correct page.

Path parameters
replyIdinteger · max: 2147483647Required
Query parameters
contractTypestring · enumRequiredPossible values:
excludeUnverifiedbooleanOptional
orderBystring · enumOptionalDefault: createdAtPossible values:
orderDirectionstring · enumOptionalDefault: descPossible values:
parentIdinteger · max: 2147483647Required
Responses
200

Successful response

application/json
offsetinteger · max: 9007199254740991Required
get/replies/{replyId}/offset
GET /api/v2/replies/{replyId}/offset?contractType=attestation&parentId=1 HTTP/1.1
Host: api.ethos.network
Accept: */*
{
  "offset": 1
}

Get replies for a specific activity or another reply

get

⚠️ Warning: This is a beta endpoint. It is not guaranteed to be stable and may change or break without notice.

Path parameters
contractTypestring · enumRequiredPossible values:
parentIdinteger · max: 2147483647Required
Query parameters
excludeUnverifiedbooleanOptional
orderBystring · enumOptionalDefault: createdAtPossible values:
orderDirectionstring · enumOptionalDefault: descPossible values:
limitinteger · max: 500OptionalDefault: 50
offsetinteger · max: 2147483647OptionalDefault: 0
Responses
200

Successful response

application/json
totalnumberRequired
limitnumberRequired
offsetnumberRequired
get/replies/{contractType}/{parentId}
GET /api/v2/replies/{contractType}/{parentId} HTTP/1.1
Host: api.ethos.network
Accept: */*
{
  "values": [
    {
      "id": 1,
      "contractType": "attestation",
      "targetContract": "text",
      "parentId": 1,
      "authorProfileId": 1,
      "createdAt": 1,
      "content": "text",
      "metadata": "text",
      "pinned": true,
      "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,
        "xpRemovedDueToAbuse": true,
        "influenceFactor": 1,
        "influenceFactorPercentile": 1,
        "humanVerificationStatus": "REQUESTED",
        "validatorNftCount": 1,
        "links": {
          "profile": "https://example.com",
          "scoreBreakdown": "https://example.com"
        },
        "stats": {
          "review": {
            "received": {
              "negative": 1,
              "neutral": 1,
              "positive": 1
            }
          },
          "vouch": {
            "given": {
              "amountWeiTotal": 1,
              "count": 1
            },
            "received": {
              "amountWeiTotal": 1,
              "count": 1
            }
          },
          "vouchTotals": [
            {
              "balance": {
                "given": 1,
                "received": 1
              },
              "count": {
                "given": 1,
                "received": 1
              },
              "token": {
                "address": "text",
                "decimals": 1,
                "id": "text"
              }
            }
          ]
        }
      }
    }
  ],
  "total": 1,
  "limit": 1,
  "offset": 1
}

Pin or unpin a reply

put

Pin or unpin a reply on slash activity. Only the slasher and defender can pin their own replies. Only one top-level reply can be pinned at a time — pinning a new reply will automatically unpin any previously pinned reply for the same activity.

Authorizations
AuthorizationstringRequired
Bearer authentication header of the form Bearer <token>.
Path parameters
replyIdinteger · min: -9007199254740991 · max: 9007199254740991Required
Body
pinnedbooleanRequired
Responses
200

Successful response

application/json
okbooleanRequired
unpinnedRepliesinteger[]Required
put/replies/{replyId}/pin
PUT /api/v2/replies/{replyId}/pin HTTP/1.1
Host: api.ethos.network
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 15

{
  "pinned": true
}
{
  "ok": true,
  "unpinnedReplies": [
    1
  ]
}

Last updated