Skip to content

Zoho: Upload files to ZFS

Zoho files.uploadFiles: arguments, response, policy and SDK examples.

← Files operations · Get started

Operation zoho.uploadfiles

Provider route: POST /crm/v8/files. Alter supplies the connection’s credentials and routing.

Install @alter-ai/sdk @alter-ai/zoho with npm, or alter-sdk-zoho with pip. Supply your connected customer’s grant ID and the arguments described below.

import { App } from "@alter-ai/sdk";
import { ZohoIntegration } from "@alter-ai/zoho";
async function execute(input: Parameters<ZohoIntegration["files"]["uploadFiles"]>[0]) {
const app = new App({ apiKey: process.env.ALTER_API_KEY! });
try {
const provider = new ZohoIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! });
const call = await provider.files.uploadFiles(input);
const result = await call.wait();
return result.bodyJson();
} finally {
await app.close();
}
}
import os
from alter_sdk import App
from alter_sdk_zoho import ZohoIntegration
async def execute(arguments):
async with App(api_key=os.environ["ALTER_API_KEY"]) as app:
provider = ZohoIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]})
call = await provider.files.upload_files(arguments)
result = await call.wait()
return result.body_json()
FieldTypePresenceDescription and constraints
$objectRootAdditional keys: not allowed
queryobjectOptionalAdditional keys: not allowed
query.inlinestringOptionalOne of: inline
bodyobjectRequired within parentMultipart form data for uploading one or more files to the Zoho File System.
Additional keys: not allowed
body.filearrayRequired within parentUpload one or more files using repeated file keys in the multipart form data.
Maximum items: 10
body.file[]objectEach itemSpecify the binary content of the file to upload.
Additional keys: not allowed
body.file[].filenamestringRequired within parentMinimum length: 1
body.file[].content_typestringRequired within parentMinimum length: 1
body.file[].content_base64stringRequired within parent

Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.

FieldTypePresenceDescription and constraints
$objectRootRepresents the response schema for a successful file upload to the Zoho File System.
Additional keys: not allowed
dataarrayRequired within parentContains the array of upload results, one object per file submitted in the request. The order corresponds to the order of files in the multipart request.
Maximum items: 10
Minimum items: 1
data[]objectEach itemRepresents the upload result for a single file, including its status, success code, and file metadata.
Additional keys: not allowed
data[].codestringRequired within parentRepresents the success code for the upload operation. Possible values: SUCCESS - The file uploaded to ZFS without errors.
Known values: SUCCESS
data[].detailsobjectRequired within parentContains the file metadata for the uploaded file, including the unique identifier for CRM record association.
Additional keys: not allowed
data[].details.idstringRequired within parentUnique file identifier in ZFS. Use this ID to attach the file to CRM records or retrieve it via GET /files
Maximum length: 150
Minimum length: 1
data[].details.namestringRequired within parentRepresents the original filename as provided in the upload request.
Maximum length: 500
Minimum length: 1
data[].messagestringRequired within parentRepresents the success message confirming the file upload.
Maximum length: 500
data[].statusstringRequired within parentRepresents the upload result status. Possible values: success - The file uploaded to ZFS without errors.
Known values: success

SDK function policy ID: zoho.uploadfiles. Catalog operation: uploadFiles. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.

Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.

Official provider source

Report an issue with this page

Necessary

Required for sign-in, security, authorization, and remembering your choices.

Always active

Analytics

Helps us understand which product and documentation features are useful.

Performance diagnostics

Uses performance tracing and privacy-masked session replay to diagnose problems.

You can change these choices at any time from Cookie settings.