Kalo te dokumentacioni
PHP

Regjistri i ndryshimeve

Çdo publikim i paketës, më i riu i pari.

0.0.1

Versioni i parë. Mbulon gjithë SDK-në TypeScript siç ishte kur u përgatit ky version: 430 metoda në 41 hapësira emrash, secila me emrin e saj TypeScript, dhe secila prej tyre dërgon bajt për bajt kërkesën që dërgon binjaku i saj TypeScript.

  • OpenEmail\OpenEmail ka një veti për çdo hapësirë emrash, nga emails, threads dhe templates deri te providerImports, dnsConnections dhe account, dhe metodat e secilës ruajnë emrat e tyre TypeScript.
  • Një trup kërkese është një array asociativ, çelësat e të cilit ruajnë emrat camelCase të API-së, dhe opsionet janë argumente me emër si idempotencyKey: dhe apiKey:. Një përgjigje kthehet si array-i asociativ i dekoduar.
  • Çdo burim i faqosur ka list, që kthen një Page, listAll, që kthen çdo element si array, dhe iterate, që kthen një Generator që e merr faqen e radhës vetëm kur arrin aty. PeoplePage, TempMessagesPage, AddressBookPage, AddressBook, BatchResult dhe TemplateSends mbartin përgjigjet që mbajnë më shumë se një listë.
  • Një refuzim i API-së hedh ApiException ose nënklasën e tij për llojin e gabimit, me status, type, errorCode, param, docUrl, requestId, retryAfterSeconds, fields dhe body, si dhe metoda si isValidation() dhe isStepUpRequired(). Mungesa e plotë e përgjigjes hedh NetworkException, me isTimeout() kur kaloi afati. Një gabim në vetë thirrjen hedh InvalidArgumentException para se të dërgohet ndonjë gjë. Secili prej tyre implementon OpenEmailException.
  • new OpenEmail() dhe OpenEmail::createClient() lexojnë OPENEMAIL_API_KEY, OPENEMAIL_ACCESS_TOKEN dhe OPENEMAIL_BASE_URL për çdo gjë që lini jashtë, ndërsa OpenEmail::init(), OpenEmail::getClient() dhe OpenEmail::resetClient() menaxhojnë një klient të përbashkët. OpenEmail::createTempMail() hap kuti të përkohshme pa kredencial.
  • accessToken: merr një token aksesi OAuth, ose një objekt të thirrshëm që kthen një të tillë, i thirrur para çdo kërkese. Çdo metodë merr apiKey: për të vepruar me një çelës tjetër për një thirrje, dhe metodat e tempMail marrin inboxToken:. Çdo parametër që mbart një kredencial është shënuar me #[\SensitiveParameter].
  • OpenEmail::verifyWebhookSignature() kontrollon një dërgesë në kohë konstante, refuzon një që është më e vjetër se pesë minuta dhe kthen ngjarjen e dekoduar. E lexon nënshkrimin nga një array header-ash me çfarëdo shkronjash, nga $_SERVER, nga një header bag i Symfony ose Laravel, ose nga një kërkesë PSR-7.
  • OpenEmail::toBase64(), isApiKey(), isAccessToken(), isSealed(), resolveLanguage(), languageByCode() dhe isRtlLanguage() janë ndihmësit e SDK-së TypeScript, dhe çdo bashkësi vlerash që eksporton rrënja e paketës së saj është një klasë te OpenEmail\Constants.
  • Kërkon PHP 8.2 e më lart me zgjerimet curl dhe json, dhe asgjë tjetër. Kërkesat kalojnë përmes një handle-i cURL për çdo klient, i cili e mban lidhjen e tij të hapur mes kërkesave dhe hap një të re pas pcntl_fork, dhe timeout: kufizon një përpjekje të tërë. Psr18HttpClient i dërgon ato në vend të kësaj përmes Guzzle, Symfony HttpClient ose çdo klienti tjetër PSR-18.
  • Leximet, dërgimet dhe çdo shkrim që është i sigurt për t’u përsëritur riprovohen te 408, 500, 502, 503 dhe 504 me pritje gjithnjë e më të gjata, dhe te një 429 vetëm kur Retry-After i tij është një minutë ose më pak. Çdo dërgim mbart një çelës idempotence që e ripërdorin riprovimet e tij.
  • Klienti refuzon të dërgojë një kredencial përmes http: të thjeshtë te çdo gjë tjetër përveç kësaj makine, refuzon një URL bazë në 0.0.0.0, refuzon një header që do ta ndante një kërkesë, dhe nuk e lë kurrë raw->request() të dalë nga origjina e URL-së bazë.