Side Conversation Attachment

File attachments can be included on a side conversation.

JSON format

Side Conversation Attachments are represented as JSON objects with the following properties:

Name Type Read-only Mandatory Description
content_type string true false The content type of the attachment
height integer true false The height of the attachment image
id string true false The id of the side conversation attachment
name string false false The name of the attachment
size integer true false The size of the attachment
width integer true false The width of the attachment image

Example

{  "content_type": "image/png",  "height": 214,  "id": "s3-d2a3111e-26d9-4e1c-88b4-cf7c0649d81d",  "name": "image.png",  "size": 50645,  "width": 406}

Create Side Conversation Attachments

  • POST /api/v2/tickets/side_conversations/attachments

Creates a new side conversation attachment.

Allowed For

  • Agents

Request Body

Takes a file object as multipart/form-data for the uploaded attachment.

Code Samples

curl
curl https://{subdomain}.zendesk.com/api/v2/tickets/side_conversations/attachments.json \  -F 'file=' \  -H "Content-Type: multipart/form-data" -v -u {email_address}:{password} -X POST
Go
import (	"fmt"	"io"	"net/http")
func main() {	url := "https://support.zendesk.com/api/v2/tickets/side_conversations/attachments"	method := "POST"	req, err := http.NewRequest(method, url, nil)
	if err != nil {		fmt.Println(err)		return	}	req.Header.Add("Content-Type", "application/json")	req.Header.Add("Authorization", "Basic <auth-value>") // Base64 encoded "username:password"
	client := &http.Client {}	res, err := client.Do(req)	if err != nil {		fmt.Println(err)		return	}	defer res.Body.Close()
	body, err := io.ReadAll(res.Body)	if err != nil {		fmt.Println(err)		return	}	fmt.Println(string(body))}
Java
import com.squareup.okhttp.*;OkHttpClient client = new OkHttpClient();HttpUrl.Builder urlBuilder = HttpUrl.parse("https://support.zendesk.com/api/v2/tickets/side_conversations/attachments")		.newBuilder();RequestBody body = RequestBody.create(MediaType.parse("application/json"),		"""""");
Request request = new Request.Builder()		.url(urlBuilder.build())		.method("POST", body)		.addHeader("Content-Type", "application/json")		.addHeader("Authorization", Credentials.basic("your-email", "your-password"))		.build();Response response = client.newCall(request).execute();
Nodejs
var axios = require('axios');
var config = {  method: 'POST',  url: 'https://support.zendesk.com/api/v2/tickets/side_conversations/attachments',  headers: {	'Content-Type': 'application/json',	'Authorization': 'Basic <auth-value>', // Base64 encoded "username:password"  },};
axios(config).then(function (response) {  console.log(JSON.stringify(response.data));}).catch(function (error) {  console.log(error);});
Python
import requests
url = "https://support.zendesk.com/api/v2/tickets/side_conversations/attachments"headers = {	"Content-Type": "application/json",}
response = requests.request(	"POST",	url,	auth=('<username>', '<password>'),	headers=headers)
print(response.text)
Ruby
require "net/http"uri = URI("https://support.zendesk.com/api/v2/tickets/side_conversations/attachments")request = Net::HTTP::Post.new(uri, "Content-Type": "application/json")request.basic_auth "username", "password"response = Net::HTTP.start uri.hostname, uri.port, use_ssl: true do |http|	http.request(request)end

Example response(s)

201 Created
// Status 201 Created
{  "content_type": "image/png",  "height": 214,  "id": "s3-d2a3111e-26d9-4e1c-88b4-cf7c0649d81d",  "name": "image.png",  "size": 50645,  "width": 406}