agency-board
POST /v1/agency/boards/{boardId}/cards/{cardId}/attachments
Attach a file to a card.
Πισtoποίηση
Στείλτε ένα κλειδί API ως διακριτικό φορέα (bearer token). Αυτό το τελικό σημείο δεν ορίζει μια συγκεκριμένη άδεια στην προδιαγραφή, οπότε δώστε στο κλειδί σας τα ελάχιστα δυνατά δικαιώματα και ελέγξτε την απόκριση αντί να κάνετε υποθέσεις.
Αυτό το τελικό σημείο δεν δέχεται αναγνωριστικό οργανισμού. Το κλειδί σας προσδιορίζει ήδη τον οργανισμό στον οποίο ανήκει, και η απάντηση περιορίζεται σε αυτόν.
Δοκιμάστε το
Ατικatastήstε ό,τι βρίskεtai μέσα σe γώniaδeς μe τis δikές sas timές, kai to placeholder klεidioύ μe éna klεidi apó ton pinaka ελέgchou sas.
curl -X POST https://api.zinndigital.com/v1/agency/boards/{boardId}/cards/{cardId}/attachments \
-H "Authorization: Bearer zdk_live_…"Συνδεθήκατε; Η κονσόλα API στον πίνακα ελέγχου σας συμπληρώνει το πραγματικό αναγνωριστικό του οργανισμού σας και το δικό σας κλειδί, και εκτελεί το αίτημα στο ζωντανό API, ώστε να μπορείτε να δείτε την πραγματική απόκριση. Ανοίξτε αυτό το τελικό σημείο στην κονσόλα API
Λεπτομέρειες
⚖️ 25 MB per file and 2 GB per organisation, owner-ruled 2026-09-03. The organisation quota is counted across every board it owns, because a per-board cap is escaped by making another board. ⛔⛔ A stored file is `pending` and **not downloadable by anybody, including the agency's own staff**, until a malware scan has passed it. A client's upload is the best phishing route into an agency there is, and the person opening it has production access to that client's sites. `pending`, `infected` and `error` all refuse — an unscannable file is not a clean file. Accepted types are PNG, JPEG, GIF, WebP, PDF, plain text and CSV, each validated by its magic bytes rather than by the declared content type. No archives (a way to smuggle every format not on the list), no Office documents (macros), no SVG (a script container browsers execute).
Παράμετροι
| Όνομα | Τύpος | Υποχρεωτικό | Τι είναι |
|---|---|---|---|
boardId (path) | Uuid | Ναι | Project board ID (UUIDv7). |
cardId (path) | Uuid | Ναι | Board card ID (UUIDv7). |
Απάντηση
| Όνομα | Τύpος | Υποχρεωτικό | Τι είναι |
|---|---|---|---|
id | Uuid | Ναι | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
card_id | Uuid | Ναι | UUIDv7 identifier — sortable by creation time (docs/02 §8). |
filename | string | Ναι | — |
content_type | string | Όχι | — |
size_bytes | integer | Ναι | — |
visibility | AgencyBoardVisibility | Όχι | Who may see this object. `internal` is always the default. A **card** reaches the client only when it is `client` **and its column is too** — an AND, not inheritance, because th… |
scan_state | AgencyBoardAttachmentScanState | Ναι | Where an uploaded file is in the malware pipeline. ⛔ `clean` is the ONLY state the bytes are ever served in — `pending`, `infected` and `error` all refuse, including to the agen… |
downloadable | boolean | Ναι | ⭐ Whether these bytes may be fetched right now. Computed from the scan state by the engine rather than derived by a caller — two copies of "may this leave the building" is how t… |
uploaded_by | AgencyBoardActor | Όχι | — |
created_at | string | Όχι | — |
Σφάλματα που μπορεί να επιστρέψει αυτό το τελικό σημείο
401 · 403 · 404 · 422