- Request a signed upload URL from Fieldnode.
- Upload the file bytes directly to the returned URL (blob storage).
- Attach the upload to the part under a file group.
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
CallPOST /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.
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 tosignedUrl using the method and headers from the response. Do not add your PAT — the signed URL carries its own authentication.
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
CallPATCH /v1/parts/{id}/files with the upload id and the file group to attach it under:
204 No Content.
File groups
| Group | Use for |
|---|---|
preview | Thumbnail or preview image shown in part listings. |
document | General attachments (drawings, datasheets, PDFs). |
ip | IP-restricted files only visible to the IP owner. |
partDevelopment | Development files attached during part design. |
development | Additional development assets. |
Verify the attachment
List the part’s files to confirm: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) underremove:
add and remove can be combined in a single request.