PageRenderTime 27ms CodeModel.GetById 19ms RepoModel.GetById 0ms app.codeStats 0ms

/doc/api/services.md

https://gitlab.com/effigies/gitlab-ce
Markdown | 664 lines | 411 code | 253 blank | 0 comment | 0 complexity | 582670a3b170d6a843f4aadd6bdd011e MD5 | raw file
  1. # Services
  2. ## Asana
  3. Asana - Teamwork without email
  4. ### Create/Edit Asana service
  5. Set Asana service for a project.
  6. > This service adds commit messages as comments to Asana tasks. Once enabled, commit messages are checked for Asana task URLs (for example, `https://app.asana.com/0/123456/987654`) or task IDs starting with # (for example, `#987654`). Every task ID found will get the commit comment added to it. You can also close a task with a message containing: `fix #123456`. You can find your Api Keys here: https://asana.com/developers/documentation/getting-started/auth#api-key
  7. ```
  8. PUT /projects/:id/services/asana
  9. ```
  10. Parameters:
  11. - `api_key` (**required**) - User API token. User must have access to task, all comments will be attributed to this user.
  12. - `restrict_to_branch` (optional) - Comma-separated list of branches which will be automatically inspected. Leave blank to include all branches.
  13. ### Delete Asana service
  14. Delete Asana service for a project.
  15. ```
  16. DELETE /projects/:id/services/asana
  17. ```
  18. ### Get Asana service settings
  19. Get Asana service settings for a project.
  20. ```
  21. GET /projects/:id/services/asana
  22. ```
  23. ## Assembla
  24. Project Management Software (Source Commits Endpoint)
  25. ### Create/Edit Assembla service
  26. Set Assembla service for a project.
  27. ```
  28. PUT /projects/:id/services/assembla
  29. ```
  30. Parameters:
  31. - `token` (**required**)
  32. - `subdomain` (optional)
  33. ### Delete Assembla service
  34. Delete Assembla service for a project.
  35. ```
  36. DELETE /projects/:id/services/assembla
  37. ```
  38. ### Get Assembla service settings
  39. Get Assembla service settings for a project.
  40. ```
  41. GET /projects/:id/services/assembla
  42. ```
  43. ## Atlassian Bamboo CI
  44. A continuous integration and build server
  45. ### Create/Edit Atlassian Bamboo CI service
  46. Set Atlassian Bamboo CI service for a project.
  47. > You must set up automatic revision labeling and a repository trigger in Bamboo.
  48. ```
  49. PUT /projects/:id/services/bamboo
  50. ```
  51. Parameters:
  52. - `bamboo_url` (**required**) - Bamboo root URL like https://bamboo.example.com
  53. - `build_key` (**required**) - Bamboo build plan key like KEY
  54. - `username` (**required**) - A user with API access, if applicable
  55. - `password` (**required**)
  56. ### Delete Atlassian Bamboo CI service
  57. Delete Atlassian Bamboo CI service for a project.
  58. ```
  59. DELETE /projects/:id/services/bamboo
  60. ```
  61. ### Get Atlassian Bamboo CI service settings
  62. Get Atlassian Bamboo CI service settings for a project.
  63. ```
  64. GET /projects/:id/services/bamboo
  65. ```
  66. ## Buildkite
  67. Continuous integration and deployments
  68. ### Create/Edit Buildkite service
  69. Set Buildkite service for a project.
  70. ```
  71. PUT /projects/:id/services/buildkite
  72. ```
  73. Parameters:
  74. - `token` (**required**) - Buildkite project GitLab token
  75. - `project_url` (**required**) - https://buildkite.com/example/project
  76. - `enable_ssl_verification` (optional) - Enable SSL verification
  77. ### Delete Buildkite service
  78. Delete Buildkite service for a project.
  79. ```
  80. DELETE /projects/:id/services/buildkite
  81. ```
  82. ### Get Buildkite service settings
  83. Get Buildkite service settings for a project.
  84. ```
  85. GET /projects/:id/services/buildkite
  86. ```
  87. ## Campfire
  88. Simple web-based real-time group chat
  89. ### Create/Edit Campfire service
  90. Set Campfire service for a project.
  91. ```
  92. PUT /projects/:id/services/campfire
  93. ```
  94. Parameters:
  95. - `token` (**required**)
  96. - `subdomain` (optional)
  97. - `room` (optional)
  98. ### Delete Campfire service
  99. Delete Campfire service for a project.
  100. ```
  101. DELETE /projects/:id/services/campfire
  102. ```
  103. ### Get Campfire service settings
  104. Get Campfire service settings for a project.
  105. ```
  106. GET /projects/:id/services/campfire
  107. ```
  108. ## Custom Issue Tracker
  109. Custom issue tracker
  110. ### Create/Edit Custom Issue Tracker service
  111. Set Custom Issue Tracker service for a project.
  112. ```
  113. PUT /projects/:id/services/custom-issue-tracker
  114. ```
  115. Parameters:
  116. - `new_issue_url` (**required**) - New Issue url
  117. - `issues_url` (**required**) - Issue url
  118. - `project_url` (**required**) - Project url
  119. - `description` (optional) - Custom issue tracker
  120. - `title` (optional) - Custom Issue Tracker
  121. ### Delete Custom Issue Tracker service
  122. Delete Custom Issue Tracker service for a project.
  123. ```
  124. DELETE /projects/:id/services/custom-issue-tracker
  125. ```
  126. ### Get Custom Issue Tracker service settings
  127. Get Custom Issue Tracker service settings for a project.
  128. ```
  129. GET /projects/:id/services/custom-issue-tracker
  130. ```
  131. ## Drone CI
  132. Drone is a Continuous Integration platform built on Docker, written in Go
  133. ### Create/Edit Drone CI service
  134. Set Drone CI service for a project.
  135. ```
  136. PUT /projects/:id/services/drone-ci
  137. ```
  138. Parameters:
  139. - `token` (**required**) - Drone CI project specific token
  140. - `drone_url` (**required**) - http://drone.example.com
  141. - `enable_ssl_verification` (optional) - Enable SSL verification
  142. ### Delete Drone CI service
  143. Delete Drone CI service for a project.
  144. ```
  145. DELETE /projects/:id/services/drone-ci
  146. ```
  147. ### Get Drone CI service settings
  148. Get Drone CI service settings for a project.
  149. ```
  150. GET /projects/:id/services/drone-ci
  151. ```
  152. ## Emails on push
  153. Email the commits and diff of each push to a list of recipients.
  154. ### Create/Edit Emails on push service
  155. Set Emails on push service for a project.
  156. ```
  157. PUT /projects/:id/services/emails-on-push
  158. ```
  159. Parameters:
  160. - `recipients` (**required**) - Emails separated by whitespace
  161. - `disable_diffs` (optional) - Disable code diffs
  162. - `send_from_committer_email` (optional) - Send from committer
  163. ### Delete Emails on push service
  164. Delete Emails on push service for a project.
  165. ```
  166. DELETE /projects/:id/services/emails-on-push
  167. ```
  168. ### Get Emails on push service settings
  169. Get Emails on push service settings for a project.
  170. ```
  171. GET /projects/:id/services/emails-on-push
  172. ```
  173. ## External Wiki
  174. Replaces the link to the internal wiki with a link to an external wiki.
  175. ### Create/Edit External Wiki service
  176. Set External Wiki service for a project.
  177. ```
  178. PUT /projects/:id/services/external-wiki
  179. ```
  180. Parameters:
  181. - `external_wiki_url` (**required**) - The URL of the external Wiki
  182. ### Delete External Wiki service
  183. Delete External Wiki service for a project.
  184. ```
  185. DELETE /projects/:id/services/external-wiki
  186. ```
  187. ### Get External Wiki service settings
  188. Get External Wiki service settings for a project.
  189. ```
  190. GET /projects/:id/services/external-wiki
  191. ```
  192. ## Flowdock
  193. Flowdock is a collaboration web app for technical teams.
  194. ### Create/Edit Flowdock service
  195. Set Flowdock service for a project.
  196. ```
  197. PUT /projects/:id/services/flowdock
  198. ```
  199. Parameters:
  200. - `token` (**required**) - Flowdock Git source token
  201. ### Delete Flowdock service
  202. Delete Flowdock service for a project.
  203. ```
  204. DELETE /projects/:id/services/flowdock
  205. ```
  206. ### Get Flowdock service settings
  207. Get Flowdock service settings for a project.
  208. ```
  209. GET /projects/:id/services/flowdock
  210. ```
  211. ## Gemnasium
  212. Gemnasium monitors your project dependencies and alerts you about updates and security vulnerabilities.
  213. ### Create/Edit Gemnasium service
  214. Set Gemnasium service for a project.
  215. ```
  216. PUT /projects/:id/services/gemnasium
  217. ```
  218. Parameters:
  219. - `api_key` (**required**) - Your personal API KEY on gemnasium.com
  220. - `token` (**required**) - The project's slug on gemnasium.com
  221. ### Delete Gemnasium service
  222. Delete Gemnasium service for a project.
  223. ```
  224. DELETE /projects/:id/services/gemnasium
  225. ```
  226. ### Get Gemnasium service settings
  227. Get Gemnasium service settings for a project.
  228. ```
  229. GET /projects/:id/services/gemnasium
  230. ```
  231. ## HipChat
  232. Private group chat and IM
  233. ### Create/Edit HipChat service
  234. Set HipChat service for a project.
  235. ```
  236. PUT /projects/:id/services/hipchat
  237. ```
  238. Parameters:
  239. - `token` (**required**) - Room token
  240. - `color` (optional)
  241. - `notify` (optional)
  242. - `room` (optional) - Room name or ID
  243. - `api_version` (optional) - Leave blank for default (v2)
  244. - `server` (optional) - Leave blank for default. https://hipchat.example.com
  245. ### Delete HipChat service
  246. Delete HipChat service for a project.
  247. ```
  248. DELETE /projects/:id/services/hipchat
  249. ```
  250. ### Get HipChat service settings
  251. Get HipChat service settings for a project.
  252. ```
  253. GET /projects/:id/services/hipchat
  254. ```
  255. ## Irker (IRC gateway)
  256. Send IRC messages, on update, to a list of recipients through an Irker gateway.
  257. ### Create/Edit Irker (IRC gateway) service
  258. Set Irker (IRC gateway) service for a project.
  259. > NOTE: Irker does NOT have built-in authentication, which makes it vulnerable to spamming IRC channels if it is hosted outside of a firewall. Please make sure you run the daemon within a secured network to prevent abuse. For more details, read: http://www.catb.org/~esr/irker/security.html.
  260. ```
  261. PUT /projects/:id/services/irker
  262. ```
  263. Parameters:
  264. - `recipients` (**required**) - Recipients/channels separated by whitespaces
  265. - `default_irc_uri` (optional) - irc://irc.network.net:6697/
  266. - `server_port` (optional) - 6659
  267. - `server_host` (optional) - localhost
  268. - `colorize_messages` (optional)
  269. ### Delete Irker (IRC gateway) service
  270. Delete Irker (IRC gateway) service for a project.
  271. ```
  272. DELETE /projects/:id/services/irker
  273. ```
  274. ### Get Irker (IRC gateway) service settings
  275. Get Irker (IRC gateway) service settings for a project.
  276. ```
  277. GET /projects/:id/services/irker
  278. ```
  279. ## JIRA
  280. Jira issue tracker
  281. ### Create/Edit JIRA service
  282. Set JIRA service for a project.
  283. > Setting `project_url`, `issues_url` and `new_issue_url` will allow a user to easily navigate to the Jira issue tracker. See the [integration doc](http://docs.gitlab.com/ce/integration/external-issue-tracker.html) for details. Support for referencing commits and automatic closing of Jira issues directly from GitLab is [available in GitLab EE.](http://docs.gitlab.com/ee/integration/jira.html)
  284. ```
  285. PUT /projects/:id/services/jira
  286. ```
  287. Parameters:
  288. - `new_issue_url` (**required**) - New Issue url
  289. - `project_url` (**required**) - Project url
  290. - `issues_url` (**required**) - Issue url
  291. - `description` (optional) - Jira issue tracker
  292. - `username` (optional) - Jira username
  293. - `password` (optional) - Jira password
  294. ### Delete JIRA service
  295. Delete JIRA service for a project.
  296. ```
  297. DELETE /projects/:id/services/jira
  298. ```
  299. ### Get JIRA service settings
  300. Get JIRA service settings for a project.
  301. ```
  302. GET /projects/:id/services/jira
  303. ```
  304. ## PivotalTracker
  305. Project Management Software (Source Commits Endpoint)
  306. ### Create/Edit PivotalTracker service
  307. Set PivotalTracker service for a project.
  308. ```
  309. PUT /projects/:id/services/pivotaltracker
  310. ```
  311. Parameters:
  312. - `token` (**required**)
  313. ### Delete PivotalTracker service
  314. Delete PivotalTracker service for a project.
  315. ```
  316. DELETE /projects/:id/services/pivotaltracker
  317. ```
  318. ### Get PivotalTracker service settings
  319. Get PivotalTracker service settings for a project.
  320. ```
  321. GET /projects/:id/services/pivotaltracker
  322. ```
  323. ## Pushover
  324. Pushover makes it easy to get real-time notifications on your Android device, iPhone, iPad, and Desktop.
  325. ### Create/Edit Pushover service
  326. Set Pushover service for a project.
  327. ```
  328. PUT /projects/:id/services/pushover
  329. ```
  330. Parameters:
  331. - `api_key` (**required**) - Your application key
  332. - `user_key` (**required**) - Your user key
  333. - `priority` (**required**)
  334. - `device` (optional) - Leave blank for all active devices
  335. - `sound` (optional)
  336. ### Delete Pushover service
  337. Delete Pushover service for a project.
  338. ```
  339. DELETE /projects/:id/services/pushover
  340. ```
  341. ### Get Pushover service settings
  342. Get Pushover service settings for a project.
  343. ```
  344. GET /projects/:id/services/pushover
  345. ```
  346. ## Redmine
  347. Redmine issue tracker
  348. ### Create/Edit Redmine service
  349. Set Redmine service for a project.
  350. ```
  351. PUT /projects/:id/services/redmine
  352. ```
  353. Parameters:
  354. - `new_issue_url` (**required**) - New Issue url
  355. - `project_url` (**required**) - Project url
  356. - `issues_url` (**required**) - Issue url
  357. - `description` (optional) - Redmine issue tracker
  358. ### Delete Redmine service
  359. Delete Redmine service for a project.
  360. ```
  361. DELETE /projects/:id/services/redmine
  362. ```
  363. ### Get Redmine service settings
  364. Get Redmine service settings for a project.
  365. ```
  366. GET /projects/:id/services/redmine
  367. ```
  368. ## Slack
  369. A team communication tool for the 21st century
  370. ### Create/Edit Slack service
  371. Set Slack service for a project.
  372. ```
  373. PUT /projects/:id/services/slack
  374. ```
  375. Parameters:
  376. - `webhook` (**required**) - https://hooks.slack.com/services/...
  377. - `username` (optional) - username
  378. - `channel` (optional) - #channel
  379. ### Delete Slack service
  380. Delete Slack service for a project.
  381. ```
  382. DELETE /projects/:id/services/slack
  383. ```
  384. ### Get Slack service settings
  385. Get Slack service settings for a project.
  386. ```
  387. GET /projects/:id/services/slack
  388. ```
  389. ## JetBrains TeamCity CI
  390. A continuous integration and build server
  391. ### Create/Edit JetBrains TeamCity CI service
  392. Set JetBrains TeamCity CI service for a project.
  393. > The build configuration in Teamcity must use the build format number %build.vcs.number% you will also want to configure monitoring of all branches so merge requests build, that setting is in the vsc root advanced settings.
  394. ```
  395. PUT /projects/:id/services/teamcity
  396. ```
  397. Parameters:
  398. - `teamcity_url` (**required**) - TeamCity root URL like https://teamcity.example.com
  399. - `build_type` (**required**) - Build configuration ID
  400. - `username` (**required**) - A user with permissions to trigger a manual build
  401. - `password` (**required**)
  402. ### Delete JetBrains TeamCity CI service
  403. Delete JetBrains TeamCity CI service for a project.
  404. ```
  405. DELETE /projects/:id/services/teamcity
  406. ```
  407. ### Get JetBrains TeamCity CI service settings
  408. Get JetBrains TeamCity CI service settings for a project.
  409. ```
  410. GET /projects/:id/services/teamcity
  411. ```