Reply to comment

Changed on

<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>

Adds a reply to a comment thread. Replying to a resolved thread doesn't reopen it.

mentioned_emails records who the comment mentions. Only emails that List mentionable users returns are kept, and the rest are dropped without an error. Mentioning someone sends them no email or notification, and responses never return the list.

Anyone with the app open in the builder sees the change right away.

This is limited to 120 requests per minute per app, shared by every other comments endpoint. A signed-in session has its own limit, and every personal access token for the workspace shares one. Some workspaces have a different limit. Every request that counts against the limit gets X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (Unix time in seconds) headers, and a 429 also gets Retry-After in seconds. If the limiter itself is unavailable, requests go through without these headers.

<Note>Call this as an editor of the app, with a personal access token sent as a Bearer token or from a signed-in session. Viewers in the app's workspace, read-only tokens, and workspace API keys are refused.</Note>

post/api/apps/{app_id}/comments/threads/{thread_id}/replies

Request

  • Base URL: https://app.base44.com
  • URL: https://app.base44.com/api/apps/{app_id}/comments/threads/{thread_id}/replies
  • Auth: HTTP bearer

Path parameters

app_idstring required

ID of the app.

thread_idstring required

ID of the comment thread, from thread.id in List comments called with the same branch_id.

Query parameters

branch_idstring

ID of the branch to work on, as returned by List branches. Omit it to work on the app's main branch.

Request body

contentstring required

Text of the comment, 1 to 5000 characters.

mentioned_emailsstring[]

Emails of up to 50 people the comment mentions. Mentions send no notification.

Example request

{
  "content": "Done, thanks!",
  "mentioned_emails": [
    "dana@acme.com"
  ]
}

Response

The new reply.

idstring required

ID of the comment.

contentstring required

Text of the comment.

sender_idstring required

ID of the Base44 user who wrote it, or base44 for a reply from the AI.

sender_namestring required

Name of the author when they wrote it, or their email when they had no name. Base44 for the AI.

sender_avatar_urlstring nullable required

URL of the author's profile image, or null when they have none.

created_datestring date-time required

When the comment was posted, in UTC.

edited_atstring date-time nullable required

When the comment was last edited, in UTC, or null when it never was.

reactionsobject required

Each emoji reacted with, mapped to the IDs of the users who reacted with it.

Example response

{
  "id": "68e2b7c4d4f0a9001c3e5a1c",
  "content": "Make this button match the header color.",
  "sender_id": "6820f41be7b91d003c45a20a",
  "sender_name": "Dana Levi",
  "sender_avatar_url": "https://lh3.googleusercontent.com/a/ACg8ocJ2",
  "created_date": "2026-10-05T09:14:22.512000Z",
  "edited_at": "2026-10-05T09:14:22.512000Z",
  "reactions": {
    "👍": [
      "6820f41be7b91d003c45a20a"
    ]
  }
}

Changes

    • breaking

      query request parameter branch_id list-of-types was narrowed by removing types null

    • info

      for the query request parameter branch_id, the type was generalized from no type to string

    • info

      added the new optional query request parameter branch_id