Jira Software Cloud ๐ Issues๐ฏ WatcherThis resource represents users watching an issue. Use it to get details of users watching an issue as well as start and stop a user watching an issue.
Get issue watchers
GET /rest/api/{2-3}/issue/{issueIdOrKey}/watchers
Returns the watchers for an issue.
Copy package main
import (
"context"
"github.com/ctreminiom/go-atlassian/jira/v2"
"log"
"os"
)
func main () {
/*
----------- Set an environment variable in git bash -----------
export HOST="https://ctreminiom.atlassian.net/"
export MAIL="MAIL_ADDRESS"
export TOKEN="TOKEN_API"
Docs: https://stackoverflow.com/questions/34169721/set-an-environment-variable-in-git-bash
*/
var (
host = os. Getenv ( "HOST" )
mail = os. Getenv ( "MAIL" )
token = os. Getenv ( "TOKEN" )
)
atlassian, err := v2. New ( nil , host)
if err != nil {
log. Fatal (err)
}
atlassian.Auth. SetBasicAuth (mail, token)
watchers, response, err := atlassian.Issue.Watchers. Gets (context. Background (), "KP-2" )
if err != nil {
log. Fatal (err)
}
log. Println ( "HTTP Endpoint Used" , response.Endpoint)
log. Println (watchers.IsWatching, watchers.WatchCount)
for _, watcher := range watchers.Watchers {
log. Println (watcher.Self, watcher.AccountID)
}
}
Add watcher
POST /rest/api/{2-3}/issue/{issueIdOrKey}/watchers
Adds a user as a watcher of an issue by passing the account ID of the user. For example, "5b10ac8d82e05b22cc7d4ef5"
. If no user is specified the calling user is added.
Copy package main
import (
"context"
"github.com/ctreminiom/go-atlassian/jira/v2"
"log"
"os"
)
func main () {
/*
----------- Set an environment variable in git bash -----------
export HOST="https://ctreminiom.atlassian.net/"
export MAIL="MAIL_ADDRESS"
export TOKEN="TOKEN_API"
Docs: https://stackoverflow.com/questions/34169721/set-an-environment-variable-in-git-bash
*/
var (
host = os. Getenv ( "HOST" )
mail = os. Getenv ( "MAIL" )
token = os. Getenv ( "TOKEN" )
)
atlassian, err := v2. New ( nil , host)
if err != nil {
log. Fatal (err)
}
atlassian.Auth. SetBasicAuth (mail, token)
response, err := atlassian.Issue.Watchers. Add (context. Background (), "KP-2" )
if err != nil {
log. Fatal (err)
}
log. Println ( "HTTP Endpoint Used" , response.Endpoint)
}
Delete watcher
DELETE /rest/api/{2-3}/issue/{issueIdOrKey}/watchers
Deletes a user as a watcher of an issue.
Copy package main
import (
"context"
"github.com/ctreminiom/go-atlassian/jira/v2"
"log"
"os"
)
func main () {
/*
----------- Set an environment variable in git bash -----------
export HOST="https://ctreminiom.atlassian.net/"
export MAIL="MAIL_ADDRESS"
export TOKEN="TOKEN_API"
Docs: https://stackoverflow.com/questions/34169721/set-an-environment-variable-in-git-bash
*/
var (
host = os. Getenv ( "HOST" )
mail = os. Getenv ( "MAIL" )
token = os. Getenv ( "TOKEN" )
)
atlassian, err := v2. New ( nil , host)
if err != nil {
log. Fatal (err)
}
atlassian.Auth. SetBasicAuth (mail, token)
response, err := atlassian.Issue.Watchers. Delete (context. Background (), "KP-2" , "5b86be50b8e3cb5895860d6d" )
if err != nil {
log. Fatal (err)
}
log. Println ( "HTTP Endpoint Used" , response.Endpoint)
}
Get is watching issue bulk
POST /rest/api/{2-3}/issue/watching
Not implemented, yet. Feel free to open a PR or issue