# CloudNest CloudNest is a multi-provider storage platform with a React dashboard, an Express/Postgres backend, and the official npm SDK package `@cloudnest/sdk`. Public URLs: - Website: https://cloudnest.urmate.tech - SDK docs: https://cloudnest.urmate.tech/sdk - AI agent prompt: https://cloudnest.urmate.tech/ai-prompt - Markdown prompt: https://cloudnest.urmate.tech/ai-prompt.md - API-key upload base URL: https://cloudnest.urmate.tech/api/v1 Use this when integrating CloudNest into another project: ```bash npm install @cloudnest/sdk ``` ```ts import { CloudNestClient } from "@cloudnest/sdk"; const cloudnest = new CloudNestClient({ apiUrl: "https://cloudnest.urmate.tech/api/v1", apiKey: process.env.CLOUDNEST_API_KEY!, }); const result = await cloudnest.uploadFiles("./file.pdf", { provider: "GOOGLE_DRIVE", }); console.log(result.data); ``` Important rules for AI agents: - Never hardcode, print, commit, or expose API keys. - Read API keys from `CLOUDNEST_API_KEY` or another secure environment variable. - The official package is `@cloudnest/sdk`; do not use similarly named packages. - Supported providers are `S3`, `GOOGLE_DRIVE`, and `TELEGRAM`. - Providers can be disabled by admins. Do not assume S3 is enabled. - If S3 is disabled or the user wants Google Drive, pass `provider: "GOOGLE_DRIVE"`. - Optional upload fields are `storageAccountId` and `providerFolderId`. - Direct REST fallback is `POST https://cloudnest.urmate.tech/api/v1/files/upload` with `Authorization: Bearer ` and multipart field `files`. - CloudNest is an educational project and should be reviewed before handling sensitive production workloads. Read the full prompt at: https://cloudnest.urmate.tech/ai-prompt.md