For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Logo
Get supportSee a Demo
HomeAPI ReferenceSDKs
HomeAPI ReferenceSDKs
    • SDKs
    • WebView
  • API Reference
      • POSTCreate Incoming Transactions
      • POSTCreate Bulk Transactions Upload URL
      • POSTCreate Audits
      • GETGet Earned Rewards
Get supportSee a Demo
API ReferenceTransactions

Create Bulk Transactions Upload URL

POST
/v2/issuers/:organizationId/transactions/uploads
POST
/v2/issuers/:organizationId/transactions/uploads
$curl -X POST https://rewards-api.getkard.com/v2/issuers/organization-123/transactions/uploads \
> -H "Authorization: Bearer <token>" \
> -H "Content-Type: application/json" \
> -d '{
> "data": [
> {
> "type": "incomingTransactionsFile",
> "attributes": {
> "filename": "transaction_12345.jsonl"
> }
> },
> {
> "type": "incomingTransactionsFile",
> "attributes": {
> "filename": "transaction_67890.jsonl"
> }
> }
> ]
>}'
1{
2 "data": [
3 {
4 "type": "incomingTransactionsFile",
5 "id": "2NxKz7TYmqVH8UrjGP1xK3hF2gs",
6 "attributes": {
7 "url": "https://s3.amazonaws.com/bucket/key1?X-Amz-Algorithm=...",
8 "expiresIn": 900
9 }
10 },
11 {
12 "type": "incomingTransactionsFile",
13 "id": "3PqLa8UZnrWI9VskHQ2yL4iG3ht",
14 "attributes": {
15 "url": "https://s3.amazonaws.com/bucket/key2?X-Amz-Algorithm=...",
16 "expiresIn": 900
17 }
18 }
19 ]
20}
Generates up to 10 presigned PUT URLs for uploading JSONL transaction files (up to 5GB each) directly to storage. Each URL is valid for 15 minutes. Use the returned URL to upload the file via an HTTP PUT request with the binary file content as the body. If a URL expires before the upload completes, you must request a new one. Files can be uploaded as plain JSONL or as a gzip-compressed file. Supports both `incomingTransactionsFile` for daily transaction ingestion and `historicalTransactionsFile` for historical transaction ingestion. See the [Historical Transaction Uploads](/2024-10-01/api/integration-guides/historical-transaction-uploads) integration guide for details on the historical flow. <b>Required scopes:</b> `files:write`
Was this page helpful?
Previous

Create Audits

Next
Built with

Generates up to 10 presigned PUT URLs for uploading JSONL transaction files (up to 5GB each) directly to storage. Each URL is valid for 15 minutes. Use the returned URL to upload the file via an HTTP PUT request with the binary file content as the body. If a URL expires before the upload completes, you must request a new one. Files can be uploaded as plain JSONL or as a gzip-compressed file. Supports both incomingTransactionsFile for daily transaction ingestion and historicalTransactionsFile for historical transaction ingestion. See the Historical Transaction Uploads integration guide for details on the historical flow. Required scopes: files:write

Authentication

AuthorizationBearer

Bearer authentication of the form Bearer <token>, where token is your auth token.

Path parameters

organizationIdstringRequired
Your issuer organization ID, provided by Kard

Request

This endpoint expects an object.
datalist of objectsRequired

List of file upload requests (1–10 items per request).

Response

This endpoint returns an object.
datalist of objects
List of created file upload sessions.

Errors

400
Invalid Request
401
Unauthorized Error
403
Forbidden Error
500
Internal Server Error