Get a file
Its state, and where it is read once ready. Needs `org.brands.view`.
/v1/orgs/{org}/brands/{brand}/files/{file}Its state, and where it is read once ready. Needs org.brands.view.
Authorization
bearer An org API key (sk_live_…, sk_test_…), or an access token from the Synq issuer (the synq brand, on the accounts host) for this API.
In: header
Path Parameters
Response Body
application/json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
application/problem+json
curl -X GET "https://example.com/v1/orgs/string/brands/string/files/string"{ "id": "string", "purpose": "string", "status": "string", "visibility": "public", "url": "string", "content_type": "string", "size": 0, "width": 0, "height": 0, "sha256": "string", "rejected_reason": "string", "declared_type": "string", "declared_size": 0, "expires_at": "string", "created_at": "string", "ready_at": "string"}Add a sending domain POST
A domain the org's brands' email can come from, on a plan with `branding.custom_email_domain` (Pro and up). Synq registers it with its email provider at once and answers the DNS records to publish; when it can't yet, the domain is `pending_setup` and its records appear once it can. A name is held by one org at a time. At most 10 a day, and 10 in all. Needs `org.emailDomains.edit`. Recorded as `email_domain.created`.
Finish an upload POST
Once its bytes are PUT: Synq reads them back, knows them by their first bytes (PNG, JPEG, WebP or GIF; never SVG), checks their length and dimensions, and re-encodes them, so nothing of the original but its pixels is kept (no EXIF, GPS or anything hidden after the image). Then the file is what it is for: a `brand_logo` the brand's `logo_url`, a `theme_background` its theme's `background_image_url`, recorded as `brand.updated`, and the file as `file.uploaded`. A refused file is `file.rejected`, and nothing of it is kept. Finalizing a file again answers the same. Needs `org.brands.edit`.