KintsugiKintsugi

Create many exemptions

POST/exemptions/bulk

Create between 1 and 100 exemptions in the resolved organization in one request. The batch is all-or-nothing: every entry is validated first, and if any one is invalid the whole request returns 400 identifying the offending entry's index and nothing is created. Each entry follows the same rules as POST /exemptions: customerId is required and must belong to the organization, as must transactionId when sent, and source is always recorded as API. A partial exemption is not accepted here; create it with POST /exemptions. An empty list, or more than 100 entries, returns 400.

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.

Body

exemptionsExemptionCreate[]Required

The exemptions to create, between 1 and 100. They are created all-or-nothing: if any one is invalid the whole request fails and none are created. Each entry has the same shape as the body of POST /exemptions.

Response

itemsExemption[]Required

The created exemptions, one per request entry, in the order they were sent.

201

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.

422

The request failed validation.

cURL
POST /exemptions/bulk
-H "Api-Key: ***"
-H "Api-Version: 2026-07-21"
{
"exemptions": [
{
"exemptionType": "customer",
"certificateType": "certificate type",
"startDate": "2026-01-01",
"endDate": "2026-12-31",
"countryCode": "US",
"jurisdiction": "CA",
"reseller": false,
"fein": "12-3456789",
"salesTaxId": "ST-98765",
"status": "ACTIVE",
"customerId": "cust_2mNpQr7Ls8f3k",
"transactionId": "tran_2mNpQr7Ls8f3k"
}
]
}
Response
{
"items": [
{
"id": "exmp_2mNpQr7Ls8f3k",
"organizationId": "orgn_2mNpQr7Ls8f3k",
"customerId": "cust_2mNpQr7Ls8f3k",
"customerName": "Acme Wholesale",
"transactionId": "tran_2mNpQr7Ls8f3k",
"exemptionType": "customer",
"certificateType": "certificate type",
"status": "ACTIVE",
"countryCode": "US",
"jurisdiction": "CA",
"startDate": "2026-01-01",
"endDate": "2026-12-31",
"reseller": false,
"fein": "12-3456789",
"salesTaxId": "ST-98765",
"source": "NETSUITE",
"hasCertificate": false,
"certificates": [
{
"id": "excr_2mNpQr7Ls8f3k",
"fileName": "resale-certificate.pdf",
"mimeType": "application/pdf",
"fileSizeBytes": 20481
}
],
"customer": {
"customerName": "Acme Wholesale",
"companyName": "Acme Holdings LLC"
}
}
]
}
Create many exemptions (2026-07-21) | Kintsugi API Reference