Upload
Data item upload endpoints (single and multi-part)
Posts a signed data item to arweave
Header Parameters
int64
value <= 2147483648
"application/octet-stream"
A signed data item
binary
Response Body
curl -X POST "https://upload.ardrive.io/tx" \ -H "content-length: 2147483648" \ -H "content-type: application/octet-stream" \ -H "Content-Type: application/octet-stream" \ -d 'string'
{
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"owner": "8wgRDgvYOrtSaWEIV21g0lTuWDUnTu4_iYj4hmA7PI0",
"dataCaches": [
"arweave.net"
],
"fastFinalityIndexes": [
"arweave.net"
],
"deadlineHeight": 1310000,
"timestamp": 1700590909589,
"version": "0.1.0",
"signature": "iU_S6uuG1OD8k0XqMGOmbcKfysDckEMUy4R9-ODPXiQjKXuT4lTngRFBFKO5NQT1iIfqSDKcbTRL6gJowM_L7bBQZRGkojzXD0PNNU2F0bNNJ80VtUktHifGTXbCgz5kiFciL19n0P3nX6ZfXnOn-H8ALZzRJV69apdvwqitpNKxLMPyc-QA0QBxmC3CKPz_7fy2Qg0QHr5g_ZT2Of-YJ_RsZTEoc3g1fgzsEmMBPOsx4XtPrhV6llnA3pncngzHbPdFvypdWiO8Bvr0EWmazNsoanuwK5uKJ_ROIGXW_dBBGN8Vrfv5U6dJnhJVn5IE7JFlixpFTluF_ICRzbUq2pk_re6jEtW1H3ItH2iN0UeFUw1uDbq3HJW6lDc8aOwDwDspJI11KEI6uCz5QmQy2V8DvRknoqcxmuihF6XmmJIZgTVeo6LNufEis9kFxqtc3Dh_gn8z0cDXKEKFycudckmcHP7vkWD68uSssMMJIdVgwvPZss06svfRnI-E33j3MrQI9FzMIv-7Df8iYATyeyldM1v3gexG0kQm0AMG1_8_SLqwu2QlqzM41mrK5vNmQxOVdIQSOPWPvzbF-YGRwpCjlveRBuARGC9JNC4UipvDYri2gRWuBx2uDL7dmVFv1gRll3dYNMYaMULHYngtrrCynB3Cyfhh7cyPlwuNlk0",
"public": "qREovbmD6oxgHYNCzOeTei07lSz0-YLcjnvgSDzqptsCiqNOtB3RKUToSX5hkPD45fJDY4057XkkcsQRuGsU8y9rgm37i-Kiyd5Z_iy6pJXrwi9XnAgGL118lIV790GZ7xe5o3DvPV3Px74C0ABsfL9lW86D4t_qClJ6wSQksKNd7rnUImIvHW0vxLswST7dfUngevzKt4kv48VTub4951XdUHjb45Uurf7xFYSCizAGtGqr5GYDFrVk-mNrzFH5bXt06PJfxe9E5ujIE5Uq1Az6vqEOO0E1mWmXqdTPluAxcjmgktkoNLHZnnU-BsYuFaTWW5NU3aS-RgJKXYs9O6Dc1-2SITl-H_wtdGNSj31fj72UkaAbkpA1mionK-8bOIkSpYgKCyTC42oHh1Fw4SLXPyLxBj1w6F32LSLjpse5dmKymj4fJPezCMdi709uIiVT7XOm4LZBCzFOxS6-UNxgE57dBFpcWkcqNO3p00biYqH5d5bzvK3bwd-4j0KyKlqPYTProSnd3P6ROZuuJaLoLD_Or5-L_dUjawHz-DFlzmckYaf8l3XdzPM4JSsE8CEDZl0NCN0AidXt_wjbr6k9JsO7cnLB226AjxhcyuxZOlhgkIn7EbxpVXx-O2mXkcXF8PixCP0k5brtriLeF1MAdspgd_S-LKQeGVr7-mk"
}
"Data Item Exists"
"Invalid Content Type"
"Insufficient balance"
Posts a signed data item to arweave for a specific token
Path Parameters
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
Header Parameters
int64
value <= 2147483648
"application/octet-stream"
A signed data item
binary
Response Body
curl -X POST "https://upload.ardrive.io/tx/:token" \ -H "content-length: 2147483648" \ -H "content-type: application/octet-stream" \ -H "Content-Type: application/octet-stream" \ -d 'string'
{
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"owner": "8wgRDgvYOrtSaWEIV21g0lTuWDUnTu4_iYj4hmA7PI0",
"dataCaches": [
"arweave.net"
],
"fastFinalityIndexes": [
"arweave.net"
],
"deadlineHeight": 1310000,
"timestamp": 1700590909589,
"version": "0.1.0",
"signature": "iU_S6uuG1OD8k0XqMGOmbcKfysDckEMUy4R9-ODPXiQjKXuT4lTngRFBFKO5NQT1iIfqSDKcbTRL6gJowM_L7bBQZRGkojzXD0PNNU2F0bNNJ80VtUktHifGTXbCgz5kiFciL19n0P3nX6ZfXnOn-H8ALZzRJV69apdvwqitpNKxLMPyc-QA0QBxmC3CKPz_7fy2Qg0QHr5g_ZT2Of-YJ_RsZTEoc3g1fgzsEmMBPOsx4XtPrhV6llnA3pncngzHbPdFvypdWiO8Bvr0EWmazNsoanuwK5uKJ_ROIGXW_dBBGN8Vrfv5U6dJnhJVn5IE7JFlixpFTluF_ICRzbUq2pk_re6jEtW1H3ItH2iN0UeFUw1uDbq3HJW6lDc8aOwDwDspJI11KEI6uCz5QmQy2V8DvRknoqcxmuihF6XmmJIZgTVeo6LNufEis9kFxqtc3Dh_gn8z0cDXKEKFycudckmcHP7vkWD68uSssMMJIdVgwvPZss06svfRnI-E33j3MrQI9FzMIv-7Df8iYATyeyldM1v3gexG0kQm0AMG1_8_SLqwu2QlqzM41mrK5vNmQxOVdIQSOPWPvzbF-YGRwpCjlveRBuARGC9JNC4UipvDYri2gRWuBx2uDL7dmVFv1gRll3dYNMYaMULHYngtrrCynB3Cyfhh7cyPlwuNlk0",
"public": "qREovbmD6oxgHYNCzOeTei07lSz0-YLcjnvgSDzqptsCiqNOtB3RKUToSX5hkPD45fJDY4057XkkcsQRuGsU8y9rgm37i-Kiyd5Z_iy6pJXrwi9XnAgGL118lIV790GZ7xe5o3DvPV3Px74C0ABsfL9lW86D4t_qClJ6wSQksKNd7rnUImIvHW0vxLswST7dfUngevzKt4kv48VTub4951XdUHjb45Uurf7xFYSCizAGtGqr5GYDFrVk-mNrzFH5bXt06PJfxe9E5ujIE5Uq1Az6vqEOO0E1mWmXqdTPluAxcjmgktkoNLHZnnU-BsYuFaTWW5NU3aS-RgJKXYs9O6Dc1-2SITl-H_wtdGNSj31fj72UkaAbkpA1mionK-8bOIkSpYgKCyTC42oHh1Fw4SLXPyLxBj1w6F32LSLjpse5dmKymj4fJPezCMdi709uIiVT7XOm4LZBCzFOxS6-UNxgE57dBFpcWkcqNO3p00biYqH5d5bzvK3bwd-4j0KyKlqPYTProSnd3P6ROZuuJaLoLD_Or5-L_dUjawHz-DFlzmckYaf8l3XdzPM4JSsE8CEDZl0NCN0AidXt_wjbr6k9JsO7cnLB226AjxhcyuxZOlhgkIn7EbxpVXx-O2mXkcXF8PixCP0k5brtriLeF1MAdspgd_S-LKQeGVr7-mk"
}
"Data Item Exists"
"Insufficient balance"
Creates a new multi-part upload. Chunks should be posted to /chunks/:uploadId/:chunkOffset using the returned uploadId. ARx compatible.
Path Parameters
The upload id of the multi-part upload.
The offset of the chunk in bytes. If -1, that will finalize an existing multi-part upload.
Response Body
curl -X GET "https://upload.ardrive.io/chunks/-1/-1"
{
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"min": 2500,
"max": "500_000_000"
}
"Internal server error"
Gets an existing multi-part upload, including all existing chunks that have been uploaded. ARx compatible.
Path Parameters
The upload id of the multi-part upload.
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
Response Body
curl -X GET "https://upload.ardrive.io/chunks/:token/:uploadId/-1"
{
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"min": 2500,
"max": 500000000,
"size": 25000000,
"chunks": [
[
25000000,
25000000
],
[
50000000,
25000000
],
[
75000000,
25000000
],
[
100000000,
4858676
]
]
}
"Multi-part upload not found"
"Internal server error"
Finalizes a multi-part upload. ARx compatible.
Path Parameters
The upload id of the multi-part upload.
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
Response Body
curl -X POST "https://upload.ardrive.io/chunks/:token/:uploadId/-1"
{
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"data": {
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"owner": "8wgRDgvYOrtSaWEIV21g0lTuWDUnTu4_iYj4hmA7PI0",
"dataCaches": [
"arweave.net"
],
"fastFinalityIndexes": [
"arweave.net"
],
"deadlineHeight": 1310000,
"timestamp": 1700590909589,
"version": "0.1.0",
"signature": "iU_S6uuG1OD8k0XqMGOmbcKfysDckEMUy4R9-ODPXiQjKXuT4lTngRFBFKO5NQT1iIfqSDKcbTRL6gJowM_L7bBQZRGkojzXD0PNNU2F0bNNJ80VtUktHifGTXbCgz5kiFciL19n0P3nX6ZfXnOn-H8ALZzRJV69apdvwqitpNKxLMPyc-QA0QBxmC3CKPz_7fy2Qg0QHr5g_ZT2Of-YJ_RsZTEoc3g1fgzsEmMBPOsx4XtPrhV6llnA3pncngzHbPdFvypdWiO8Bvr0EWmazNsoanuwK5uKJ_ROIGXW_dBBGN8Vrfv5U6dJnhJVn5IE7JFlixpFTluF_ICRzbUq2pk_re6jEtW1H3ItH2iN0UeFUw1uDbq3HJW6lDc8aOwDwDspJI11KEI6uCz5QmQy2V8DvRknoqcxmuihF6XmmJIZgTVeo6LNufEis9kFxqtc3Dh_gn8z0cDXKEKFycudckmcHP7vkWD68uSssMMJIdVgwvPZss06svfRnI-E33j3MrQI9FzMIv-7Df8iYATyeyldM1v3gexG0kQm0AMG1_8_SLqwu2QlqzM41mrK5vNmQxOVdIQSOPWPvzbF-YGRwpCjlveRBuARGC9JNC4UipvDYri2gRWuBx2uDL7dmVFv1gRll3dYNMYaMULHYngtrrCynB3Cyfhh7cyPlwuNlk0",
"public": "qREovbmD6oxgHYNCzOeTei07lSz0-YLcjnvgSDzqptsCiqNOtB3RKUToSX5hkPD45fJDY4057XkkcsQRuGsU8y9rgm37i-Kiyd5Z_iy6pJXrwi9XnAgGL118lIV790GZ7xe5o3DvPV3Px74C0ABsfL9lW86D4t_qClJ6wSQksKNd7rnUImIvHW0vxLswST7dfUngevzKt4kv48VTub4951XdUHjb45Uurf7xFYSCizAGtGqr5GYDFrVk-mNrzFH5bXt06PJfxe9E5ujIE5Uq1Az6vqEOO0E1mWmXqdTPluAxcjmgktkoNLHZnnU-BsYuFaTWW5NU3aS-RgJKXYs9O6Dc1-2SITl-H_wtdGNSj31fj72UkaAbkpA1mionK-8bOIkSpYgKCyTC42oHh1Fw4SLXPyLxBj1w6F32LSLjpse5dmKymj4fJPezCMdi709uIiVT7XOm4LZBCzFOxS6-UNxgE57dBFpcWkcqNO3p00biYqH5d5bzvK3bwd-4j0KyKlqPYTProSnd3P6ROZuuJaLoLD_Or5-L_dUjawHz-DFlzmckYaf8l3XdzPM4JSsE8CEDZl0NCN0AidXt_wjbr6k9JsO7cnLB226AjxhcyuxZOlhgkIn7EbxpVXx-O2mXkcXF8PixCP0k5brtriLeF1MAdspgd_S-LKQeGVr7-mk"
}
}
"Insufficient balance"
"Multi-part upload not found"
"Internal server error"
Finalizes a multi-part upload asynchronously.
Path Parameters
The upload id of the multi-part upload.
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
Response Body
curl -X POST "https://upload.ardrive.io/chunks/:token/:uploadId/finalize"
{
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"data": {
"id": "QpmY8mZmFEC8RxNsgbxSV6e36OF6quIYaPRKzvUco0o",
"owner": "8wgRDgvYOrtSaWEIV21g0lTuWDUnTu4_iYj4hmA7PI0",
"dataCaches": [
"arweave.net"
],
"fastFinalityIndexes": [
"arweave.net"
],
"deadlineHeight": 1310000,
"timestamp": 1700590909589,
"version": "0.1.0",
"signature": "iU_S6uuG1OD8k0XqMGOmbcKfysDckEMUy4R9-ODPXiQjKXuT4lTngRFBFKO5NQT1iIfqSDKcbTRL6gJowM_L7bBQZRGkojzXD0PNNU2F0bNNJ80VtUktHifGTXbCgz5kiFciL19n0P3nX6ZfXnOn-H8ALZzRJV69apdvwqitpNKxLMPyc-QA0QBxmC3CKPz_7fy2Qg0QHr5g_ZT2Of-YJ_RsZTEoc3g1fgzsEmMBPOsx4XtPrhV6llnA3pncngzHbPdFvypdWiO8Bvr0EWmazNsoanuwK5uKJ_ROIGXW_dBBGN8Vrfv5U6dJnhJVn5IE7JFlixpFTluF_ICRzbUq2pk_re6jEtW1H3ItH2iN0UeFUw1uDbq3HJW6lDc8aOwDwDspJI11KEI6uCz5QmQy2V8DvRknoqcxmuihF6XmmJIZgTVeo6LNufEis9kFxqtc3Dh_gn8z0cDXKEKFycudckmcHP7vkWD68uSssMMJIdVgwvPZss06svfRnI-E33j3MrQI9FzMIv-7Df8iYATyeyldM1v3gexG0kQm0AMG1_8_SLqwu2QlqzM41mrK5vNmQxOVdIQSOPWPvzbF-YGRwpCjlveRBuARGC9JNC4UipvDYri2gRWuBx2uDL7dmVFv1gRll3dYNMYaMULHYngtrrCynB3Cyfhh7cyPlwuNlk0",
"public": "qREovbmD6oxgHYNCzOeTei07lSz0-YLcjnvgSDzqptsCiqNOtB3RKUToSX5hkPD45fJDY4057XkkcsQRuGsU8y9rgm37i-Kiyd5Z_iy6pJXrwi9XnAgGL118lIV790GZ7xe5o3DvPV3Px74C0ABsfL9lW86D4t_qClJ6wSQksKNd7rnUImIvHW0vxLswST7dfUngevzKt4kv48VTub4951XdUHjb45Uurf7xFYSCizAGtGqr5GYDFrVk-mNrzFH5bXt06PJfxe9E5ujIE5Uq1Az6vqEOO0E1mWmXqdTPluAxcjmgktkoNLHZnnU-BsYuFaTWW5NU3aS-RgJKXYs9O6Dc1-2SITl-H_wtdGNSj31fj72UkaAbkpA1mionK-8bOIkSpYgKCyTC42oHh1Fw4SLXPyLxBj1w6F32LSLjpse5dmKymj4fJPezCMdi709uIiVT7XOm4LZBCzFOxS6-UNxgE57dBFpcWkcqNO3p00biYqH5d5bzvK3bwd-4j0KyKlqPYTProSnd3P6ROZuuJaLoLD_Or5-L_dUjawHz-DFlzmckYaf8l3XdzPM4JSsE8CEDZl0NCN0AidXt_wjbr6k9JsO7cnLB226AjxhcyuxZOlhgkIn7EbxpVXx-O2mXkcXF8PixCP0k5brtriLeF1MAdspgd_S-LKQeGVr7-mk"
}
}
"Insufficient balance"
"Multi-part upload not found"
"Internal server error"
Gets the status of a multi-part upload.
Path Parameters
The upload id of the multi-part upload.
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
Response Body
curl -X GET "https://upload.ardrive.io/chunks/:token/:uploadId/status"
{
"status": "VALIDATING",
"timestamp": 1700590909589
}
"Multi-part upload not found"
"Internal server error"
Posts a chunk of a multi-part upload. ARx compatible.
Path Parameters
The upload id of the multi-part upload.
The token to use for validating the transaction.
"arweave" | "ethereum" | "solana"
The offset of the chunk in bytes. If -1, that will finalize an existing multi-part upload.
A chunk of a multi-part upload
binary
Response Body
curl -X POST "https://upload.ardrive.io/chunks/:token/:uploadId/:chunkOffset" \ -H "Content-Type: application/octet-stream" \ -d 'string'
"Insufficient balance"
"Multi-part upload not found"
"Internal server error"
How is this guide?