Tipi un palīgi
Ko vēl pakotne eksportē.
Izpildlaika eksporti
| Eksports | Kas tas ir |
|---|---|
| `init`, `openemail` | Konfigurē koplietoto klientu vienreiz, tad importē openemail jebkur. Tas izveido sevi no OPENEMAIL_API_KEY, ja init nekad nav palaists. |
| `getClient`, `resetClient` | Pats koplietotais klients un veids, kā to nomest, lai nākamais izsaukums izveidotu jaunu — tieši to tests grib starp gadījumiem. |
| `createOpenEmail`, `createClient`, `OpenEmail` | Atsevišķs klients. createOpenEmail visam, ko neesi norādījis, nolasa vidi (createClient ir tā pati funkcija), bet new OpenEmail (arī noklusētais eksports) paņem tikai to, ko padod. |
| `createTempMail` | Vienreizlietojamo iesūtņu klients, kas nenes API atslēgu, un vienīgā pakotnes daļa, kas darbojas pārlūkā. |
| `OpenEmailApiError`, `OpenEmailNetworkError` | Abas kļūdu klases. |
| `verifyWebhookSignature` | Konstanta laika salīdzinājums ar atkārtojumu logu. Atrisinās par parsēto slodzi un met izņēmumu pie jebkuras kļūmes. |
| `toBase64` | Gabalos, pielikumu baitiem. |
| `isApiKey` | Vai virknei ir oe_live_ vai oe_test_ forma. Formas pārbaude, nevis pierādījums, ka atslēga joprojām darbojas. |
| `isSealed`, `MESSAGE_ENCRYPTION_FORMATS` | Vai ziņojuma pamatteksts ir šifrteksts, un piecas aploksnes, ko ienākošā apstrāde var nosaukt. isSealed ir false abiem SIGNED formātiem, kuru saturs atnāca atklātā veidā; tieši tāpēc tas tiek piegādāts, nevis atstāts izsaucējam, lai to atvasinātu no apvienojuma. |
| `LANGUAGES`, `resolveLanguage`, `languageByCode`, `isRtlLanguage` | Iekļautā valodu tabula un meklējumi, kas vajadzīgi valodu izvēlnei. |
| `API_SCOPES` | Tvērumu vārdnīca — atslēgas izveides ekrānam. |
| `WEBHOOK_EVENTS`, `WEBHOOK_SIGNATURE_HEADERS` | Notikumi, uz kuriem galapunkts var parakstīties, un to galveņu nosaukumi, ko nes piegāde. |
| `RULE_FIELDS`, `RULE_OPERATORS`, `RULE_ACTIONS` | Vārdnīca, no kuras tiek būvēti kārtulas nosacījumi un darbības. |
| `PAGE_LIMITS` | Lielākais un noklusētais limit lapotā sarakstā: 100 un 25. |
| `ERROR_TYPES` | Iesaldētā kļūdu vārdnīca. |
| `VERSION` | Pakotnes versija. |
Tipi
Katram pieprasījumam un atbildei tāds ir, un tie tiek eksportēti no pakotnes saknes. Dziļo importu nav, tāpēc failu izkārtojums paliek implementācijas detaļa, ko var pārvietot bez galvenās versijas maiņas. …Resource ir tas, ko API atgriež, …Create, …Patch, …Input un …Send ir tas, ko padod, un …Options satur filtrus un izsaukuma līmeņa opcijas.
- Klients:
ClientOptions,TempMailOptions,TransportOptions,RequestOptions,RequestScope,SendScope,InboxScope,ListOptions,Page,ApiKeyMode,FetchLike. - Kļūdas:
ErrorType,ApiErrorPayload,ApiErrorProps. - E-pasti:
EmailSend,EmailListOptions,EmailTranslate,EmailResource,SentEmailResource,EmailRecipientResource,EmailEventResource,EmailStatus,EmailSource,EmailTransport,EmailTrackingSummary,EmailTranslationResource,TranslationResource,RecipientStatus,BatchItemResource,BatchResultResource. - Veidnes:
TemplateCreate,TemplatePatch,TemplateContent,TemplateListOptions,TemplatePreviewInput,TemplateSend,TemplateResource,TemplateDetailResource,TemplateVersionResource,TemplatePreviewResource,SentTemplateEmailResource,DeletedTemplateResource,TemplateEngine,TemplateProp,TemplateSlot,TemplateStatus,TemplateValueKind. - Izsekošana:
TrackingListOptions,TrackingStatsOptions,TrackingHitOptions,TrackingResource,TrackingSummary,TrackingRecipientResource,TrackingLinkResource,TrackingOpenResource,TrackingClickResource,TrackingStatsResource,TrackingGrain. - Sarakstes un melnraksti:
ThreadListOptions,ThreadPatch,ThreadResource,ThreadSummaryResource,UpdatedThreadResource,TrashedThreadResource,SnoozedThreadResource,DraftInput,DraftListOptions,DraftResource,DraftSummaryResource,SavedDraftResource,DeletedDraftResource. - Etiķetes, kontakti, domēni un adreses:
LabelInput,LabelColor,LabelResource,SavedLabelResource,DeletedLabelResource,ContactCreate,ContactPatch,ContactListOptions,ContactSource,ContactResource,ContactDetailResource,ContactAudienceResource,DeletedContactResource,DomainPatch,DomainResource,DomainDetailResource,DomainSendingState,DomainTracking,DomainTrackingState,AddressBookResource,AddressResource,SendableDomainResource. - Kārtulas:
RuleCreate,RulePatch,RuleListOptions,RuleRunListOptions,RuleTestInput,RuleResource,RuleRunResource,RuleTestResource,DeletedRuleResource,RuleCondition,RuleConditionInput,RuleAction,RuleActionType,RuleField,RuleOperator. - Webhooks:
WebhookCreate,WebhookPatch,WebhookResource,CreatedWebhookResource,DeletedWebhookResource,WebhookDeliveryResource,WebhookTestResource,WebhookEvent,WebhookPayload,EmailOpenedData,EmailClickedData,EmailDownloadedData,VerifyWebhookProps,WebhookSignatureHeaders. - Kalendārs un iestatījumi:
CalendarRangeOptions,CalendarOccurrenceResource,CalendarEventResource,CalendarAttendeeResource,SettingsPatch,SettingsResource. - Lomas, dalībnieki un atslēgas:
RoleCreate,RolePatch,RoleDeleteOptions,RoleResource,DeletedRoleResource,PermissionResource,MemberAdd,MemberPatch,MemberAddressGrant,MemberResource,MemberAddressResource,RemovedMemberResource,MemberAccess,KeyResource,PingResource. - Vienreizlietojamās iesūtnes:
TempInboxCreate,TempMessageListOptions,TempInboxResource,CreatedTempInboxResource,DeletedTempInboxResource,TempDomainResource,TempMessageResource,TempMessagesResource,TempMessageDetailResource,DeletedTempMessageResource. - Koplietotie:
RecipientInput,AttachmentInput,AttachmentResource,MessageResource,MessageEncryption,MessageEncryptionFormat,TrackingRequest,TranslateOptions,SendTranslateOptions,LanguageResource,ApiScope,Permission,BuiltinRole,HitKind.
Galapunkts, ko tas vēl neietin
SDK laidienam nekad nevajadzētu stāvēt starp tevi un galapunktu, kas jau darbojas. openemail.raw.request() pieņem ceļu un opcijas un atrisinās par parsēto ķermeni, piemērojot klienta atslēgu, bāzes URL, noildzi un atkārtojumu politiku.
const result = await openemail.raw.request<Whatever>('/something-new', { method: 'POST', query: { dryRun: true }, body: { name: 'Invoices' }, repeatable: true,})GET tiek atkārtots tāpat kā jebkurš cits lasījums. Jebkura cita metode tiek nosūtīta vienreiz, ja vien nepadod repeatable: true, kas ir tavs apgalvojums, ka to drīkst nosūtīt divreiz. query izlaiž vērtības, kas ir undefined, un signal darbojas tāpat kā katrā citā metodē.
Ko tas apzināti nedara
- Tas nevalidē nevienu pieprasījuma ķermeni. Servera shēma ir vienīgā noteikumu kopija, un otra kopija šeit galu galā noraidītu adresi, ko jaunāks serveris pieņem, kādā versijā, kuru kāds piesprauda pirms diviem gadiem.
- Tas nepiegādā ne zod, ne vispār nekādas izpildlaika atkarības.
- Atbildi tas pārveido tikai vienā veidā: kolekcijas
datamasīvs tiek izcelts ārā no aploksnes. Lapots saraksts atdod to kāitemsblakushasMoreunnextCursor,emails.sendBatch— kāitemsblakussentunfailed,tempMail.listMessages— kāitemsblakusexpiresAt, unaddresses.list— kāaddressesblakusunrestrictedundomains. Visur citur tas ir vienkāršs masīvs. Katrs resurss iekšpusē saglabā dokumentēto HTTP formu.
Pakotnes atbilstības pārbaude to notur godīgu. Tā sabojā būvējumu, kad dokumentētai operācijai nav metodes, kad metode norāda uz operāciju, kādas OpenAPI dokumentā nav, vai sūta citu pieprasījumu, un kad metode deklarē tvērumus, ko operācija neprasa.