Skip to main content
PATCH
/
insights
/
{id}
Update thread
curl --request PATCH \
  --url https://productlane.com/api/v1/insights/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "text": "<string>",
  "title": "<string>",
  "painLevel": "UNKNOWN",
  "projectId": "<string>",
  "notify": {
    "slack": true,
    "email": true
  },
  "state": "NEW",
  "contactId": "<string>",
  "companyId": "<string>",
  "tagIds": [
    "<string>"
  ]
}
'
{
  "id": "<string>",
  "createdAt": "2023-11-07T05:31:56Z",
  "updatedAt": "2023-11-07T05:31:56Z",
  "isDeleted": true,
  "showRecordCall": true,
  "lastInboundMessageAt": "2023-11-07T05:31:56Z",
  "lastOutboundMessageAt": "2023-11-07T05:31:56Z",
  "lastStateChangeAt": "2023-11-07T05:31:56Z",
  "text": "<string>",
  "painLevel": "UNKNOWN",
  "state": "NEW",
  "origin": "INAPP",
  "title": "<string>",
  "snoozedUntil": "2023-11-07T05:31:56Z",
  "workspaceId": "<string>",
  "contactId": "<string>",
  "companyId": "<string>",
  "reporterId": "<string>",
  "assigneeId": "<string>",
  "attachments": "<array>",
  "recordingId": "<string>",
  "videoId": "<string>",
  "slackChannelId": "<string>",
  "linearAttachmentId": "<string>",
  "intercomId": "<string>",
  "frontId": "<string>",
  "zendeskId": "<string>",
  "hubspotId": "<string>",
  "plainId": "<string>",
  "productboardId": "<string>",
  "slackReplyId": "<string>",
  "uniqueId": "<string>",
  "tags": [
    {
      "id": "<string>",
      "name": "<string>",
      "color": "<string>",
      "icon": "<string>",
      "tagGroupId": "<string>"
    }
  ]
}

Update Thread

Update an existing thread by its ID. All fields are optional and only provided fields will be updated.

Path Parameters

id
string
required
Unique identifier of the thread to update

Request Body

text
string
Thread content (minimum 1 character). Can be HTML formatted for line breaks, lists, formatting and headings.
title
string
Thread title
painLevel
string
Pain level associated with this thread
projectId
string
ID of the project this thread is related to
notify
object
Notification preferences
notify.slack
boolean
Whether to send Slack notification
notify.email
boolean
Whether to send email notification
state
string
New state for the thread

Response

id
string
Unique identifier for the updated thread
text
string
Thread content
title
string
Thread title
painLevel
string
Pain level of the thread
origin
string
Source of the thread
contactEmail
string
Email of the contact who provided the thread
contactName
string
Name of the contact who provided the thread
projectId
string
ID of the related project
issueId
string
ID of the related issue
state
string
Current state of the thread
createdAt
string
Timestamp when the thread was created
updatedAt
string
Timestamp when the thread was last updated
workspaceId
string
ID of the workspace this thread belongs to

Example Request

{
  "text": "Updated: The dashboard has been redesigned with better navigation and clearer metrics organization.",
  "title": "Dashboard Navigation - Resolved",
  "painLevel": "LOW",
  "state": "COMPLETED",
  "projectId": "proj_123"
}

Example Response

{
  "id": "insight_123456789",
  "text": "Updated: The dashboard has been redesigned with better navigation and clearer metrics organization.",
  "title": "Dashboard Navigation - Resolved",
  "painLevel": "LOW",
  "origin": "API",
  "contactEmail": "john@acme.com",
  "contactName": "John Doe",
  "projectId": "proj_123",
  "issueId": null,
  "state": "COMPLETED",
  "createdAt": "2024-01-15T10:30:00Z",
  "updatedAt": "2024-01-15T11:45:00Z",
  "workspaceId": "ws_123456789"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

Body

application/json
text
string
Minimum string length: 1
title
string
Maximum string length: 512
painLevel
enum<string>
Available options:
UNKNOWN,
LOW,
MEDIUM,
HIGH
projectId
string
notify
object
state
enum<string>
Available options:
NEW,
PROCESSED,
COMPLETED,
SNOOZED,
UNSNOOZED
contactId
string
companyId
string
tagIds
string[]

Response

Successful response

id
string
required
createdAt
string<date-time>
required
updatedAt
string<date-time>
required
isDeleted
boolean
required
showRecordCall
boolean
required
lastInboundMessageAt
string<date-time> | null
required
lastOutboundMessageAt
string<date-time> | null
required
lastStateChangeAt
string<date-time> | null
required
text
string
required
painLevel
enum<string>
required
Available options:
UNKNOWN,
LOW,
MEDIUM,
HIGH
state
enum<string>
required
Available options:
NEW,
PROCESSED,
COMPLETED,
SNOOZED,
UNSNOOZED
origin
enum<string>
required
Available options:
INAPP,
PORTAL,
SUPPORT_PORTAL,
API,
SLACK,
SLACK_CONNECT,
INTERCOM,
INTERCOM_ATTACHMENT,
ZENDESK_ATTACHMENT,
ZENDESK,
FRONT_ATTACHMENT,
EMAIL,
ZAPIER,
HUBSPOT,
PLAIN,
CALENDAR,
WIDGET,
AI_CHAT,
UPVOTE
title
string | null
required
snoozedUntil
string<date-time> | null
required
workspaceId
string
required
contactId
string | null
required
companyId
string | null
required
reporterId
string | null
required
assigneeId
string | null
required
attachments
array
required
recordingId
string | null
required
videoId
string | null
required
slackChannelId
string | null
required
linearAttachmentId
string | null
required
intercomId
string | null
required
frontId
string | null
required
zendeskId
string | null
required
hubspotId
string | null
required
plainId
string | null
required
productboardId
string | null
required
slackReplyId
string | null
required
uniqueId
string | null
required
tags
object[]
required