{ "opencollection": "1.0.0", "info": { "name": "Auto Drive APIs Auto Drive API API", "version": "1.1.0" }, "request": { "auth": { "type": "apikey", "key": "Authorization", "value": "{{Authorization}}", "placement": "header" } }, "items": [ { "info": { "name": "Auto Drive API", "type": "folder" }, "items": [ { "info": { "name": "Accounts - Get current user account information", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/accounts/@me" }, "docs": "Accounts - Get current user account information" }, { "info": { "name": "Uploads - Upload a file", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/uploads/file", "body": { "type": "json", "data": "{}" } }, "docs": "Uploads - Upload a file" }, { "info": { "name": "Uploads - Create a new folder upload", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/uploads/folder", "body": { "type": "json", "data": "{}" } }, "docs": "Uploads - Create a new folder upload" }, { "info": { "name": "Uploads - Create a file in a folder provided by the folder upload id", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/uploads/folder/:folderUploadId/file", "params": [ { "name": "folderUploadId", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Uploads - Create a file in a folder provided by the folder upload id" }, { "info": { "name": "Uploads - Upload a chunk of a file", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/uploads/file/:uploadId/chunk", "params": [ { "name": "uploadId", "value": "", "type": "path" } ], "body": { "type": "multipart-form", "data": [ { "name": "file", "type": "text", "value": "" }, { "name": "index", "type": "text", "value": "" } ] } }, "docs": "Uploads - Upload a chunk of a file" }, { "info": { "name": "Uploads - Complete the upload returning the file or folder CID", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/uploads/:uploadId/complete", "params": [ { "name": "uploadId", "value": "", "type": "path" } ] }, "docs": "Uploads - Complete the upload returning the file or folder CID" }, { "info": { "name": "Objects - Get root objects", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/roots", "params": [ { "name": "scope", "value": "", "type": "query" }, { "name": "limit", "value": "", "type": "query" }, { "name": "offset", "value": "", "type": "query" } ] }, "docs": "Objects - Get root objects" }, { "info": { "name": "Objects - Get shared root objects", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/roots/shared", "params": [ { "name": "limit", "value": "", "type": "query" }, { "name": "offset", "value": "", "type": "query" } ] }, "docs": "Objects - Get shared root objects" }, { "info": { "name": "Objects - Get deleted root objects", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/roots/deleted", "params": [ { "name": "limit", "value": "", "type": "query" }, { "name": "offset", "value": "", "type": "query" } ] }, "docs": "Objects - Get deleted root objects" }, { "info": { "name": "Objects - Search for objects by CID or name", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/search", "params": [ { "name": "cid", "value": "", "type": "query", "description": "The CID or name of the object to search for" }, { "name": "scope", "value": "", "type": "query", "description": "The scope of the search" }, { "name": "limit", "value": "", "type": "query", "description": "The maximum number of results to return" } ] }, "docs": "Objects - Search for objects by CID or name" }, { "info": { "name": "Objects - Get summary of an object by CID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/:cid/summary", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Get summary of an object by CID" }, { "info": { "name": "Objects - Get metadata of an object by CID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/:cid/metadata", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Get metadata of an object by CID" }, { "info": { "name": "Objects - Get upload status of an object by CID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/:cid/status", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Get upload status of an object by CID" }, { "info": { "name": "Objects - Share an object by CID", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/objects/:cid/share", "params": [ { "name": "cid", "value": "", "type": "path" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Objects - Share an object by CID" }, { "info": { "name": "Objects - Download an object by CID", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/:cid/download", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Download an object by CID" }, { "info": { "name": "Objects - Delete an object by CID", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/objects/:cid/delete", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Delete an object by CID" }, { "info": { "name": "Objects - Restore a deleted object by CID", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/objects/:cid/restore", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Restore a deleted object by CID" }, { "info": { "name": "Objects - Publish an object by CID and return the object id", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/objects/:cid/publish", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Publish an object by CID and return the object id" }, { "info": { "name": "Objects - Unpublish an object by CID", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/objects/:cid/unpublish", "params": [ { "name": "cid", "value": "", "type": "path" } ] }, "docs": "Objects - Unpublish an object by CID" }, { "info": { "name": "Objects - Download a published object by id", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/objects/:id/public", "params": [ { "name": "id", "value": "", "type": "path" } ] }, "docs": "Objects - Download a published object by id" }, { "info": { "name": "Intents - Get current storage price", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/intents/price" }, "docs": "Returns the current price per byte (in shannons) and price per GB (in AI3). This endpoint does not require authentication." }, { "info": { "name": "Intents - Get smart contract info", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/intents/contract" }, "docs": "Returns the on-chain contract address, EVM chain ID, and the minimal ABI needed to call `payIntent`. This endpoint does not require authentication. Use this to build the on-chain transaction for step 4 of the integration flow." }, { "info": { "name": "Intents - Create a purchase intent", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/intents" }, "docs": "Creates a PENDING intent with the current price locked in. The intent has a time-limited price-lock window (default 10 minutes) during which the price is guaranteed.\n\n**Authentication:** Currently requires a Google-verified account. You can authenticate via:\n- Google OAuth session\n- API key from a Google-registered account (set `X-Auth-Provider: apikey`)\n\n**Third-party integration pattern:**\n1. Create an Auto Drive account via Google OAuth at https://ai3.storage\n2. Generate an API key from the d" }, { "info": { "name": "Intents - Get intent status", "type": "http" }, "http": { "method": "GET", "url": "{{baseUrl}}/intents/:id", "params": [ { "name": "id", "value": "", "type": "path", "description": "The intent ID returned by POST /intents" } ] }, "docs": "Returns the current status of a purchase intent. Use this to poll for completion after calling `/intents/:id/watch`." }, { "info": { "name": "Intents - Submit transaction hash for watching", "type": "http" }, "http": { "method": "POST", "url": "{{baseUrl}}/intents/:id/watch", "params": [ { "name": "id", "value": "", "type": "path", "description": "The intent ID" } ], "body": { "type": "json", "data": "{}" } }, "docs": "Attaches a transaction hash to a pending intent and queues on-chain confirmation watching. Call this after the user has submitted the `payIntent` transaction on-chain." } ] } ], "bundled": true }