پرش به مستندات
CLI

فرمان‌ها

یک فرمان چطور خوانده می‌شود، پرچم‌های سراسری، هر فرمان دست‌نوشته و هر فضای نام منابع.

یک فرمان چطور خوانده می‌شود

دستور زبان
openemail <command> [subcommand] [arguments] [flags]
  • پرچم‌ها هر جایی پس از فرمان می‌آیند، پیش یا پس از آرگومان‌ها. پرچم‌های سراسری مانند --profile و --json می‌توانند پیش از فرمان هم بیایند، و هر پرچم دیگری که آنجا گذاشته شود با راهنمایی برای بردنش به پس از نام فرمان متوقف می‌شود.
  • مقدار پس از یک فاصله یا علامت مساوی به دنبال پرچمش می‌آید، پس --limit 50 و --limit=50 یکی‌اند. پرچم‌های کوتاه هم مقدار می‌گیرند، مثل -n 50.
  • مقداری که با خط تیره آغاز می‌شود به علامت مساوی نیاز دارد، مانند --subject=-draft-، چون پس از فاصله پرچم بعدی خوانده می‌شود و برای پرچم نخست گزارش می‌شود که مقدار ندارد. عددهای منفی به هر دو شکل کار می‌کنند. مقدار خالی خطای کاربرد است، نه یک مقدار پیش‌فرض بی‌صدا.
  • یک کلید با --flag روشن و با --no-flag خاموش می‌شود، و --flag=true و --flag=false هم کار می‌کنند.
  • فهرست با ویرگول جدا می‌شود یا تکرار می‌شود: --to [email protected],[email protected]، یا دو بار --to.
  • هر چیزی پس از -- آرگومان است و هرگز پرچم نیست؛ جست‌وجوی -from:ada این‌طور رد می‌شود.
  • فرمان یا پرچم ناشناخته با کد خروج 2 متوقف می‌شود و نزدیک‌ترین مورد را پیشنهاد می‌کند.

پرچم‌های سراسری

پرچمچه می‌کند
-h, --helpراهنمای فرمان یا گروه
-v, --versionچاپ نسخهٔ CLI
--jsonفقط JSON روی stdout، خطاها به‌صورت JSON روی stderr، و هرگز پرسشی نیست
-y, --yesتأیید کارهای ویرانگر بدون پرسش. هرگز از کد تأیید هویت نمی‌گذرد
--profile <name>استفاده از این نمایهٔ ذخیره‌شده، مانند OPENEMAIL_PROFILE
--api-key <key>استفاده از این کلید API فقط برای همین فرمان، بدون توجه به نمایه‌ها
--base-url <url>مبدأ API برای یک کلید API یا فرمانی که اعتبارنامه‌ای نمی‌فرستد، مانند OPENEMAIL_BASE_URL. ورود ذخیره‌شده همیشه مبدأ خودش را به کار می‌برد
--no-inputهرگز نپرس. مقدار گمشده با کد خروج 2 متوقف می‌شود
--no-colorبدون رنگ، مانند NO_COLOR و FORCE_COLOR=0
--debugچاپ شناسه‌های درخواست، درخواست ناموفق و ردپای پشته

فرمان‌های دست‌نوشته

این‌ها برای آدم‌ها نوشته شده‌اند: آنچه را کم است می‌پرسند، خروجی‌شان را قالب‌بندی می‌کنند و هر جا کمک کند چند فراخوانی API را با هم ترکیب می‌کنند.

فرمانچه می‌کند
loginورود با مرورگر، یا ذخیرهٔ یک کلید API
whoamiبا چه کسی وارد شده‌اید، با فضای کاری، دامنه‌های مجوز و انقضا
statusآنچه whoami نشان می‌دهد، به‌علاوهٔ نشانی‌های فرستنده و وضعیت هر دامنه
verifyهمین حالا کد تأیید هویت را وارد کنید تا فرمان‌های حساس 60 دقیقه اجرا شوند
logoutخروج و فراموش کردن یک نمایه
profile list, use, current, removeفهرست کردن، جابه‌جایی و حذف ورودهای ذخیره‌شده
sendفرستادن، زمان‌بندی، یا ترجمه و فرستادن یک ایمیل
inbox [folder]فهرست رشته‌های یک پوشه
search <query>جست‌وجوی نامه با همان نحوی که برنامه به کار می‌برد
read <thread-id>خواندن یک رشته، پیام به پیام
reply <thread-id>پاسخ به آخرین پیام یک رشته
archive, unarchive, trash, star, unstarمرتب کردن یک یا چند رشته
mark read, mark unreadعلامت زدن رشته‌ها به‌عنوان خوانده یا نخوانده
snooze, unsnoozeپنهان کردن رشته‌ها تا بعد، یا برگرداندن آن‌ها همین حالا
label add, label removeگذاشتن برچسب روی رشته‌ها، یا برداشتن آن‌ها
temp new, list, read, watch, deleteصندوق‌های یک‌بارمصرف، بدون ورود
ai translate, languages, compose, summarizeترجمه، نوشتن و خلاصه کردن نامه با هوش مصنوعی
mcp config, tools, call, serveاتصال کلاینت‌های هوش مصنوعی، یا فراخوانی ابزارهای MCP توسط خودتان
docs ask, open, readپرسیدن از این مستندات، باز کردن و خواندن آن
open [page]باز کردن یک صفحه از برنامهٔ وب
api <method> <path>فراخوانی هر نقطهٔ پایانی REST با ورود شما
updateبررسی npm برای انتشار جدیدتر
completion <shell>چاپ یک اسکریپت تکمیل خودکار برای bash، zsh یا fish
versionچاپ نسخه‌های CLI، SDK و محیط اجرا
help [command]نمایش راهنمای هر فرمان

فرمان‌های منبع

هر متد SDK یک فرمان هم هست: openemail <namespace> <verb>. فضای نام همان فضای نام SDK به صورت kebab-case است و فعل نام متد به صورت kebab-case، پس keys.listRequests می‌شود openemail keys list-requests. این‌ها با هم کل REST API را پوشش می‌دهند.

ترمینال
openemail domains listopenemail domains create --domain acme.comopenemail rules create --data @rule.jsonopenemail keys list-requests 9f2c1a4b7e05d3862c1f0a44 --failed-only --allopenemail files download file_6bb640f5b99e47deb758f1f5 --out report.pdf
  • شناسه‌ای که متد می‌گیرد آرگومان است، مثل openemail domains get <id>. هر فیلد بدنهٔ درخواست پرچمی است با نام همان فیلد به صورت kebab-case: replyTo می‌شود --reply-to و color.backgroundColor می‌شود --color-background-color.
  • سه فیلد که پرچمشان با یک پرچم سراسری برخورد می‌کرد نام دیگری گرفته‌اند: --template-version، --label-color و --resend-key.
  • --data کل بدنه را به‌صورت JSON می‌گیرد، درون‌خطی، از یک فایل با @path یا از stdin با -، و هر پرچمی که در کنارش بدهید کلید خودش را بازنویسی می‌کند. پرچمی که یک شیء می‌گیرد JSON را به همین شکل می‌خواند.
  • اعداد و کلیدها همان‌طور که هستند خوانده می‌شوند، و فهرست‌ها با ویرگول جدا یا تکرار می‌شوند.
  • مقدار الزامیِ گمشده در ترمینال پرسیده می‌شود و در هر جای دیگر خطای کاربرد است (کد خروج 2).
  • فعل فهرست یک صفحه می‌خواند. --limit اندازهٔ آن را تعیین می‌کند و --cursor از نشانگری که چاپ کرده ادامه می‌دهد. --all همهٔ صفحه‌ها را می‌خواند و موارد را جریانی می‌فرستد، --max <n> پس از همان تعداد می‌ایستد و --ndjson در هر سطر یک شیء JSON چاپ می‌کند.
  • هر کار ویرانگری، مثل حذف، ابطال، چرخاندن، لغو یا خالی کردن، از شما تأیید می‌خواهد، مگر اینکه --yes بدهید.
  • دانلود در فایلِ --out نوشته می‌شود و فقط وقتی روی stdout می‌رود که stdout ترمینال نباشد.

openemail <namespace> <verb> --help هر آرگومان و پرچم را با نوعش، دامنه‌های مجوزی که فراخوانی لازم دارد، متد و مسیر آن، آنچه برمی‌گرداند و یادداشت‌های مرجع API نشان می‌دهد.

همهٔ فضاهای نام

ستون «همچنین» نام‌های دیگری را فهرست می‌کند که فضای نام به آن‌ها پاسخ می‌دهد.

فضای نامهمچنینفعل‌ها
meget, ping, rotate
keyskeylist, get, create, update, delete, rotate, revoke, list-requests, list-activity, list-workspace-requests, list-workspace-activity
addressesaddresslist
languageslanguagelist
emailsemailsend, send-batch, translate, list, get, list-events, get-tracking, cancel, reschedule
templatestemplatelist, get, create, update, duplicate, replace-content, delete, list-versions, get-version, publish, restore-version, delete-version, list-starters, get-starter, list-fonts, render, preview, get-analytics, list-sends, send
trackinglist, get-stats, get, list-opens, list-clicks
threadsthreadlist, get, update, trash, snooze, unsnooze, list-attachments
draftsdraftlist, get, create, update, delete
labelslist, list-colors, get, create, update, delete
contactscontactlist, get, create, update, delete, set-audiences, list-people, save, delete-many, set-photo, remove-photo, block, unblock, list-threads, activity
audiencesaudiencelist, growth, get, create, update, delete, empty, list-contacts, add-contact, remove-contact, add-contacts, remove-contacts, import-contacts
broadcastsbroadcastpreview, send, list, get, stats, list-recipients, get-recipient, cancel
domainsdomainlist, get, create, verify, update, delete, list-addresses, create-address, get-address, update-address, delete-address
rulesrulelist, get, create, update, delete, reorder, test, list-runs
webhookswebhooklist, get, create, update, delete, rotate-secret, test, list-deliveries, get-delivery, replay-delivery, list-workspace-deliveries, list-activity, list-workspace-activity
importsimportlist, get, create, upload-state, upload-chunk, start, cancel, list-failures, delete-upload, import-files
provider-importsprovider-import, providerImportsinspect, create, list, get, cancel
calendarlist-events, get-event, get-event-ics
settingssettingget, update
rolesrolelist, get, create, update, delete, list-permissions
membersmemberlist, get, add, update, remove, grant-address, revoke-address, list-invitations, revoke-invitation, resend-invitation
suppressionssuppressionlist, get, add, remove
filesfilelist, get, stats, download, list-links, create-link, revoke-link, upload, delete, delete-many
temp-mailtempMaillist-domains, create, get, extend, delete, list-messages, get-message, delete-message, list-attachments

نام‌های مستعار

نام مستعاربه جای
lslist
show, viewget
new, addcreate
editupdate
rm, del, removedelete
openemail lsopenemail inbox
openemail showopenemail read

در members و suppressions که فعل‌هایشان add و remove است، new و create به add می‌رسند و rm، del و delete به remove. برخی زیرفرمان‌های دست‌نوشته نام‌های مستعار خودشان را دارند که راهنمایشان فهرست می‌کند.

هر فراخوانی REST

openemail api <method> <path> یک درخواست را از همان مسیر انتقالی که هر فرمان دیگر به کار می‌برد به REST API می‌فرستد، پس نمایه یا کلید شما، نوسازی توکن و کدهای تأیید هویت همه اعمال می‌شوند. یک مسیر به‌تنهایی یک GET است. پاسخ JSON قالب‌بندی‌شده چاپ می‌شود، و درخواست ناموفق خطای API را چاپ می‌کند و با کد متناظر خارج می‌شود.

ترمینال
openemail api /keys/selfopenemail api GET /threads --query folder=inbox --query limit=5openemail api POST /labels --data '{"name":"Receipts"}'openemail api PATCH /threads/CAHk7pQ2x9LmZ4 --data @patch.jsonopenemail api GET /files/file_6bb640f5b99e47deb758f1f5/content --out report.pdf
  • -d، --data بدنه را به‌صورت JSON درون‌خطی، از یک فایل با @path یا از stdin با - می‌گیرد. -q، --query و -H، --header مقدار key=value می‌گیرند و می‌توانند تکرار شوند، و -o، --out پاسخ را همان‌طور که رسیده در یک فایل ذخیره می‌کند.
  • مسیر نسبت به مبدأ API است. نشانی کامل، مسیری که از مبدأ بیرون برود و سرآیند Authorization پیش از فرستادن هر چیزی با کد خروج 2 رد می‌شوند، چون CLI اعتبارنامه را خودش تنظیم می‌کند.

راهنما

ترمینال
openemail --helpopenemail help sendopenemail domains --helpopenemail domains create --help

openemail --help هر فرمان را بر اساس کاربردش فهرست می‌کند. یک گروه زیرفرمان‌هایش را با نمونه فهرست می‌کند و یک فرمان هر چه را می‌گیرد نشان می‌دهد. openemail docs open cli این صفحه‌ها را باز می‌کند.

صندوق ورودی شما،
با شرایط خودتان.

زیرساخت ایمیل برای کسب‌وکارها، هوش مصنوعی، عامل‌ها و ایمیل شخصی. ساخته‌شده برای مقیاس، حریم خصوصی و کنترل. هر چه ایمیل باید از روز نخست می‌داشت.

OpenEmail

زیرساخت ایمیل برای کسب‌وکارها، هوش مصنوعی، عامل‌ها و ایمیل شخصی. ساخته‌شده برای مقیاس، حریم خصوصی و کنترل. هر چه ایمیل باید از روز نخست می‌داشت.

© 2026 OpenEmail. همه حقوق محفوظ است.