summaryrefslogtreecommitdiff
path: root/doc/api/build_triggers.md
blob: c98001b6039fdd792dafae2524f6e4746096a9e5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
# Build triggers

>**Note:**
The `https://gitlab.example.com` URL that is presented in the examples of the
API docs is fictional. Replace it with the URL of your GitLab instance,
or in case of GitLab.com, use `https://gitlab.com`.

You can read more about [triggering builds through the API](../ci/triggers/README.md).

## List project triggers

Get a list of project's build triggers.

```
GET /projects/:id/triggers
```

| Attribute | Type    | required | Description         |
|-----------|---------|----------|---------------------|
| `id`      | integer | yes      | The ID of a project |

```
curl --header "PRIVATE_TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.example.com/api/v3/projects/1/triggers"
```

```json
[
    {
        "created_at": "2015-12-23T16:24:34.716Z",
        "deleted_at": null,
        "last_used": "2016-01-04T15:41:21.986Z",
        "token": "fbdb730c2fbdb095a0862dbd8ab88b",
        "updated_at": "2015-12-23T16:24:34.716Z"
    },
    {
        "created_at": "2015-12-23T16:25:56.760Z",
        "deleted_at": null,
        "last_used": null,
        "token": "7b9148c158980bbd9bcea92c17522d",
        "updated_at": "2015-12-23T16:25:56.760Z"
    }
]
```

## Get trigger details

Get details of project's build trigger.

```
GET /projects/:id/triggers/:token
```

| Attribute | Type    | required | Description              |
|-----------|---------|----------|--------------------------|
| `id`      | integer | yes      | The ID of a project      |
| `token`   | string  | yes      | The `token` of a trigger |

```
curl --header "PRIVATE_TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.example.com/api/v3/projects/1/triggers/7b9148c158980bbd9bcea92c17522d"
```

```json
{
    "created_at": "2015-12-23T16:25:56.760Z",
    "deleted_at": null,
    "last_used": null,
    "token": "7b9148c158980bbd9bcea92c17522d",
    "updated_at": "2015-12-23T16:25:56.760Z"
}
```

## Create a project trigger

Create a build trigger for a project.

```
POST /projects/:id/triggers
```

| Attribute | Type    | required | Description              |
|-----------|---------|----------|--------------------------|
| `id`      | integer | yes      | The ID of a project      |

```
curl --request POST --header "PRIVATE_TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.example.com/api/v3/projects/1/triggers"
```

```json
{
    "created_at": "2016-01-07T09:53:58.235Z",
    "deleted_at": null,
    "last_used": null,
    "token": "6d056f63e50fe6f8c5f8f4aa10edb7",
    "updated_at": "2016-01-07T09:53:58.235Z"
}
```

## Remove a project trigger

Remove a project's build trigger.

```
DELETE /projects/:id/triggers/:token
```

| Attribute | Type    | required | Description              |
|-----------|---------|----------|--------------------------|
| `id`      | integer | yes      | The ID of a project      |
| `token`   | string  | yes      | The `token` of a trigger |

```
curl --request DELETE --header "PRIVATE_TOKEN: 9koXpg98eAheJpvBs5tK" "https://gitlab.example.com/api/v3/projects/1/triggers/7b9148c158980bbd9bcea92c17522d"
```

```json
{
    "created_at": "2015-12-23T16:25:56.760Z",
    "deleted_at": "2015-12-24T12:32:20.100Z",
    "last_used": null,
    "token": "7b9148c158980bbd9bcea92c17522d",
    "updated_at": "2015-12-24T12:32:20.100Z"
}
```