În iunie 2014, Google a introdus primul său API pentru Gmail. Pentru prima dată, utilizatorii de conturi Gmail gratuite puteau gestiona în mod programatic conturile Gmail fără IMAP.
Utilizând API-ul, puteți efectua multe din aceleași operații disponibile prin interfața Gmail, de ex. citirea, compunerea și trimiterea de mesaje. De asemenea, vă permite să gestionați etichete pe fire și mesaje și să căutați și să preluați anumite mesaje și fire.
API-ul este bazat pe REST și poate fi folosit pentru a accesa cutiile poștale Gmail și pentru a trimite poștă. Acesta oferă în mod specific controlul asupra:
Google sugerează următoarele cazuri de utilizare pentru API:
Când am construit propria aplicație de gestionare a e-mailurilor, Simplify Email (citiți mai multe despre aceasta la Tuts + în Building Advanced Email Features with IMAP și PHP), singurul API de e-mail Google a fost limitat la abonații plătiți de Google Apps. Deci, am construit totul pe IMAP. Deși acest lucru a permis o compatibilitate largă cu alți furnizori de e-mail, a creat unele limitări în ceea ce privește performanța și securitatea.
API oferă acces la conturile Gmail prin OAuth. Acest lucru permite accesul securizat și revocabil la conturile Gmail care nu necesită ca utilizatorii să partajeze parolele lor de e-mail cu furnizorii de aplicații.
Cu API-ul Gmail, puteți să trimiteți și să preluați mesaje, să aplicați etichete, să găsiți mesaje cu etichete și să gestionați e-mailuri în fire.
Istoricul contului API oferă un jurnal al activității mesajelor pentru referințe, reducând complexitatea monitorizării modificărilor conturilor IMAP în timp real.
Pentru a ajuta dezvoltatorii să se scufunde în API, Google oferă ghiduri de pornire rapidă pentru Java, .NET și Python. Există, de asemenea, biblioteci de clienți disponibile pentru Java, Javascript, .NET, Objective-C, PHP și Python; Dart, Go, Node.js și bibliotecile Ruby sunt oferite în stadiu incipient / în dezvoltare.
În ansamblu, API-ul Google Gmail reprezintă un mare pas înainte.
Am fost interesat de extinderea serviciului Gmail de când am scris douăsprezece idei Gmail pentru a revoluționa adresa de e-mail (din nou) în 2010. Majoritatea ideilor pe care le-am dorit, cum ar fi listarea albă și nu deranjează, au rămas fără limite fără eforturile Google sau API-ul. Pentru o aplicație la fel de importantă ca și Gmail, inovarea pe aceste tipuri de funcții avansate a fost destul de lentă.
Ne innelam prin e-mail, iar gestionarea inbox-urilor ramane o povara grea. Serviciile de poștă și clienții au făcut foarte puțin pentru a ne ajuta în acest sens. Majoritatea e-mailurilor pe care le primim sunt trimise de mașini, nu de oameni, și totuși noi suntem cei care trebuie să procesăm individual toate acestea.
Analiza e-mail-ului meu a arătat că primesc e-mailuri de la mai mult de 230 de expeditori automați, cu mult mai puțini oameni reali. Am fost obosit să construiesc filtre în Gmail și să completez o multitudine de formulare de dezabonare. Am vrut să am mai mult control asupra gestionării e-mailului meu și simplificării vieții mele.
Folosind IMAP, am reușit să construiesc o serie de funcții de gestionare a e-mailurilor pe care le-am dorit. Rezultatul a fost Simplify Email:
Și acum, cu ajutorul API-ului Gmail, puteți crea soluții sigure, performante performante, cum ar fi cele pentru Gmail în mod specific.
De asemenea, în octombrie 2014, Google a anunțat căsuța Inbox, dar rămâne doar invitație și aștept trei luni.
Este de remarcat faptul că FastMail (aflați mai multe despre ele aici) este lider în dezvoltarea JMAP, o ofertă competitivă pentru API-ul Gmail proprietate și una pe care alți furnizori IMAP ar putea să le adauge teoretic pentru.
Dacă sunteți interesat să aflați mai multe despre JMAP, postați un comentariu de mai jos; Pot să scriu despre asta la o dată ulterioară.
Să trecem prin caracteristicile de bază ale API-ului Gmail.
API-ul Gmail utilizează OAuth 2.0 pentru a gestiona autentificarea și autorizarea. Există trei domenii de autentificare care pot fi utilizate individual sau în combinație.
Aceasta oferă utilizatorilor o varietate de controale privind modul în care aplicațiile interacționează cu contul lor.
API-ul Gmail oferă cinci tipuri de resurse primare:
Mesaje și etichetele reprezintă unitățile de bază ale unei cutii poștale. Dosarele, istoricul și firele conțin toate unul sau mai multe mesaje cu metadate suplimentare.
Schițe sunt mesaje nesolicitate. Ele nu pot fi modificate, ci doar create și șterse. De asemenea, pot fi trimise.
etichete sunt ceea ce folosim ca dosare în Gmail. Ei ajută la clasificarea și organizarea mesajelor și a firelor. Există ambele etichete de sistem, cum ar fi INBOX, TRASH și SPAM și etichete generate de utilizatori, cum ar fi TRAVEL.
Subiecte sunt colecții de mesaje care reprezintă o conversație. Etichetele pot fi adăugate în fire, iar mesajele pot fi adăugate în fire.
Istorie este o colecție de mesaje recent modificate în ordine cronologică. Istoria poate fi utilizată pentru sincronizarea unei aplicații sau pentru recuperarea acțiunilor efectuate de utilizator în contul său.
Puteți automatiza trimiterea de mesaje din contul utilizatorului prin încărcarea mesajelor simple și a mai multor părți și trimiterea acestora.
Având în vedere ID-ul unui e-mail dintr-o solicitare de căutare sau de istoric, puteți să-i descărcați conținutul utilizând mesajul de preluare.
Puteți găsi mesaje și subiecte care corespund interogărilor avansate de filtrare Gmail.
Puteți recupera istoricul acțiunilor contului în ultimele 30 de zile cu istoricul listelor. Puteți utiliza aceasta pentru sincronizarea parțială a unui cont de cutie poștală cu aplicația dvs. și chiar pentru a afla despre preferințele utilizatorului pentru filtrarea mesajelor de un anumit tip.
Puteți adăuga și elimina etichetele aplicate mesajelor și subiectelor.
Puteți crea o copie de rezervă a unui întreg cont de la început până la sfârșit. API-ul vă permite să afișați mesajele din contul dvs. utilizând metoda listei de mesaje.
În tutorialul următor, vă voi începe să vă folosesc API-ul Gmail cu aplicația dvs. bazată pe PHP.
Vă rugăm să nu ezitați să postați întrebările și comentariile dvs. de mai jos. Puteți să mă contactați și pe Twitter @reifman sau să mă trimiteți direct prin e-mail. Urmați pagina Tuts + instructor pentru a vedea articole viitoare în API-ul Gmail.