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

کمکی‌ها و ثابت‌ها

آنچه بسته جز متدهای کلاینت تعریف می‌کند.

متدهای ایستا

متدچیست
new OpenEmail(), OpenEmail.builder()یک کلاینت. هر دو برای هر چه ننویسید محیط را می‌خوانند.
OpenEmail.createTempMail()کلاینتی برای صندوق‌های یک‌بارمصرف که هیچ کلید API حمل نمی‌کند.
OpenEmail.verifyWebhookSignature()امضای یک تحویل را در زمان ثابت بررسی می‌کند، با پنجره‌ای پنج‌دقیقه‌ای که یک Duration تغییرش می‌دهد، و رویداد را برمی‌گرداند.
OpenEmail.toBase64()متن base64 برای بایت‌های یک پیوست.
OpenEmail.isApiKey()اینکه آیا یک مقدار شکل oe_live_ یا oe_test_ را دارد. بررسی شکل است، نه اثبات اینکه کلید هنوز کار می‌کند.
OpenEmail.isAccessToken()اینکه آیا یک مقدار شکل یک توکن دسترسی OAuth را دارد: 1 تا 512 نویسه، که با oe_ آغاز نمی‌شود.
OpenEmail.isSealed()اینکه آیا بدنهٔ یک پیام متن رمز است. برای دو قالب امضاشده که بدنه‌شان آشکار رسیده false است.
OpenEmail.resolveLanguage(), OpenEmail.languageByCode(), OpenEmail.isRtlLanguage()جست‌وجوهایی که یک انتخابگر زبان لازم دارد، روی جدول همراه Languages.ALL.
client.raw().request()مسیری را که هنوز هیچ متدی آن را نمی‌پوشاند، با اعتبارنامه و سیاست تلاش دوبارهٔ کلاینت فراخوانی می‌کند.

ثابت‌ها

هر مجموعه مقداری که TypeScript SDK صادر می‌کند یک کلاس final در uk.openemail.constants است، با یک ثابت برای هر عضو و با همان نام‌ها، پس WebhookEvents.EMAIL_DELIVERED همان email.delivered است. values() کل مجموعه را برمی‌گرداند، و راه بررسی مقداری که از بیرون آمده نیز همین است.

Constants.java
List<String> events = WebhookEvents.values();List<String> scopes = List.of(ApiScopes.EMAILS_SEND, ApiScopes.THREADS_READ);boolean known = events.contains("email.delivered"); System.out.println(events.size() + " " + String.join(",", scopes) + " " + PageLimits.MAX_LIMIT + " " + known);
ثابتمحتوای آن
OpenEmail.VERSIONنسخهٔ پکیج.
ApiScopesواژگان اسکوپ‌ها، برای صفحهٔ ساخت کلید.
WebhookEvents, WebhookSignatureHeadersرویدادهایی که یک اندپوینت می‌تواند مشترکشان شود، و نام هدرهایی که یک تحویل با خود دارد.
ErrorTypesواژگان خطایی که ApiException.type() برمی‌گرداند.
PageLimitsبزرگ‌ترین limit و مقدار پیش‌فرض آن در بیشتر فهرست‌های صفحه‌بندی‌شده، MAX_LIMIT و DEFAULT_LIMIT: 100 و 25. چند فهرست بیشتر می‌پذیرند، و مرجع هر متد این را می‌گوید.
RuleFields, RuleOperators, RuleActionsواژگانی که شرط‌ها و کنش‌های یک قاعده از آن ساخته می‌شوند.
MessageEncryptionFormatsپنج پاکتی که فرایند دریافت می‌تواند نام ببرد. سه‌تای آن‌ها مهروموم‌شده‌اند.
CredentialKinds, StepUpMethods, StepUpErrorCodesاینکه me().get و me().ping کدام اعتبارنامه را توصیف می‌کنند، یک کد تأیید چگونه بررسی می‌شود، و کدهایی که یک تأیید می‌تواند با آن‌ها شکست بخورد.
ThreadSorts، PeopleSorts، FileSorts و دیگر *Sortsهاترتیب‌هایی که یک فهرست می‌تواند بر اساس آن‌ها مرتب شود.
FormStatuses، BroadcastStatuses، SuppressionReasons و دیگر مجموعه‌هامقدارهایی که یک فیلد از یک منبع می‌تواند بگیرد. هر مجموعه به نام چیزی که در خود دارد نام‌گذاری شده است.
Languages.ALLهمهٔ زبان‌هایی که یک ارسال یا پیش‌نمایش ترجمه‌شده می‌پذیرد، همراه با کد، نام‌ها و جهت نوشتارشان.

شیءها

پاسخ همان JSON رمزگشایی‌شده به شکل Map<String, Object> است. بسته فقط جایی نوعی از خودش می‌سازد که به پاسخ شکل می‌دهد. هر کدام یک record تغییرناپذیر در uk.openemail.result است، و یک حلقهٔ for ردیف‌هایش را می‌پیماید.

کلاسآنچه با خود دارد
Pageitems، hasMore و nextCursor، از هر list صفحه‌بندی‌شده.
PeoplePageهمان به‌اضافهٔ seen، از contacts().listPeople.
TempMessagesPageهمان به‌اضافهٔ expiresAt، از tempMail().listMessages.
AddressBookPage, AddressBookunrestricted، addresses و domains، از addresses().list (با hasMore و nextCursor) و addresses().listAll.
BatchResultitems، sent و failed، از emails().sendBatch.
TemplateSendsitems، total، page و pageSize، از templates().listSends.
PagedIterableپیمایشی روی همهٔ صفحه‌ها، از هر iterate: یک حلقهٔ for، stream() یا toList().
Body, RequestOptionsآنچه یک فراخوانی می‌گیرد: بدنهٔ درخواستی که ترتیبش را نگه می‌دارد و مقدار null را می‌پذیرد، و گزینه‌های یک فراخوانی.

هر استثنایی که بسته پرتاب می‌کند یک OpenEmailException است: ApiException و زیرکلاس‌هایش، NetworkException و WebhookSignatureException. اشتباه در خودِ فراخوانی پیش از ارسال هر چیزی IllegalArgumentException پرتاب می‌کند.

کارهایی که عمداً انجام نمی‌دهد

  • هیچ بدنهٔ درخواستی را اعتبارسنجی نمی‌کند. اسکیمای سرور تنها نسخهٔ قواعد است، و نسخهٔ دومی در اینجا سرانجام نشانی‌ای را که سرور تازه‌تر می‌پذیرد رد می‌کرد، در نسخه‌ای که کسی دو سال پیش سنجاقش کرده.
  • فقط به یک شیوه شکل پاسخ را عوض می‌کند: فهرست data یک مجموعه از پوشش خود بیرون آورده می‌شود و در یکی از نوع‌های بالا قرار می‌گیرد. هر پاسخ دیگری همان‌طور که API فرستاده بازمی‌گردد، با کلیدهای camelCase خودِ API.
  • متد ناهمگام ندارد. یک فراخوانی ریسمان خود را تا رسیدن پاسخ مسدود می‌کند، که روی یک ریسمان مجازی هزینهٔ کمی دارد.