Updates a comment. This example updates comment (id=10019) for the issue with key = "SCRUM-15".
curl --request PUT --user jira@example.com:JIRA_API_TOKEN \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '
{
"body": "ABC Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper.",
"visibility": {
"type": "role",
"value": "Administrators"
}
}' \
--url 'https://your-domain.atlassian.net/rest/api/2/issue/SCRUM-15/comment/10019'
func chilkatTest() {
let rest = CkoRest()
var success: Bool
// URL: https://your-domain.atlassian.net/rest/api/2/issue/SCRUM-15/comment/10019
var bTls: Bool = true
var port: Int = 443
var bAutoReconnect: Bool = true
success = rest.Connect("your-domain.atlassian.net", port: port, tls: bTls, autoReconnect: bAutoReconnect)
if success != true {
print("ConnectFailReason: \(rest.ConnectFailReason.intValue)")
print("\(rest.LastErrorText)")
return
}
rest.SetAuthBasic("jira@example.com", password: "JIRA_API_TOKEN")
let json = CkoJsonObject()
json.UpdateString("body", value: "ABC Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper.")
json.UpdateString("visibility.type", value: "role")
json.UpdateString("visibility.value", value: "Administrators")
rest.AddHeader("Content-Type", value: "application/json")
rest.AddHeader("Accept", value: "application/json")
let sbRequestBody = CkoStringBuilder()
json.EmitSb(sbRequestBody)
let sbResponseBody = CkoStringBuilder()
success = rest.FullRequestSb("PUT", uriPath: "/rest/api/2/issue/SCRUM-15/comment/10019", requestBody: sbRequestBody, responseBody: sbResponseBody)
if success != true {
print("\(rest.LastErrorText)")
return
}
var respStatusCode: Int = rest.ResponseStatusCode.intValue
if respStatusCode >= 400 {
print("Response Status Code = \(respStatusCode)")
print("Response Header:")
print("\(rest.ResponseHeader)")
print("Response Body:")
print("\(sbResponseBody.GetAsString())")
return
}
let jsonResponse = CkoJsonObject()
jsonResponse.LoadSb(sbResponseBody)
var self: String?
var id: String?
var authorSelf: String?
var authorName: String?
var authorKey: String?
var authorAccountId: String?
var authorEmailAddress: String?
var authorAvatarUrls48x48: String?
var authorAvatarUrls24x24: String?
var authorAvatarUrls16x16: String?
var authorAvatarUrls32x32: String?
var authorDisplayName: String?
var authorActive: Bool
var authorTimeZone: String?
var body: String?
var updateAuthorSelf: String?
var updateAuthorName: String?
var updateAuthorKey: String?
var updateAuthorAccountId: String?
var updateAuthorEmailAddress: String?
var updateAuthorAvatarUrls48x48: String?
var updateAuthorAvatarUrls24x24: String?
var updateAuthorAvatarUrls16x16: String?
var updateAuthorAvatarUrls32x32: String?
var updateAuthorDisplayName: String?
var updateAuthorActive: Bool
var updateAuthorTimeZone: String?
var created: String?
var updated: String?
var visibilityType: String?
var visibilityValue: String?
self = jsonResponse.StringOf("self")
id = jsonResponse.StringOf("id")
authorSelf = jsonResponse.StringOf("author.self")
authorName = jsonResponse.StringOf("author.name")
authorKey = jsonResponse.StringOf("author.key")
authorAccountId = jsonResponse.StringOf("author.accountId")
authorEmailAddress = jsonResponse.StringOf("author.emailAddress")
authorAvatarUrls48x48 = jsonResponse.StringOf("author.avatarUrls.48x48")
authorAvatarUrls24x24 = jsonResponse.StringOf("author.avatarUrls.24x24")
authorAvatarUrls16x16 = jsonResponse.StringOf("author.avatarUrls.16x16")
authorAvatarUrls32x32 = jsonResponse.StringOf("author.avatarUrls.32x32")
authorDisplayName = jsonResponse.StringOf("author.displayName")
authorActive = jsonResponse.BoolOf("author.active")
authorTimeZone = jsonResponse.StringOf("author.timeZone")
body = jsonResponse.StringOf("body")
updateAuthorSelf = jsonResponse.StringOf("updateAuthor.self")
updateAuthorName = jsonResponse.StringOf("updateAuthor.name")
updateAuthorKey = jsonResponse.StringOf("updateAuthor.key")
updateAuthorAccountId = jsonResponse.StringOf("updateAuthor.accountId")
updateAuthorEmailAddress = jsonResponse.StringOf("updateAuthor.emailAddress")
updateAuthorAvatarUrls48x48 = jsonResponse.StringOf("updateAuthor.avatarUrls.48x48")
updateAuthorAvatarUrls24x24 = jsonResponse.StringOf("updateAuthor.avatarUrls.24x24")
updateAuthorAvatarUrls16x16 = jsonResponse.StringOf("updateAuthor.avatarUrls.16x16")
updateAuthorAvatarUrls32x32 = jsonResponse.StringOf("updateAuthor.avatarUrls.32x32")
updateAuthorDisplayName = jsonResponse.StringOf("updateAuthor.displayName")
updateAuthorActive = jsonResponse.BoolOf("updateAuthor.active")
updateAuthorTimeZone = jsonResponse.StringOf("updateAuthor.timeZone")
created = jsonResponse.StringOf("created")
updated = jsonResponse.StringOf("updated")
visibilityType = jsonResponse.StringOf("visibility.type")
visibilityValue = jsonResponse.StringOf("visibility.value")
}
{
"self": "https://chilkat.atlassian.net/rest/api/2/issue/10014/comment/10019",
"id": "10019",
"author": {
"self": "https://chilkat.atlassian.net/rest/api/2/user?username=admin",
"name": "admin",
"key": "admin",
"accountId": "557058:be8b47b5-3bc0-43f6-b6b2-2cca0de12204",
"emailAddress": "admin@chilkatsoft.com",
"avatarUrls": {
"48x48": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
"24x24": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
"16x16": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
"32x32": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
},
"displayName": "Chilkat Admin",
"active": true,
"timeZone": "America/Chicago"
},
"body": "ABC Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper.",
"updateAuthor": {
"self": "https://chilkat.atlassian.net/rest/api/2/user?username=admin",
"name": "admin",
"key": "admin",
"accountId": "557058:be8b47b5-3bc0-43f6-b6b2-2cca0de12204",
"emailAddress": "admin@chilkatsoft.com",
"avatarUrls": {
"48x48": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=48&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D48%26noRedirect%3Dtrue",
"24x24": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=24&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D24%26noRedirect%3Dtrue",
"16x16": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=16&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D16%26noRedirect%3Dtrue",
"32x32": "https://avatar-cdn.atlassian.com/16d54dcc6d4bef86fd7ee62a7cf6334a?s=32&d=https%3A%2F%2Fsecure.gravatar.com%2Favatar%2F16d54dcc6d4bef86fd7ee62a7cf6334a%3Fd%3Dmm%26s%3D32%26noRedirect%3Dtrue"
},
"displayName": "Chilkat Admin",
"active": true,
"timeZone": "America/Chicago"
},
"created": "2018-04-14T10:14:41.741-0500",
"updated": "2018-04-14T10:25:07.558-0500",
"visibility": {
"type": "role",
"value": "Administrators"
}
}