> ## Documentation Index
> Fetch the complete documentation index at: https://docs.so-me.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# মিডিয়া

> মিডিয়া ফাইল ও ফোল্ডার আপলোড, সাজানো ও পরিচালনা করুন

মিডিয়া কমান্ড আপনার মিডিয়া লাইব্রেরির ফাইল ও ফোল্ডার পরিচালনা করে। বেশিরভাগ কমান্ড ফাইল ও ফোল্ডারের জন্য **UUID** অথবা **নাম** গ্রহণ করে — কোনো নাম একাধিক আইটেমের সাথে মিলে গেলে CLI ইন্টারেক্টিভভাবে একটি বেছে নিতে বলে।

> [!NOTE]
>
> নামের শুরুতে UUID থাকতে পারে (যেমন `f200d255-...-photo.pdf`)। CLI শুরুর UUID স্বয়ংক্রিয়ভাবে আলাদা করে নেয়, ওই খোঁজ ব্যর্থ হলে নাম দিয়ে অনুসন্ধানে ফিরে যায়।

## ফাইল

### media:upload

মিডিয়া লাইব্রেরিতে একটি ফাইল আপলোড করুন। presigned URL তৈরি ও S3-তে আপলোড CLI স্বয়ংক্রিয়ভাবে সামলায়।

```bash theme={null}
so-me media:upload [file] [options]
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `[file]` | ফাইলের পাথ। প্রম্পট পেতে বাদ দিন (ড্র্যাগ অ্যান্ড ড্রপ সমর্থিত — ঘিরে থাকা কোটেশন/হোয়াইটস্পেস বাদ দেওয়া হয়)। |

| অপশন | বিবরণ |
| - | - |
| `--folder <id-or-name>` | নির্দিষ্ট ফোল্ডারে আপলোড করুন (UUID বা নাম দিয়ে নির্ণীত) |

MIME টাইপ ফাইলের এক্সটেনশন থেকে অনুমান করা হয়। স্বীকৃত এক্সটেনশন:

| ধরন | এক্সটেনশন |
| - | - |
| ছবি | `.png`, `.jpg`, `.jpeg`, `.gif`, `.webp`, `.svg` |
| ভিডিও | `.mp4`, `.mov`, `.avi`, `.webm` |
| অডিও | `.mp3`, `.wav` |
| ডকুমেন্ট | `.pdf` |

অন্য যেকোনো এক্সটেনশন `application/octet-stream` হিসেবে আপলোড হয়।

```bash উদাহরণ theme={null}
# Upload an image
so-me media:upload ./photo.jpg

# Upload into a folder (by name)
so-me media:upload ./banner.png --folder "Campaign Assets"

# Interactive — prompts for a path (drag & drop a file)
so-me media:upload
```

```json রেসপন্স theme={null}
{
  "fileId": "f200d255-...",
  "url": "https://cdn.so-me.studio/...",
  "filename": "photo.jpg",
  "size": 1024000
}
```

### media:list

মিডিয়া ফাইল ও ফোল্ডারের তালিকা দেখুন। `--folder` দিলে ওই ফোল্ডারের ভেতরের বিষয়বস্তু দেখায়;
`--file` দিলে একটি ফাইলের বিবরণ ফেরত দেয়।

```bash theme={null}
so-me media:list [options]
```

| অপশন | বিবরণ |
| - | - |
| `--folder <id-or-name>` | নির্দিষ্ট ফোল্ডারের বিষয়বস্তুর তালিকা দেখুন (UUID বা নাম দিয়ে নির্ণীত) |
| `--file <id-or-name>` | নির্দিষ্ট ফাইলের বিবরণ আনুন (UUID, UUID-প্রিফিক্সযুক্ত নাম, বা নাম অনুসন্ধান দিয়ে নির্ণীত) |

```bash উদাহরণ theme={null}
# List all media as a table
so-me media:list --table

# List files inside a folder
so-me media:list --folder "Campaign Assets"

# Get a specific file by name
so-me media:list --file "banner.png"
```

> [!TIP]
>
> নাম বা UUID দিয়ে ফাইল ও ফোল্ডার নির্দেশ করতে পারেন। একাধিক আইটেম কোনো নামের সাথে মিললে CLI একটি বেছে নিতে বলে।

### media:search

সব ফোল্ডার জুড়ে নাম দিয়ে মিডিয়া ফাইল অনুসন্ধান করুন।

```bash theme={null}
so-me media:search <term>
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<term>` | ফাইলের নামের সাথে মেলানো অনুসন্ধান শব্দ |

```bash উদাহরণ theme={null}
so-me media:search "banner"
```

### media:get

UUID দিয়ে নির্দিষ্ট একটি মিডিয়া ফাইলের বিস্তারিত মেটাডেটা আনুন।

```bash theme={null}
so-me media:get <id>
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<id>` | ফাইল UUID |

```bash উদাহরণ theme={null}
so-me media:get f200d255-1234-4abc-89de-0123456789ab
```

### media:delete

এক বা একাধিক মিডিয়া ফাইল, অথবা একটি ফোল্ডার মুছুন। ডিফল্টভাবে লক্ষ্যের ধরন `file`; এর বদলে ফোল্ডার মুছতে `--type folder` দিন। আইটেম UUID বা নাম দিয়ে নির্দেশ করা যায়।

```bash theme={null}
so-me media:delete <items...> [options]
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<items...>` | এক বা একাধিক ফাইল/ফোল্ডার ID বা নাম |

| অপশন | বিবরণ | ডিফল্ট |
| - | - | - |
| `--type <type>` | লক্ষ্যের ধরন: `file` বা `folder` | `file` |
| `-y, --yes` | নিশ্চিতকরণ প্রম্পট এড়িয়ে যান | — |

ফাইল মোছার সময় একটি ফাইল সরাসরি সরানো হয়, আর একাধিক ফাইলের জন্য বাল্ক-ডিলিট এন্ডপয়েন্ট ব্যবহৃত হয়। একসাথে শুধু **একটি** ফোল্ডার মোছা যায়।

```bash উদাহরণ theme={null}
# Delete a file by name
so-me media:delete "old-photo.jpg"

# Delete multiple files, skipping confirmation
so-me media:delete file-id-1 file-id-2 -y

# Delete a folder and all its contents
so-me media:delete "Old Assets" --type folder
```

> [!WARNING]
>
> ফোল্ডার মুছলে এর ভেতরের সব ফাইলও মুছে যায়। এটি ফেরানো যায় না।

### media:bulk-delete

UUID দিয়ে একাধিক মিডিয়া ফাইল মুছুন। ID আগে থেকেই থাকলে এবং একটি বাল্ক অপারেশন চাইলে কাজের।

```bash theme={null}
so-me media:bulk-delete <ids...> [options]
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<ids...>` | এক বা একাধিক ফাইল UUID |

| অপশন | বিবরণ |
| - | - |
| `-y, --yes` | নিশ্চিতকরণ প্রম্পট এড়িয়ে যান |

```bash উদাহরণ theme={null}
so-me media:bulk-delete file-id-1 file-id-2 file-id-3
so-me media:bulk-delete file-id-1 file-id-2 -y
```

### media:move

একটি ফাইল বা ফোল্ডার অন্য জায়গায় সরান। সোর্স ফাইল ও ফোল্ডার দুটোর মধ্যেই খোঁজা হয় — কোনো নাম একাধিক আইটেমের সাথে মিললে আপনাকে বেছে নিতে বলা হয়।

```bash theme={null}
so-me media:move <id-or-name> --to <folder-id-or-name>
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<id-or-name>` | যে ফাইল বা ফোল্ডার সরাতে চান তার ID বা নাম |

| অপশন | বিবরণ |
| - | - |
| `--to <folder-id-or-name>` | গন্তব্য ফোল্ডারের ID, নাম, বা `root` **(আবশ্যক)** |

```bash উদাহরণ theme={null}
# Move a file into a folder
so-me media:move "banner.png" --to "Campaign Assets"

# Move a file back to the root
so-me media:move "banner.png" --to root

# Move a folder into another folder
so-me media:move "Old Folder" --to "Archive"
```

### media:rename

একটি ফাইল বা ফোল্ডারের নাম পরিবর্তন করুন। ডিফল্টভাবে ফাইলের নাম বদলায়; ফোল্ডারের নাম বদলাতে `--type folder` দিন।

```bash theme={null}
so-me media:rename <id-or-name> --name <new-name> [options]
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<id-or-name>` | ফাইল বা ফোল্ডারের ID বা নাম |

| অপশন | বিবরণ | ডিফল্ট |
| - | - | - |
| `--name <new-name>` | নতুন নাম **(আবশ্যক)** | — |
| `--type <type>` | লক্ষ্যের ধরন: `file` বা `folder` | `file` |

```bash উদাহরণ theme={null}
so-me media:rename "banner.png" --name "launch-banner.png"
so-me media:rename "Assets" --name "2026 Assets" --type folder
```

***

## ফোল্ডার

### media:folders

সব মিডিয়া ফোল্ডারের তালিকা দেখুন।

```bash theme={null}
so-me media:folders
```

```bash উদাহরণ theme={null}
so-me media:folders --table
```

### media:create-folder

একটি মিডিয়া ফোল্ডার তৈরি করুন, ঐচ্ছিকভাবে বিদ্যমান প্যারেন্ট ফোল্ডারের ভেতরে।

```bash theme={null}
so-me media:create-folder --name <name> [options]
```

| অপশন | বিবরণ |
| - | - |
| `--name <name>` | ফোল্ডারের নাম **(আবশ্যক)** |
| `--parent <id-or-name>` | প্যারেন্ট ফোল্ডারের ID বা নাম (নেস্টেড ফোল্ডার তৈরি করে) |

```bash উদাহরণ theme={null}
# Create a top-level folder
so-me media:create-folder --name "Campaign Assets"

# Create a nested folder under an existing parent
so-me media:create-folder --name "Q3" --parent "Campaign Assets"
```

### media:rename-folder

একটি মিডিয়া ফোল্ডারের নাম পরিবর্তন করুন। (`media:rename --type folder`-এর সমতুল্য।)

```bash theme={null}
so-me media:rename-folder <id-or-name> --name <new-name>
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<id-or-name>` | ফোল্ডারের ID বা নাম |

| অপশন | বিবরণ |
| - | - |
| `--name <new-name>` | নতুন নাম **(আবশ্যক)** |

```bash উদাহরণ theme={null}
so-me media:rename-folder "Assets" --name "2026 Assets"
```

### media:move-folder

একটি ফোল্ডার অন্য প্যারেন্ট ফোল্ডারে সরান। (ফোল্ডারে `media:move` চালানোর সমতুল্য।)

```bash theme={null}
so-me media:move-folder <id-or-name> --to <parent-id-or-name>
```

| আর্গুমেন্ট | বিবরণ |
| - | - |
| `<id-or-name>` | ফোল্ডারের ID বা নাম |

| অপশন | বিবরণ |
| - | - |
| `--to <parent-id-or-name>` | লক্ষ্য প্যারেন্ট ফোল্ডারের ID, নাম, বা `root` **(আবশ্যক)** |

```bash উদাহরণ theme={null}
# Nest a folder under another
so-me media:move-folder "Q3" --to "Campaign Assets"

# Move a folder back to the root
so-me media:move-folder "Q3" --to root
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.