---
name: arcads-upload
description: Discover and invoke the ARCADS_UPLOAD directory capability using its live contract. Use when a request maps to this exact capability.
---

# ARCADS_UPLOAD

This Skill is the behavioral expression of [the ARCADS_UPLOAD directory article](/a/directory/ARCADS_UPLOAD). The directory row remains the executable contract.

## Operate

1. Read GET /api/directory/ARCADS_UPLOAD immediately before use.
2. Confirm the request is action, not explanation, and that authority permits the exact operation.
3. Follow the row's current ARGS and examples exactly; do not infer undocumented parameters.
4. Invoke POST /api/dispatch with {"key":"ARCADS_UPLOAD","body":"<row-shaped args>"}.
5. Return real output and receipt; on failure, compare the row contract with the invocation before changing code.

## Human explanation

# WHAT: Upload a file to ArcAds (presign + S3 PUT). Returns {filePath,fileId}; pass filePath in referenceImages. fileType e.g. image/png, image/jpeg, video/mp4, audio/mp3 # WHEN_TO_USE: you need to arcads upload # ARGS: source_url|file_type # EX: [ARCADS_UPLOAD]arg1|arg2[/ARCADS_UPLOAD] ["$1","$2"]
