---
updatedAt: 2025-06-24T08:17:04.000Z
agentTools:
  projectIndex: https://developers.happeo.com/llms.txt
---

# Index Comments

Returns new data since the last update if there is any.

# OpenAPI definition

```json
{
  "openapi": "3.0.1",
  "info": {
    "version": "1.0.0",
    "title": "Search Data Service",
    "description": "Exposes Happeo searchable content for Posts, Comments, Channels, Pages, Page groups, Users and Groups and principal data for Users and Groups."
  },
  "components": {
    "parameters": {
      "pageSize": {
        "in": "query",
        "name": "pageSize",
        "required": false,
        "schema": {
          "type": "integer",
          "description": "defines the maximum number of items to be returned if not greater than internal limitation."
        }
      },
      "byteSize": {
        "in": "query",
        "name": "byteSize",
        "required": false,
        "schema": {
          "type": "integer",
          "description": "defines the maximum number of bytes to be returned if not greater than internal limitation."
        }
      }
    },
    "securitySchemes": {
      "ApiKeyAuth": {
        "type": "apiKey",
        "in": "header",
        "name": "x-happeo-apikey"
      }
    },
    "schemas": {
      "PaginationLinks": {
        "type": "object",
        "properties": {
          "_links": {
            "type": "object",
            "properties": {
              "first": {
                "type": "string",
                "format": "uri-template",
                "description": "fetch a batch from the beginning."
              },
              "next": {
                "type": "string",
                "format": "uri-template",
                "description": "empty if no new data found."
              }
            }
          }
        }
      },
      "AttachmentItem": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of the attachment image, drive..."
          },
          "title": {
            "type": "string",
            "description": "The title of the attachment"
          },
          "description": {
            "type": "string",
            "description": "The description of the attachment"
          }
        }
      },
      "AttachmentItems": {
        "type": "array",
        "items": {
          "$ref": "#/components/schemas/AttachmentItem"
        }
      },
      "HashtagItems": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "Identity": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "Represents the global unique identifier of the entity. This GUID is temporary unavabile because we are in a period of transition from unique identifiers to GUID.",
            "format": "urn"
          },
          "internalId": {
            "type": "string",
            "deprecated": true,
            "description": "Represents the internal unique identifier of the entity. It is deprecated because in the near future it will be replaced by id which will be a GUID. Format {urn:happeo:post:{identifier}}.",
            "format": "urn"
          },
          "visible": {
            "type": "boolean",
            "description": "false when entity was deleted."
          }
        }
      },
      "Entity": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Identity"
          },
          {
            "type": "object",
            "properties": {
              "updatedMillis": {
                "type": "number",
                "description": "Timestamp in milliseconds since the Unix epoch representing when the post was updated."
              },
              "createdMillis": {
                "type": "number",
                "description": "Timestamp in milliseconds since the Unix epoch representing when the post was published."
              },
              "additionalProperties": {
                "type": "object",
                "additionalProperties": true,
                "description": "This will be used for future properties."
              }
            }
          }
        ]
      },
      "Comment": {
        "allOf": [
          {
            "$ref": "#/components/schemas/Entity"
          },
          {
            "type": "object",
            "properties": {
              "channelId": {
                "type": "string",
                "description": "Represents a reference to the Channel object. For now it is referenced through the Channel.internalId property, but in the near future it will be replaced by Channel.id (GUID). Be prepared to support both when the change will be released."
              },
              "content": {
                "type": "string",
                "description": "The content of the comment."
              },
              "attachments": {
                "$ref": "#/components/schemas/AttachmentItems"
              },
              "authorId": {
                "type": "string",
                "description": "Represents a reference to the User object. For now it is referenced through the User.internalId property, but in the near future it will be replaced by User.id (GUID). Be prepared to support both when the change will be released.",
                "format": "urn"
              },
              "postId": {
                "type": "string",
                "description": "Represents a reference to the Post object. For now it is referenced through the Post.internalId property, but in the near future it will be replaced by Post.id (GUID). Be prepared to support both when the change will be released.",
                "format": "urn"
              },
              "hashtags": {
                "$ref": "#/components/schemas/HashtagItems"
              }
            }
          }
        ]
      },
      "CommentsResponse": {
        "allOf": [
          {
            "$ref": "#/components/schemas/PaginationLinks"
          },
          {
            "type": "object",
            "properties": {
              "items": {
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/Comment"
                }
              }
            }
          }
        ]
      }
    }
  },
  "security": [
    {
      "ApiKeyAuth": []
    }
  ],
  "paths": {
    "/search-data/content/comments": {
      "description": "Get comment data for search.",
      "parameters": [
        {
          "$ref": "#/components/parameters/byteSize"
        },
        {
          "$ref": "#/components/parameters/pageSize"
        },
        {
          "name": "Accept",
          "in": "header",
          "required": true,
          "schema": {
            "type": "string",
            "enum": [
              "application/vnd.happeo.search-data.content.comment-list+json"
            ]
          }
        }
      ],
      "get": {
        "summary": "Index Comments",
        "description": "Returns new data since the last update if there is any.",
        "responses": {
          "200": {
            "description": "The list of updated data since the last call.",
            "content": {
              "application/vnd.happeo.search-data.content.comment-list+json": {
                "schema": {
                  "$ref": "#/components/schemas/CommentsResponse"
                }
              }
            }
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://api.happeo.com"
    }
  ]
}
```