• Townie
    AI
  • Blog
  • Docs
  • Pricing
  • We’re hiring!
Log inSign up
damixnr

damixnr

OpenCloset

Remix of laurynas/ChatAppSDKStarter
Public
Like
OpenCloset
Home
Code
10
backend
5
frontend
2
shared
4
.vtignore
OPENCLOSET.md
README.md
TESTING.md
TROUBLESHOOTING.md
WIDGET_REGISTRATION.md
deno.json
Branches
1
Pull requests
Remixes
History
Environment variables
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
Sign up now
Code
/
TROUBLESHOOTING.md
Code
/
TROUBLESHOOTING.md
Search
…
TROUBLESHOOTING.md

OpenCloset Troubleshooting Guide

Common Error: "Failed to upload image: cloud_name is disabled"

This error indicates a Cloudinary configuration issue. Follow these steps to resolve it:

Step 1: Check Environment Variables

In Val Town, go to your project β†’ Environment Variables and verify these are set:

Required:

  • CLOUDINARY_CLOUD_NAME - Your Cloudinary cloud name

Choose ONE of these options:

Option A: Unsigned Upload (Easier)

  • CLOUDINARY_UPLOAD_PRESET - Your unsigned upload preset name

Option B: Signed Upload

  • CLOUDINARY_API_KEY - Your Cloudinary API key
  • CLOUDINARY_API_SECRET - Your Cloudinary API secret

Step 2: Get Your Cloudinary Credentials

  1. Go to Cloudinary Dashboard
  2. Sign up for a free account if you don't have one
  3. Copy your credentials from the dashboard:
    • Cloud Name: Found at the top of the dashboard
    • API Key: Found in the "Account Details" section
    • API Secret: Found in the "Account Details" section (click "Reveal")

Step 3: Set Up Upload Preset (Recommended)

For easier setup, create an unsigned upload preset:

  1. In Cloudinary dashboard, go to Settings β†’ Upload
  2. Scroll down to Upload presets
  3. Click Add upload preset
  4. Set Signing Mode to Unsigned
  5. Give it a name (e.g., "opencloset")
  6. Click Save
  7. Add CLOUDINARY_UPLOAD_PRESET=your_preset_name to Val Town environment variables

Step 4: Test Your Configuration

Use the debug tool in ChatGPT:

Test my Cloudinary configuration

This will run the opencloset.test_cloudinary tool and show you:

  • Which environment variables are set
  • Whether a test upload works
  • Specific error messages if something is wrong

Step 5: Common Issues and Solutions

Issue: "cloud_name is disabled"

Solution: Your Cloudinary account might be suspended or the cloud name is incorrect.

  • Verify your account is active in the Cloudinary dashboard
  • Double-check the cloud name spelling

Issue: "Invalid API Key"

Solution: Your API credentials are incorrect.

  • Re-copy the API key and secret from Cloudinary dashboard
  • Make sure there are no extra spaces in the environment variables

Issue: "Upload preset not found"

Solution: The upload preset doesn't exist or is named incorrectly.

  • Check the preset name in Cloudinary dashboard
  • Ensure it's set to "Unsigned" mode

Issue: "Signature does not match"

Solution: There's an issue with the signed upload.

  • Try using an unsigned upload preset instead
  • Verify your API secret is correct

Step 6: Alternative Testing

If you want to test Cloudinary directly, you can use curl:

# Test unsigned upload curl -X POST \ https://api.cloudinary.com/v1_1/YOUR_CLOUD_NAME/image/upload \ -F "file=https://images.unsplash.com/photo-1521572163474-6864f9cf17ab" \ -F "upload_preset=YOUR_PRESET_NAME"

Replace YOUR_CLOUD_NAME and YOUR_PRESET_NAME with your actual values.

Step 7: Environment Variable Format

Make sure your environment variables are set exactly like this in Val Town:

CLOUDINARY_CLOUD_NAME=mycloud
CLOUDINARY_UPLOAD_PRESET=opencloset

NOT like this:

CLOUDINARY_CLOUD_NAME="mycloud"  ❌ (no quotes)
CLOUDINARY_CLOUD_NAME= mycloud   ❌ (no spaces)

Getting Help

If you're still having issues:

  1. Run the test tool: "Test my Cloudinary configuration"
  2. Check the server logs in Val Town for detailed error messages
  3. Verify your Cloudinary account is active and not suspended
  4. Try creating a new upload preset with a different name

Quick Setup Checklist

  • Cloudinary account created
  • Cloud name copied to CLOUDINARY_CLOUD_NAME
  • Upload preset created and set to "Unsigned"
  • Preset name copied to CLOUDINARY_UPLOAD_PRESET
  • Test tool shows "βœ… Test upload successful"
  • Try uploading a clothing photo: "Add this to my closet as a top"
FeaturesVersion controlCode intelligenceCLI
Use cases
TeamsAI agentsSlackGTM
DocsShowcaseTemplatesNewestTrendingAPI examplesNPM packages
PricingNewsletterBlogAboutCareers
We’re hiring!
Brandhi@val.townStatus
X (Twitter)
Discord community
GitHub discussions
YouTube channel
Bluesky
Open Source Pledge
Terms of usePrivacy policyAbuse contact
Β© 2025 Val Town, Inc.