Set the customer’s id in your system, or its own signing secret, on an installation
const url = 'https://api.threadkite.app/v1/app/installations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = { method: 'PATCH', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"accountId":"D-0042","inboundSecret":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PATCH \ --url https://api.threadkite.app/v1/app/installations/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "accountId": "D-0042", "inboundSecret": "example" }'Your app-wide webhook address finds the organisation by it (the field you chose in Incoming webhooks). Unique among your installations.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Request Bodyrequired
Section titled “Request Bodyrequired”object
The customer’s id in your system, matched against the field your app-wide webhooks name it by. Unique among your installations
Example
D-0042The secret your system signs this customer’s webhooks with, when each customer has its own. Accepted besides the app’s own; null removes it. Never shown again
Responses
Section titled “Responses”object
person: an owner or admin connected it; partner: you created the organisation
Its own address for your webhooks: /v1/inbound/installations/<inboundId> on the API
The customer’s id in your system, for the app-wide webhook address
Example
{ "organisationName": "Smith Motors", "grantedScopes": [ "organisation:read" ], "status": "active", "installedBy": "person", "inboundId": "in_8Kq2xW7mR4tZ9pL3vN6bH1cY", "accountId": "D-0042"}Missing or invalid app token (code invalid_app_token)
object
Stable machine-readable reason
With code invalid: every problem with the request, by field (message is the first)
object
Dotted path inside the item, e.g. attributes.price.amountMinor
Example
{ "statusCode": 403, "code": "forbidden", "message": "You do not have permission to do that.", "errors": [ { "message": "Enter the make" } ]}object
Stable machine-readable reason
With code invalid: every problem with the request, by field (message is the first)
object
Dotted path inside the item, e.g. attributes.price.amountMinor
Example
{ "statusCode": 403, "code": "forbidden", "message": "You do not have permission to do that.", "errors": [ { "message": "Enter the make" } ]}object
Stable machine-readable reason
With code invalid: every problem with the request, by field (message is the first)
object
Dotted path inside the item, e.g. attributes.price.amountMinor
Example
{ "statusCode": 403, "code": "forbidden", "message": "You do not have permission to do that.", "errors": [ { "message": "Enter the make" } ]}Rate limit reached
object
Stable machine-readable reason
Seconds until another request will be accepted
Example
{ "statusCode": 429, "code": "rate_limited", "message": "Too many requests. Each key can make 120 requests a minute; try again in 12 seconds.", "retryAfter": 12}