Issues
Authorization: Bearer
The start time (RFC3339) of the time range to get issues for. The duration between start_time and end_time must be less than or equal to 30 days.
The end time (RFC3339) of the time range to get issues for. The duration between start_time and end_time must be less than or equal to 30 days.
The cursor to use for pagination.
The number of issues to fetch. Defaults to 20000. Set to 0 or omit to use the default. Must be between 0 and 20000.
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
GET /issues?start_time=text&end_time=text HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": [],
"request_id": "req_123"
}Authorization: Bearer
The account that this issue belongs to. If requester_id is also provided, the requester must belong to this account. If requester_email is provided, the contact is found or created in this account.
The user the issue should be assigned to.
URLs of files to attach to the issue's first message.
Whether the requester's identity has NOT been verified. Defaults to false (verified).
The HTML content of the body of the issue.
The contact to attribute the first message to. This controls the message author, not the issue requester. Makes the message appear as a customer message rather than an internal note. Only one of user_id or contact_id can be provided. Requires destination_metadata.
Timestamp of when the issue was created. If not specified, the current time will be used. (RFC3339)
Whether the issue should be visible in the customer portal. When destination is "customer_portal", this is set to true and cannot be false.
The priority of the issue. Can be one of: urgent, high, medium, or low.
mediumPossible values: The URL of an avatar of the requester.
The email of the customer this issue is for. Used when requester_id is omitted. If no matching contact exists, one will be created. When account_id is provided, the contact is found or created in that account. This does not control who authored the first message.
The customer this issue is for. Sets the "Requester" shown in the issue sidebar but does not control who authored the first message. If account_id is omitted, the requester's primary account is used when available. If requester_email is also provided, requester_id takes precedence.
The optional full name of the requester. Used when creating a new contact via requester_email.
An array of strings to use as tags on this issue. If provided, the issue tags will be updated to the given tags.
The ID of the team this issue should be assigned to.
The title of the issue.
The internal Pylon user to attribute the first message to. This does not assign the user as the requester. Only one of user_id or contact_id can be provided. If neither is set, the API token's user is used.
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
POST /issues HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 187
{
"body_html": "<p>I cannot access my account.</p>",
"contact_id": "contact_123",
"destination_metadata": {
"destination": "in_app_chat"
},
"requester_id": "contact_123",
"title": "Unable to sign in"
}{
"data": {
"id": "issue_123",
"state": "new",
"title": "Unable to sign in",
"type": "conversation"
},
"request_id": "req_123"
}Authorization: Bearer
The ID or number of the issue to fetch.
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
GET /issues/{id} HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": {
"id": "issue_123",
"state": "new",
"title": "Unable to sign in",
"type": "conversation"
},
"request_id": "req_123"
}Authorization: Bearer
The ID of the issue to update.
The ID of the account that this issue belongs to.
The ID of the user who should be assigned to this issue. If empty string is passed in, the issue assignee will be removed.
Whether the issue should be visible in the customer portal.
The ID of the requester that this issue is on behalf of.
Deprecated: Use requester_id instead.
The state this issue should be moved to. Standard values are new, waiting_on_you, waiting_on_customer, on_hold, and closed; custom status slugs are also supported.
newAn array of strings to use as tags on this issue. If provided, the issue tags will be updated to be exactly the given tags.
The ID of the team this issue should be assigned to. If empty string is passed in, any assigned team will be removed.
The title of the issue.
The type of the issue. Set to "ticket" to upgrade a conversation to a support ticket. Cannot be downgraded from "ticket" to "conversation".
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
PATCH /issues/{id} HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 268
{
"account_id": "text",
"assignee_id": "text",
"custom_fields": [
{
"slug": "text",
"value": "text",
"values": [
"text"
]
}
],
"customer_portal_visible": true,
"requester_id": "text",
"requestor_id": "text",
"state": "new",
"tags": [
"text"
],
"team_id": "text",
"title": "text",
"type": "conversation"
}{
"data": {
"id": "issue_123",
"state": "waiting_on_you",
"title": "Unable to sign in",
"type": "conversation"
},
"request_id": "req_123"
}Authorization: Bearer
The ID of the issue to delete.
The request ID for tracking.
DELETE /issues/{id} HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"request_id": "text"
}Authorization: Bearer
The cursor to use for pagination.
The number of issues to fetch. Defaults to 100. Must be greater than 0 and less than 1000.
Fuzzy text search. Results are intersected with any provided filter.
The request was invalid or could not be completed.
An unexpected internal error occurred.
POST /issues/search HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 62
{
"filter": {
"field": "state",
"operator": "equals",
"value": "new"
}
}{
"data": [],
"request_id": "req_123"
}Authorization: Bearer
The ID or number of the issue to snooze.
The date and time to snooze the issue until. (RFC3339)
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
POST /issues/{id}/snooze HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 23
{
"snooze_until": "text"
}{
"data": {
"id": "issue_123",
"state": "on_hold",
"title": "Unable to sign in",
"type": "conversation"
},
"request_id": "req_123"
}Authorization: Bearer
The ID or number of the issue to get followers for.
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
GET /issues/{id}/followers HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
{
"data": [
{
"id": "text",
"type": "user"
}
],
"request_id": "text"
}Authorization: Bearer
The ID or number of the issue to add followers to.
The IDs of contacts to add as followers.
Operation to perform. Use "add" to add followers (default) or "remove" to remove followers.
The IDs of users to add as followers.
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
POST /issues/{id}/followers HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 63
{
"contact_ids": [
"text"
],
"operation": "text",
"user_ids": [
"text"
]
}{
"data": [
{
"id": "text",
"type": "user"
}
],
"request_id": "text"
}Authorization: Bearer
The ID or number of the issue to link external issues to.
The ID of the external issue in the source system.
Operation to perform. Use "link" to link issues (default) or "unlink" to unlink issues.
The source system of the external issue (e.g., "linear", "asana", "jira", "github", "shortcut").
The request ID for tracking.
The request was invalid or could not be completed.
An unexpected internal error occurred.
POST /issues/{id}/external-issues HTTP/1.1
Host: api.usepylon.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 63
{
"external_issue_id": "text",
"operation": "text",
"source": "text"
}{
"data": {
"account": {
"external_ids": [
{
"external_id": "text",
"label": "text"
}
],
"id": "text"
},
"active_time_by_user": [
{
"active_time_seconds": 1,
"business_hours_active_time_seconds": 1,
"user_id": "text"
}
],
"active_time_seconds": 1,
"assignee": {
"email": "text",
"id": "text"
},
"attachment_urls": [
"text"
],
"author_unverified": true,
"body_html": "text",
"business_hours_active_time_seconds": 1,
"business_hours_first_response_seconds": 1,
"business_hours_resolution_seconds": 1,
"business_hours_time_in_status_seconds": {
"new": 120,
"waiting_on_customer": 1800
},
"chat_widget_info": {
"page_url": "text"
},
"child_issues": [
{
"id": "text",
"number": 1
}
],
"created_at": "text",
"csat_responses": [
{
"comment": "text",
"score": 1
}
],
"custom_fields": {
"priority": {
"value": "high"
}
},
"customer_portal_visible": true,
"external_issues": [
{
"external_id": "text",
"link": "text",
"source": "text"
}
],
"first_response_breach_time": "text",
"first_response_seconds": 1,
"first_response_time": "text",
"id": "text",
"latest_message_time": "text",
"link": "text",
"number": 1,
"number_of_touches": 1,
"parent_issue_group": {
"id": "text",
"number": 1
},
"requester": {
"email": "text",
"id": "text"
},
"resolution_breach_time": "text",
"resolution_seconds": 1,
"resolution_time": "text",
"slack": {
"channel_id": "text",
"message_ts": "text",
"workspace_id": "text"
},
"snoozed_until_time": "text",
"source": "slack",
"state": "new",
"tags": [
"text"
],
"team": {
"id": "text"
},
"team_slas": [
{
"first_response": {
"breach_time": "text",
"business_hours_seconds": 1,
"seconds": 1,
"time": "text"
},
"resolution": {
"breach_time": "text",
"business_hours_seconds": 1,
"seconds": 1,
"time": "text"
},
"team_id": "text"
}
],
"time_in_status_seconds": {
"new": 120,
"waiting_on_customer": 3600
},
"title": "text",
"type": "conversation",
"updated_at": "text"
},
"request_id": "text"
}
Last updated
Was this helpful?

