Autentikimi
Një lloj i vetëm kredenciali dhe mënyrat se si refuzohet një kërkesë.
Headeri
URL-ja bazë është api.openemail.uk. Çdo kërkesë e mban çelësin në një header Authorization.
Authorization: Bearer oe_live_9f2c1a4b7e05d3862c1f0a44_kX7…Asgjë tjetër nuk autentikon këtu. Një cookie sesioni dhe një token sesioni refuzohen të dyja me invalid_credential_type, i cili emërton kredencialin që duhet dërguar në vend të tij, në vend që t’ju lërë të hamendësoni para një 401 të zhveshur.
Kontrolloni nëse një çelës funksionon
GET /ping është prova e shpejtë: nuk kërkon asnjë fushëveprim dhe ju thotë se çfarë është çelësi.
curl "$OE/ping" -H "$AUTH"{ "ok": true, "keyId": "4c1b257a66287fd113bd89d0", "mode": "live", "scopes": ["emails:send", "emails:read"], "roleId": null, "grantedScopes": ["emails:send", "emails:read"], "workspaceId": "10417196-e324-4283-af98-66ec62167c47"}Nëse kjo funksionon dhe diçka tjetër kthen 401, problemi është fushëveprimi, jo çelësi.
scopes është lista EFEKTIVE dhe e vetmja që autorizon diçka. grantedScopes është ajo me të cilën u lëshua çelësi dhe të dyja ndryshojnë vetëm kur një rol po e kufizon çelësin. Faqja e fushëveprimeve e shpjegon atë ndërprerje. Një roleId me vlerë null do të thotë pa tavan, që është gjendja më e gjerë për një çelës.
Shihni si mund të dërgojë një çelës
GET /addresses është përgjigjja për një 403 që nuk e prisnit.
curl "$OE/addresses" -H "$AUTH"{ "object": "list", "unrestricted": false, "data": [ { "object": "address", "address": "[email protected]", "enabled": true, "canSend": true }, { "object": "address", "address": "[email protected]", "enabled": true, "canSend": false } ], "domains": [ { "domain": "acme.com", "receivingVerified": true, "sendingVerified": true, "catchAll": false } ]}canSend: false ka tri shkaqe: adresa është e çaktivizuar, fushëveprimi i dërgimit i çelësit e lë jashtë (as domeni i saj as vetë adresa nuk janë në çelës), ose domeni nuk mund të nënshkruajë ende. enabled mbi adresën dhe sendingVerified mbi domenin e saj i dallojnë këto, dhe kjo është pjesa më e madhe e kohës së diagnostikimit që kursen ky endpoint. Një domen mund të jetë i verifikuar për marrje dhe gjithsesi i paaftë të dërgojë.
unrestricted: true do të thotë se pranohet çdo pjesë lokale mbi një domen të verifikuar, përfshirë ato që askush nuk i ka krijuar ende.
Si refuzohet një çelës
| Kodi | Kuptimi |
|---|---|
| missing_api_key | Asnjë header Authorization fare. |
| invalid_credential_type | Një cookie ose një token sesioni. Dërgoni një çelës API. |
| invalid_api_key | Jo një çelës i lëshuar nga ne, ose sekreti nuk përputhet. |
| revoked_api_key | I lëshuar këtu, pastaj i revokuar. I dalluar me qëllim. Është ndryshimi mes një rregullimi pesëminutësh dhe një pasditeje të tërë. |
| expired_api_key | I lëshuar këtu, pastaj i skaduar. |
| insufficient_scope | Një çelës i vërtetë, pa fushëveprimin që kërkon ky endpoint. |
Revokimi hyn në fuqi në thirrjen e radhës. Rreshti mbetet më pas në faqen e çelësave, që të mund të dalloni ende nëse diçka po e përdorte çelësin kur e vratë. Gjendja më e dobishme në atë ekran është “i papërdorur kurrë”, sepse është mënyra si dallohet një çelës i rrjedhur nga një varësi e gjallë.
Rrotullimi është mënyra tjetër për të tërhequr një sekret. Ai krijon një sekret të ri për të njëjtin çelës, prandaj id-ja, emri, fushëveprimet, roli, fushëveprimi i dërgimit dhe çdo rresht kërkese e aktiviteti vazhdojnë; ndryshon vetëm sekreti. I vjetri pushon së funksionuari në çastin që përfundon rrotullimi, pa dritare mbivendosjeje, dhe zëvendësuesi shfaqet vetëm një herë. Nga konsola gjendet në të njëjtin meny me Revoke dhe ju kërkon të riverifikoheni më parë. Një çelës që mban keys:write mund të rrotullojë edhe vetveten me POST /keys/self/rotate, e cila është mënyra si një integrim rrotullohet sipas një orari pa hapur askush konsolën.