Connector API

The Synqly Connector APIs provide a unifying interface and data model for all supported service Providers.

See the Synqly Overview for more information.

Download OpenAPI description
Languages
Servers
Synqly
https://api.synqly.com/

Assets

Operations

Edr

Operations

Hooks

Operations

Identity

Operations

Notifications

Operations

Operations

Operations

Siem

Operations

Sink

Operations

Storage

Operations

Ticketing

Operations

List Remote Fields

Request

List all remote fields for all Projects in a ticketing integration. The response will include a list of fields for each issue type in the ticketing provider.

curl -i -X GET \
  https://api.synqly.com/v1/ticketing/remote-fields \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(RemoteField)required
result[].​field_idstringrequired

Remote ID of the field.

result[].​field_scopestring(RemoteFieldScope)required
Enum"standard""integration_custom""project_custom""ticket_custom""unknown"
result[].​provider_field_namestringrequired

Name of field in the remote ticketing provider.

result[].​schemaobject(RemoteFieldSchema)
result[].​provider_field_pathstring or null

Path to the field in the remote ticketing provider. Uses dot notation for nested fields.

result[].​project_idstring or null

Project id to which this field is scoped to

cursorstringrequired

Cursor to use to retrieve the next page of results

metaobject(MetaResponse)
Response
application/json
{ "result": [ {} ], "cursor": "string", "meta": { "stats": {}, "api": {} } }

List Projects

Request

Returns a list of Projects from the token-linked Integration. Tickets must be created and retrieved within the context of a specific Project.

Query
cursorstring or null

Cursor to use to retrieve the next page of results.

limitinteger or null

Number of Projects objects to return in this page. Defaults to 50.

curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/projects?cursor=string&limit=0' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(Project)required
result[].​idstringrequired

Unique identifier for this project. Use this id in the project field of a Ticket.

result[].​namestringrequired

Name of the project

result[].​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

cursorstringrequired

Cursor to use to retrieve the next page of results

metaobject(MetaResponse)
Response
application/json
{ "result": [ {} ], "cursor": "string", "meta": { "stats": {}, "api": {} } }

Query Tickets

Request

Returns a list of Ticket objects from the token-linked Integration.

Query
metaArray of strings or null

Add metadata to the response by invoking meta functions. Documentation for meta functions is available at https://docs.synqly.com/api-reference/meta-functions. Not all meta function are available at every endpoint.

cursorstring or null

Cursor to use to retrieve the next page of results.

limitinteger or null

Number of Account objects to return in this page. Defaults to 100.

orderArray of strings or null

Select a field to order the results by. Defaults to time. To control the direction of the sorting, append [asc] or [desc] to the field name. For example, name[desc] will sort the results by name in descending order. The ordering defaults to asc if not specified. May be used multiple times to order by multiple fields, and the ordering is applied in the order the fields are specified.

filterArray of strings or null

Filter results by this query. For more information on filtering, refer to our Filtering Guide. Defaults to no filter. If used more than once, the queries are ANDed together.

curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/tickets?cursor=string&filter=string&limit=0&meta=string&order=string' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(Ticket)required

list of results

result[].​idstring(Id)required
result[].​summarystringrequired

Ticket summary.

result[].​namestringrequired

Human-readable name for this resource

result[].​created_atstring(date-time)required

Time object was originally created

result[].​updated_atstring(date-time)required

Last time object was updated

result[].​creatorstring or null

User who created this ticket.

result[].​assigneestring or null

Who ticket is assigned to.

result[].​contactstring or null

Ticket contact information.

result[].​descriptionstring or null

Ticket description.

result[].​prioritystring(Priority)
Enum"URGENT""HIGH""MEDIUM""LOW"
result[].​due_datestring or null(date-time)

The ticket's due date.

result[].​completion_datestring or null(date-time)

The ticket's complete date.

result[].​statusstring(Status)
result[].​projectstring(Id)
result[].​issue_typestring(IssueTypeId)

Unique identifier for an issue type

result[].​tagsArray of strings or null

Associate tags with Ticket

result[].​attachmentsArray of objects or null(AttachmentMetadata)

Metadata of attachments associated with the ticket

result[].​custom_fieldsobject or null

Custom fields for this ticket, keys are the custom field names.

result[].​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

cursorstringrequired

Cursor to use to retrieve the next page of results

metaobject(MetaResponse)
Response
application/json
{ "result": [ {} ], "cursor": "string", "meta": { "stats": {}, "api": {} } }

Create Ticket

Request

Creates a Ticket object in the token-linked Integration.

Bodyapplication/jsonrequired
summarystringrequired

Ticket summary.

namestringrequired

Human-readable name for this resource

creatorstring or null

User who created this ticket.

assigneestring or null

Who ticket is assigned to.

contactstring or null

Ticket contact information.

descriptionstring or null

Ticket description.

prioritystring(Priority)
Enum"URGENT""HIGH""MEDIUM""LOW"
due_datestring or null(date-time)

The ticket's due date.

completion_datestring or null(date-time)

The ticket's complete date.

statusstring(Status)
projectstring or null

The ticket project.

issue_typestring or null

The ticket's type.

tagsArray of strings or null

Associate tags with Ticket

custom_fieldsobject or null

Set custom fields for this ticket, keys are the custom field names.

curl -i -X POST \
  https://api.synqly.com/v1/ticketing/tickets \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "summary": "string",
    "creator": "string",
    "assignee": "string",
    "contact": "string",
    "description": "string",
    "priority": "URGENT",
    "due_date": "2019-08-24T14:15:22Z",
    "completion_date": "2019-08-24T14:15:22Z",
    "status": "string",
    "project": "string",
    "issue_type": "string",
    "tags": [
      "string"
    ],
    "custom_fields": {},
    "name": "string"
  }'

Responses

Bodyapplication/json
resultobject(Ticket)required

Ticketing ticket

result.​idstring(Id)required
result.​summarystringrequired

Ticket summary.

result.​namestringrequired

Human-readable name for this resource

result.​created_atstring(date-time)required

Time object was originally created

result.​updated_atstring(date-time)required

Last time object was updated

result.​creatorstring or null

User who created this ticket.

result.​assigneestring or null

Who ticket is assigned to.

result.​contactstring or null

Ticket contact information.

result.​descriptionstring or null

Ticket description.

result.​prioritystring(Priority)
Enum"URGENT""HIGH""MEDIUM""LOW"
result.​due_datestring or null(date-time)

The ticket's due date.

result.​completion_datestring or null(date-time)

The ticket's complete date.

result.​statusstring(Status)
result.​projectstring(Id)
result.​issue_typestring(IssueTypeId)

Unique identifier for an issue type

result.​tagsArray of strings or null

Associate tags with Ticket

result.​attachmentsArray of objects or null(AttachmentMetadata)

Metadata of attachments associated with the ticket

result.​custom_fieldsobject or null

Custom fields for this ticket, keys are the custom field names.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

metaobject(MetaResponse)
Response
application/json
{ "result": { "id": "string", "summary": "string", "creator": "string", "assignee": "string", "contact": "string", "description": "string", "priority": "URGENT", "due_date": "2019-08-24T14:15:22Z", "completion_date": "2019-08-24T14:15:22Z", "status": "string", "project": "string", "issue_type": "string", "tags": [], "attachments": [], "custom_fields": {}, "unmapped": {}, "name": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }, "meta": { "stats": {}, "api": {} } }

Get Ticket

Request

Returns a Ticket object matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultobject(Ticket)required

Ticketing ticket

result.​idstring(Id)required
result.​summarystringrequired

Ticket summary.

result.​namestringrequired

Human-readable name for this resource

result.​created_atstring(date-time)required

Time object was originally created

result.​updated_atstring(date-time)required

Last time object was updated

result.​creatorstring or null

User who created this ticket.

result.​assigneestring or null

Who ticket is assigned to.

result.​contactstring or null

Ticket contact information.

result.​descriptionstring or null

Ticket description.

result.​prioritystring(Priority)
Enum"URGENT""HIGH""MEDIUM""LOW"
result.​due_datestring or null(date-time)

The ticket's due date.

result.​completion_datestring or null(date-time)

The ticket's complete date.

result.​statusstring(Status)
result.​projectstring(Id)
result.​issue_typestring(IssueTypeId)

Unique identifier for an issue type

result.​tagsArray of strings or null

Associate tags with Ticket

result.​attachmentsArray of objects or null(AttachmentMetadata)

Metadata of attachments associated with the ticket

result.​custom_fieldsobject or null

Custom fields for this ticket, keys are the custom field names.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

metaobject(MetaResponse)
Response
application/json
{ "result": { "id": "string", "summary": "string", "creator": "string", "assignee": "string", "contact": "string", "description": "string", "priority": "URGENT", "due_date": "2019-08-24T14:15:22Z", "completion_date": "2019-08-24T14:15:22Z", "status": "string", "project": "string", "issue_type": "string", "tags": [], "attachments": [], "custom_fields": {}, "unmapped": {}, "name": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }, "meta": { "stats": {}, "api": {} } }

Patch Ticket

Request

Updates the Ticket object matching {ticketId} in the token-linked Integration.

Path
ticketIdstring(Id)required
Bodyapplication/jsonrequiredArray [
opstring(PatchOp)required
Enum"add""copy""move""remove""replace""test"
pathstringrequired

The path to the field to update. The path is a JSON Pointer.

fromstring or null

The path to the field to copy from. This is required for copy and move operations.

valueany or null

The value to set the field to. This is required for add, replace and test operations.

]
curl -i -X PATCH \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "op": "add",
      "path": "string",
      "from": "string",
      "value": null
    }
  ]'

Responses

Bodyapplication/json
resultobject(Ticket)required

Ticketing ticket

result.​idstring(Id)required
result.​summarystringrequired

Ticket summary.

result.​namestringrequired

Human-readable name for this resource

result.​created_atstring(date-time)required

Time object was originally created

result.​updated_atstring(date-time)required

Last time object was updated

result.​creatorstring or null

User who created this ticket.

result.​assigneestring or null

Who ticket is assigned to.

result.​contactstring or null

Ticket contact information.

result.​descriptionstring or null

Ticket description.

result.​prioritystring(Priority)
Enum"URGENT""HIGH""MEDIUM""LOW"
result.​due_datestring or null(date-time)

The ticket's due date.

result.​completion_datestring or null(date-time)

The ticket's complete date.

result.​statusstring(Status)
result.​projectstring(Id)
result.​issue_typestring(IssueTypeId)

Unique identifier for an issue type

result.​tagsArray of strings or null

Associate tags with Ticket

result.​attachmentsArray of objects or null(AttachmentMetadata)

Metadata of attachments associated with the ticket

result.​custom_fieldsobject or null

Custom fields for this ticket, keys are the custom field names.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

metaobject(MetaResponse)
Response
application/json
{ "result": { "id": "string", "summary": "string", "creator": "string", "assignee": "string", "contact": "string", "description": "string", "priority": "URGENT", "due_date": "2019-08-24T14:15:22Z", "completion_date": "2019-08-24T14:15:22Z", "status": "string", "project": "string", "issue_type": "string", "tags": [], "attachments": [], "custom_fields": {}, "unmapped": {}, "name": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z" }, "meta": { "stats": {}, "api": {} } }

Create Attachment

Request

[beta: currently supported by Jira] Creates an Attachment for the ticket with id {ticketId} in the token-linked Integration.

Path
ticketIdstring(Id)required
Bodyapplication/jsonrequired
file_namestringrequired

The name of the file.

contentstring(byte)required

File contents

curl -i -X POST \
  'https://api.synqly.com/v1/ticketing/attachments/{ticketId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "file_name": "string",
    "content": "string"
  }'

Responses

Bodyapplication/json
resultobject(AttachmentMetadata)required

Attachment in a ticketing system

result.​idstring(Id)required
result.​ticket_idstring(Id)required
result.​file_namestringrequired

The name of the file.

result.​file_typestringrequired

The type of the file.

result.​created_datestring(date-time)required

The date the attachment was created.

result.​creatorstringrequired

The user who created the attachment.

result.​file_sizeinteger or null

The size of the file in bytes.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

metaobject(MetaResponse)
Response
application/json
{ "result": { "id": "string", "ticket_id": "string", "file_name": "string", "file_type": "string", "file_size": 0, "created_date": "2019-08-24T14:15:22Z", "creator": "string", "unmapped": {} }, "meta": { "stats": {}, "api": {} } }

List Attachments Metadata

Request

[beta: currently supported by Jira] Returns metadata for all Attachments for a Ticket object matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/attachments/{ticketId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(AttachmentMetadata)required
result[].​idstring(Id)required
result[].​ticket_idstring(Id)required
result[].​file_namestringrequired

The name of the file.

result[].​file_typestringrequired

The type of the file.

result[].​created_datestring(date-time)required

The date the attachment was created.

result[].​creatorstringrequired

The user who created the attachment.

result[].​file_sizeinteger or null

The size of the file in bytes.

result[].​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

cursorstringrequired

Cursor to use to retrieve the next page of results

metaobject(MetaResponse)
Response
application/json
{ "result": [ {} ], "cursor": "string", "meta": { "stats": {}, "api": {} } }

Download Attachment

Request

[beta: currently supported by Jira] Downloads the Attachment object matching {attachmentId} for the Ticket matching {tickedId} from the token-linked Integration.

Path
ticketIdstring(Id)required
attachmentIdstring(Id)required
curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/attachments/{ticketId}/{attachmentId}/download' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultobject(Attachment)required
result.​file_namestringrequired

The name of the file.

result.​file_typestringrequired

The type of the file.

result.​contentstring(byte)required

File contents

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

metaobject(MetaResponse)
Response
application/json
{ "result": { "file_name": "string", "file_type": "string", "content": "string", "unmapped": {} }, "meta": { "stats": {}, "api": {} } }

Delete Attachment

Request

[beta: currently supported by Jira] Deletes the Attachment object matching {attachmentId} for the Ticket matching {tickedId} from the token-linked Integration.

Path
ticketIdstring(Id)required
attachmentIdstring(Id)required
curl -i -X DELETE \
  'https://api.synqly.com/v1/ticketing/attachments/{ticketId}/{attachmentId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Response
No content

List Comments

Request

Lists all comments for the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/comments' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(Comment)required
result[].​idstring(Id)required
result[].​ticket_idstring(Id)required
result[].​creatorstringrequired

The user who created the comment.

result[].​contentstringrequired

The content of the comment formatted as markdown.

result[].​created_atstring(date-time)required

The date the comment was created.

result[].​updated_atstring or null(date-time)

The date the comment was last updated.

result[].​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

cursorstringrequired

Cursor to use to retrieve the next page of results

metaobject(MetaResponse)
Response
application/json
{ "result": [ {} ], "cursor": "string", "meta": { "stats": {}, "api": {} } }

Create Comment

Request

Creates a comment on the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
Bodyapplication/jsonrequired
contentstringrequired

The content of the comment.

creatorstring or null

Email address of user who created this ticket. Required by PagerDuty. Not supported by Jira, ServiceNow, or Torq.

curl -i -X POST \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/comments' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "creator": "string",
    "content": "string"
  }'

Responses

Bodyapplication/json
resultobject(Comment)required

Comment on a ticket.

result.​idstring(Id)required
result.​ticket_idstring(Id)required
result.​creatorstringrequired

The user who created the comment.

result.​contentstringrequired

The content of the comment formatted as markdown.

result.​created_atstring(date-time)required

The date the comment was created.

result.​updated_atstring or null(date-time)

The date the comment was last updated.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

metaobject(MetaResponse)
Response
application/json
{ "result": { "id": "string", "ticket_id": "string", "creator": "string", "content": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "unmapped": {} }, "meta": { "stats": {}, "api": {} } }

Delete Comment

Request

Deletes the comment matching {commentId} form the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
commentIdstring(Id)required
curl -i -X DELETE \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/comments/{commentId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Response
No content

Create Note

Request

Creates a note on the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
Bodyapplication/jsonrequired
contentstringrequired

The content of the note formatted as markdown.

titlestringrequired

The title of the note.

curl -i -X POST \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/notes' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "content": "string",
    "title": "string"
  }'

Responses

Bodyapplication/json
resultobject(Note)required

Note on a ticket

result.​idstring(Id)required
result.​ticket_idstring(Id)required
result.​contentstringrequired

The content of the note formatted as markdown.

result.​creatorstringrequired

The user who created the note.

result.​titlestringrequired

The title of the note.

result.​created_atstring(date-time)required

The date the comment was created.

result.​updated_atstring or null(date-time)

The date the comment was last updated.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

Response
application/json
{ "result": { "id": "string", "ticket_id": "string", "content": "string", "creator": "string", "title": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "unmapped": {} } }

List Notes

Request

Lists all notes for the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
curl -i -X GET \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/notes' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
resultArray of objects(Note)required
result[].​idstring(Id)required
result[].​ticket_idstring(Id)required
result[].​contentstringrequired

The content of the note formatted as markdown.

result[].​creatorstringrequired

The user who created the note.

result[].​titlestringrequired

The title of the note.

result[].​created_atstring(date-time)required

The date the comment was created.

result[].​updated_atstring or null(date-time)

The date the comment was last updated.

result[].​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

Response
application/json
{ "result": [ {} ] }

Delete Note

Request

Deletes the note matching {noteId} form the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
noteIdstring(Id)required
curl -i -X DELETE \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/notes/{noteId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Response
No content

Patch Note

Request

Update a note matching {noteId} title and/or content on the ticket matching {ticketId} from the token-linked Integration.

Path
ticketIdstring(Id)required
noteIdstring(Id)required
Bodyapplication/jsonrequiredArray [
opstring(PatchOp)required
Enum"add""copy""move""remove""replace""test"
pathstringrequired

The path to the field to update. The path is a JSON Pointer.

fromstring or null

The path to the field to copy from. This is required for copy and move operations.

valueany or null

The value to set the field to. This is required for add, replace and test operations.

]
curl -i -X PATCH \
  'https://api.synqly.com/v1/ticketing/tickets/{ticketId}/notes/{noteId}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "op": "add",
      "path": "string",
      "from": "string",
      "value": null
    }
  ]'

Responses

Bodyapplication/json
resultobject(Note)required

Note on a ticket

result.​idstring(Id)required
result.​ticket_idstring(Id)required
result.​contentstringrequired

The content of the note formatted as markdown.

result.​creatorstringrequired

The user who created the note.

result.​titlestringrequired

The title of the note.

result.​created_atstring(date-time)required

The date the comment was created.

result.​updated_atstring or null(date-time)

The date the comment was last updated.

result.​unmappedobject(Object)

The Object type is used to represent an object with arbitrary fields. The keys are strings and the values are any type.

Response
application/json
{ "result": { "id": "string", "ticket_id": "string", "content": "string", "creator": "string", "title": "string", "created_at": "2019-08-24T14:15:22Z", "updated_at": "2019-08-24T14:15:22Z", "unmapped": {} } }

Vulnerabilities

Operations