/* Pertinent Information and Codes: Custom Fields: Channel = customfield_10121 Campaign = customfield_10120 SDR = customfield_10122 Start Date = customfield_10015 Prior to making this publicly available, I added a commented list of users & their account numbers. Without accounts: Adan, Drew */ function myFunction() { var URL = "https://your_company.atlassian.net/rest/api/3/issue/"; var token = "api_toke_goes_here"; var user = "user@company.com"; var UserCredentials = Utilities.base64Encode(user + ":" + token); // Setting up data range and empty arrays const sheet = SpreadsheetApp.getActiveSheet(); var startRow = 2; // First col of data to process var numRows = 1132; // Number of rows to process var dataRange = sheet.getRange(startRow, 1, numRows, sheet.getLastColumn()).getValues(); for (col in dataRange) { // For a data col within the entire data range var col = dataRange[col]; let sdr = col[0]; // Column - A let name = col[1]; // Column - B let bookingDate = Utilities.formatDate(col[2], "America/New_York", "MM/dd/yyyy"); // Column - C let meetingDate = Utilities.formatDate(col[3], "America/New_York", "MM/dd/yyyy"); // Column - D let rawDate = Utilities.formatDate(col[3], "America/New_York", "yyyy-MM-dd"); let company = col[4]; // Column - E let channel = col[5]; // Column - F let result = col[7]; // Column - H let campaign = col[8]; // Column - I let info = col[9]; // Column - J let list = [sdr, name, rawDate, bookingDate, meetingDate, company, channel, result, campaign, info]; let sdrDict = { "Mike" : "account_num_goes_here", "Nick" : "account_num_goes_here", "Appleby" : "account_num_goes_here", "Doug" : "account_num_goes_here", "Quba" : "account_num_goes_here", }; if (list.includes("Norm")) { var data = { "fields": { "project": { "key": "NPIPE", }, "issuetype": { "id": "10275", }, "summary": list[5], "description": { "type": "doc", "version": 1, "content": [ { "type": "paragraph", "content": [ { "type": "text", "text": "Booked Date - " + list[3] + '\n' + "Meeting Date - " + list[4] + '\n' + "Description from Tracker: " + list[9] + '\n' + "Last Status - " + list[7] } ] } ], }, "customfield_10015": list[2], // Start (Meeting) Date - rawDate "customfield_10127": [ // Campaign list[8], ], "customfield_10128": [ // Channel list[6], ], "customfield_10129": [{"id" : sdrDict[list[0]]}], // SDR } }, payload = JSON.stringify(data); Logger.log(payload); var headers = { "Accept": "application/json", "Content-Type": "application/json", "Authorization": "Basic " + UserCredentials, "muteHttpExceptions": true, } var options = { "method": "POST", "headers": headers, "payload": payload } //Logger.log(options); var response = UrlFetchApp.fetch(URL, options); //Logger.log(response); var respCode = response.getResponseCode(); //Logger.log(respCode); } } };