Untuk klien non-Gmail, Gmail mendukung protokol IMAP, POP, dan SMTP standar. Server IMAP, POP, dan SMTP Gmail telah diperluas untuk mendukung otorisasi melalui protokol OAuth 2.0 standar industri.
Protocol
IMAP, POP, dan SMTP menggunakan Simple Authentication and Security Layer (SASL) standar, menggunakan perintah IMAP AUTHENTICATE
, POP AUTH
, dan SMTP AUTH
bawaan, untuk mengautentikasi pengguna. Mekanisme SASL XOAUTH2 memungkinkan klien untuk memberikan kredensial OAuth 2.0 untuk autentikasi. Dokumentasi protokol SASL XOAUTH2 menjelaskan mekanisme SASL XOAUTH2 dengan sangat mendetail, dan library serta sampel yang telah menerapkan protokol tersebut tersedia.
Koneksi masuk ke server IMAP di imap.gmail.com:993
dan server POP di pop.gmail.com:995
memerlukan SSL. Server SMTP keluar, smtp.gmail.com
, mendukung TLS. Jika klien memulai dengan teks biasa, sebelum mengeluarkan perintah STARTTLS, gunakan port 465
(untuk SSL), atau port 587
(untuk TLS).
Batas durasi sesi
Sesi POP Gmail dibatasi hingga sekitar 7 hari. Sesi IMAP Gmail dibatasi hingga sekitar 24 jam. Jika sesi diautentikasi menggunakan kredensial OAuth, sesi dibatasi hingga sekitar periode validitas token akses yang digunakan (biasanya 1 jam). Sesi dalam konteks ini adalah satu koneksi TCP berkelanjutan.
Saat waktu berlalu dan sesi berakhir, Gmail menutup koneksi dengan pesan yang menyatakan bahwa sesi telah berakhir. Setelah itu, klien dapat terhubung kembali, mengautentikasi lagi, dan melanjutkan. Jika menggunakan OAuth, pastikan token akses yang digunakan valid (jika Anda mencoba menggunakan token akses yang lebih lama dari 1 jam, token tersebut mungkin tidak valid).
Library dan Sampel
Mengakses email menggunakan IMAP atau POP dan mengirim email menggunakan SMTP sering kali dilakukan menggunakan pustaka IMAP dan SMTP yang ada untuk kenyamanan. Selama library tersebut mendukung Simple Authentication and Security Layer (SASL), library tersebut harus kompatibel dengan mekanisme SASL XOAUTH2 yang didukung oleh Gmail.
Selain dokumentasi protokol SASL XOAUTH2, Anda juga dapat membaca Menggunakan OAuth 2.0 untuk Mengakses Google API untuk informasi selengkapnya tentang menerapkan klien OAuth 2.0.
Halaman Library dan Contoh memberikan contoh kode dalam berbagai bahasa populer menggunakan mekanisme SASL XOAUTH2 dengan IMAP atau SMTP.