Show examples in:
Javascript HTTP
Endpoint info
Available examples

Content Management API > Build trigger

Create build trigger

Body parameters

type string Required

Must be exactly "build_trigger".

attributes.name string Required

Name of the build trigger

Example: "Custom build trigger"
attributes.adapter enum Required

The type of build trigger

Example: "custom"
custom Optional

adapter_settings must include the following properties: trigger_url, headers and payload.

netlify Optional

adapter_settings must include the following properties: trigger_url, access_token, branch, site_id

vercel Optional

adapter_settings must include the following properties: project_id, token, branch, team_id, deploy_hook_url

circle_ci Optional

adapter_settings must include the following properties: project, token, revision, vcs, build_parameters

gitlab Optional

adapter_settings must include the following properties: trigger_url, token, ref, build_parameters

travis Optional

adapter_settings must include the following properties: api_token, repo, branch, config

attributes.indexing_enabled boolean Required

Wether Site Search is enabled or not. With Site Search, everytime the website is built, DatoCMS will respider it to get updated content

attributes.frontend_url string, null Required

The public URL of the frontend. If Site Search is enabled (indicated by indexing_enabled), this is the starting point from which the website's spidering will start

Example: "https://www.mywebsite.com/"
attributes.adapter_settings object Required

Additional settings for the build trigger. The value depends on the adapter.

Example: { trigger_url: "http://some-url.com/trigger", headers: { Authorization: "Bearer abc123" }, payload: { type: "build_request" }, }
attributes.autotrigger_on_scheduled_publications boolean Required

Wheter an automatic build request to webhook_url should be made on scheduled publications/unpublishings

attributes.webhook_token string Optional

Unique token for the webhook (it's the same token present in webhook_url)

Example: "xA1239ajsk123"

Returns

Returns a resource object of type build_trigger.

Examples

1
POST https://site-api.datocms.com/build-triggers HTTP/1.1
2
Authorization: Bearer YOUR-API-TOKEN
3
Accept: application/json
4
X-Api-Version: 3
5
Content-Type: application/vnd.api+json
6
7
{
8
"data": {
9
"type": "build_trigger",
10
"attributes": {
11
"name": "Custom build trigger",
12
"adapter": "custom",
13
"indexing_enabled": true,
14
"frontend_url": "https://www.mywebsite.com/",
15
"adapter_settings": {
16
"trigger_url": "http://some-url.com/trigger",
17
"headers": {
18
"Authorization": "Bearer abc123"
19
},
20
"payload": {
21
"type": "build_request"
22
}
23
},
24
"autotrigger_on_scheduled_publications": true
25
}
26
}
27
}
Terminal window
1
curl -g 'https://site-api.datocms.com/build-triggers' \
2
-X POST \
3
-H "Authorization: Bearer YOUR-API-TOKEN" \
4
-H "Accept: application/json" \
5
-H "X-Api-Version: 3" \
6
-H "Content-Type: application/vnd.api+json" \
7
--data-binary '{"data":{"type":"build_trigger","attributes":{"name":"Custom build trigger","adapter":"custom","indexing_enabled":true,"frontend_url":"https://www.mywebsite.com/","adapter_settings":{"trigger_url":"http://some-url.com/trigger","headers":{"Authorization":"Bearer abc123"},"payload":{"type":"build_request"}},"autotrigger_on_scheduled_publications":true}}}'
1
await fetch("https://site-api.datocms.com/build-triggers", {
2
method: "POST",
3
headers: {
4
Authorization: "Bearer YOUR-API-TOKEN",
5
Accept: "application/json",
6
"X-Api-Version": "3",
7
"Content-Type": "application/vnd.api+json",
8
},
9
body: JSON.stringify({
10
data: {
11
type: "build_trigger",
12
attributes: {
13
name: "Custom build trigger",
14
adapter: "custom",
15
indexing_enabled: true,
16
frontend_url: "https://www.mywebsite.com/",
17
adapter_settings: {
18
trigger_url: "http://some-url.com/trigger",
19
headers: { Authorization: "Bearer abc123" },
20
payload: { type: "build_request" },
21
},
22
autotrigger_on_scheduled_publications: true,
23
},
24
},
25
}),
26
});
1
HTTP/1.1 200 OK
2
Content-Type: application/json
3
Cache-Control: cache-control: max-age=0, private, must-revalidate
4
X-RateLimit-Limit: 30
5
X-RateLimit-Remaining: 28
6
7
{
8
"data": {
9
"type": "build_trigger",
10
"id": "1822",
11
"attributes": {
12
"name": "Custom build trigger",
13
"adapter": "custom",
14
"adapter_settings": {
15
"trigger_url": "http://some-url.com/trigger",
16
"headers": {
17
"Authorization": "Bearer abc123"
18
},
19
"payload": {
20
"type": "build_request"
21
}
22
},
23
"last_build_completed_at": "2017-03-30T09:29:14.872Z",
24
"build_status": "success",
25
"webhook_url": "https://webhooks.datocoms.com/xA1239ajsk123/deploy-results",
26
"indexing_status": "success",
27
"frontend_url": "https://www.mywebsite.com/",
28
"indexing_enabled": true,
29
"autotrigger_on_scheduled_publications": true
30
}
31
}
32
}