KintsugiKintsugi

Upload or replace a filing artifact

PUT/filings/{filing_id}/artifacts/{artifact_type}

Store a filing's return or payment confirmation document, as multipart/form-data with the PDF in the file part. artifactType picks the slot: RETURN or PAYMENT. Uploading to a slot that already holds a document replaces it. Only a caller that files the organization's returns itself may upload: a partner with self-managed filings enabled (its portfolio key, or a partner user who can see the organization), or the organization's own ADMIN, OWNER or organization key when such a partner manages it. Send an Organization-Id, Connection-Id or Entity-Id selector to say which organization the filing belongs to. The filing's status does not change. Download the stored document through GET /attachments/{id}/download.

The file must be a PDF of at most 10 MB. Returns 404 if the filing does not exist or belongs to an organization your credential cannot access, 403 if Kintsugi files the organization's returns or your credential is not its filer, 409 if the filing is not in the FILING or FILED status, 413 if the file is too large, and 422 if it is not a PDF.

Authorization

Api-KeystringRequired

Your secret API key. Include it with every request.

Headers

Api-Versiondate

Release date, as YYYY-MM-DD. Defaults to 2026-07-21.

Organization-Idstring

Target organization id (Organization-Id selector).

Connection-Idstring

Target connection id; resolves to its organization.

Entity-Idstring

Platform entity id; resolves to a connection's organization.

Entity-Sourcestring

Optional source to disambiguate an Entity-Id.

Path parameters

filing_idstringRequired

The unique identifier of the filing.

artifact_typePublicFilingArtifactTypeEnumRequired

Which confirmation document the upload fills.

Available options:RETURNPAYMENT

Response

idstringRequired

Kintsugi's unique identifier for the attachment.

fileNamestringRequired

Name the file was uploaded under.

contentTypestringRequired

Media type of the file.

sizeintegerRequired

Size of the file in bytes.

relatedEntityRelatedEntityRefRequired

The entity this attachment is held against.

uploadedAtstringRequired

When the attachment was uploaded, as an RFC-3339 UTC timestamp.

200

Successful Response

400

The request was invalid.

401

Authentication failed or was missing.

403

The credential is not permitted for this request.

404

The requested resource was not found.

409

The request conflicts with existing state.

413

The request body is larger than this endpoint accepts.

422

The request failed validation.

503

A service this request depends on was unavailable. Retry the request.

cURL
PUT /filings/{filing_id}/artifacts/RETURN
-H "Api-Key: ***"
-H "Api-Version: 2026-07-21"
Example request
https://api.trykintsugi.com/filings/{filing_id}/artifacts/RETURN
Response
{
"id": "atch_2mNpQr7Ls8f3k",
"fileName": "resale-certificate.pdf",
"contentType": "application/pdf",
"size": 20481,
"relatedEntity": {
"id": "exmp_2mNpQr7Ls8f3k",
"type": "EXEMPTION"
},
"uploadedAt": "2026-07-28T12:00:00Z"
}
Upload or replace a filing artifact (2026-07-21) | Kintsugi API Reference