Skip to content

The project's automations

GET
/api/v1/automations
curl --request GET \
--url http://localhost:3000/api/v1/automations \
--header 'Authorization: Bearer <token>'

What is sent, by email or a signed webhook, when a brand is released, an asset’s license is about to end, governance changes, the use check keeps refusing an asset, Fixes finds something new, or a proposal waits in review: those the caller may manage. An editor of a brand manages its release automations; every other trigger, and any brand’s releases, take admin on the project.

Scope: write.

Automations

Media typeapplication/json
object
data
required
Array<object>
object
id
required
string format: uuid
/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/
name
required
string
trigger
required
string
Allowed values: brand.released asset.expiring governance check.refused fix.opened review.waiting
brand
required

Brand.released: the brand it is for, by slug; null: any

string | null
days
required
Any of:
integer
>= -9007199254740991 <= 9007199254740991
actions
required

Governance: the actions it fires on; empty: every one

Array<string>
times
required
Any of:
integer
>= -9007199254740991 <= 9007199254740991
kind
required
Any of:
string
Allowed values: stale gap
action
required
string
Allowed values: email webhook
format
required
string
Allowed values: json slack teams
emails
required
Array<string>
host
required

Webhook: the URL’s host; the URL itself is never shown

string | null
enabled
required
boolean
last
required
Any of:
object
status
required
string
Allowed values: pending delivered failed
at
required
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/
createdBy
required
string
createdAt
required
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/
updatedAt
required
string format: date-time
/^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z|([+-](?:[01]\d|2[0-3]):[0-5]\d)))$/
secret

Webhook: what each POST is signed with (Artbucket-Signature). Given once, when made

string
Example
{
"data": [
{
"trigger": "brand.released",
"kind": "stale",
"action": "email",
"format": "json",
"last": {
"status": "pending"
}
}
]
}

An error

Media typeapplication/json
object
error
required
object
code
required
string
message
required
string
detail
Examplegenerated
{
"error": {
"code": "example",
"message": "example",
"detail": "example"
}
}