Skip to main content
Attaching a file to a part is a three-step flow:
  1. Request a signed upload URL from Fieldnode.
  2. Upload the file bytes directly to the returned URL (blob storage).
  3. Attach the upload to the part under a file group.
The bytes go straight to blob storage, not through the Fieldnode API. The API only mints the URL in step 1 and records the attachment in step 3.

Prerequisites

  • A PAT — see Authentication.
  • The id of the part you want to attach the file to. You must be the IP owner (or have update access) of that part.

Step 1 — Request a signed upload URL

Call POST /v1/uploads with the file name. Set public: true only if the file should be served without authentication (e.g. a preview image); otherwise leave it as false.
Response:
Keep the id — that is the upload id you will use in step 3. The signedUrl is single-use and expires at expireTime.

Step 2 — Upload the file bytes

Send the raw file bytes to signedUrl using the method and headers from the response. Do not add your PAT — the signed URL carries its own authentication.
A successful upload returns 201 Created (or 200 OK) with an empty body. If the URL has expired, restart from step 1.

Step 3 — Attach the upload to the part

Call PATCH /v1/parts/{id}/files with the upload id and the file group to attach it under:
A successful response has status 204 No Content.

File groups

Verify the attachment

List the part’s files to confirm:
Each item includes id, name, group, url, and (for non-public files) a short-lived signedUrl / signedDownloadUrl you can use to fetch the bytes back.

Removing files

The same endpoint removes files — pass their file ids (not upload ids) under remove:
add and remove can be combined in a single request.