У деяких невеликих вузлах Інтернет буває непрактично підтримувати систему передачі повідомлень ( MTS - Message Transport System). Робоча станція може не мати достатніх ресурсів для забезпечення безперервної роботи SMTP-сервера [RFC-821]. Для "Домашніх ЕОМ" занадто дорого підтримувати зв'язок з Інтернет цілодобово. Але доступ до електронної пошти необхідний як для таких малих вузлів, так і індивідуальних ЕОМ. Для вирішення цієї проблеми розроблений протокол POP3 (Post Office Protocol - Version 3, STD-53. M. Rose, RFC-1939). Цей протокол забезпечує доступ вузла до базового поштового сервера. POP3 не ставить метою надання широкого списку маніпуляцій з поштою. Поштові повідомлення приймаються поштовим сервером і зберігаються там, поки на робочій станції клієнта не буде запущено програму POP3. Ця програма встановлює з'єднання з сервером і забирає повідомлення звідти. Поштові повідомлення на сервері стираються. Більш просунутий і складний протокол IMAP4 обговорюється в RFC-2060 (порт 143). Про аутентифікації в POP3 можна прочитати в документі RFC-1734.
Надалі ЕОМ-клієнтом буде називатися машина, яка користується послугами POP3, а ЕОМ-сервером - сторона, що пропонує послуги POP3. Коли користувач ЕОМ-клієнта хоче послати повідомлення, він встановлює SMTP зв'язок з поштовим сервером безпосередньо і посилає все, що потрібно через нього. При цьому ЕОМ POP3-сервер не обов'язково є поштовим сервером. У вихідний момент ЕОМ POP3-сервер прослуховує TCP-порт 110. Якщо ЕОМ-клієнт хоче скористатися послугами POP3-сервера, то встановлює з ним TCP зв'язок. За встановленні зв'язку POP3-сервер посилає клієнтові повідомлення (наприклад, + OK POP3 server ready) і сесія переходить у фазу авторизації (див. також RFC-1734, -1957). Після цього може проводитися обмін командами і відгуками. Команди POP3 складаються з ключових слів (3-4 символу), за якими можуть слідувати аргументи. Кожна команда завершується парою символів CRLF. Як ключові слова, так і аргументи можуть містити тільки друковані ASCII-символи. Як роздільник використовуються символи пробілу. Кожен аргумент може містити до 40 символів. Сигнал відгуку в POP3 містить індикатор стану і ключове слово, за яким може слідувати додаткова інформація. Відгук також завершується кодовою послідовністю CRLF. Довжина відгуку не перевищує 512 символів, включаючи CRLF. Існує два індикатори стану: позитивний - "+ OK" і негативний "-ERR" (Всі символи прописні). Відгуки на деякі команди можуть містити кілька рядків. У цьому випадку остання рядок містить код завершення 046 ("."), За яким слідує CRLF. На практиці багатострокові відгуки для виключення імітації завершуються послідовністю CRLF.CRLF. У процесі авторизації клієнт повинен представити себе серверу, передавши ім'я та пароль (Можливий варіант посилки команди APOP). Якщо авторизація успішно завершена, сесія переходить в стан транзакції (TRANSACTION). При отриманні від клієнта команди QUIT сесія переходить в стан UPDATE, при цьому всі ресурси звільняються і TCP зв'язок розривається. На синтаксично невпізнані і невірні команди, сервер реагує, посилаючи негативний індикатор стану. POP3 сервер може бути забезпечений таймером пасивного стану (10 хв.), який здійснює автоматичне переривання сесії. Прихід будь-якої команди з боку клієнта скидає цей таймер в нуль. Сервер нумерує всі передані повідомлення зі своєї поштової скриньки і визначає їх довжину. Позитивний відгук починається з + OK, за ним слід пробіл, номер повідомлення, ще один пробіл і довжина повідомлення в октетах. Завершується відгук послідовністю CRLF. Надіслані повідомлення видаляються з поштової скриньки сервера. Всі повідомлення, передаються під час сесії POP3 повинні слідувати рекомендаціям формату Інтернет повідомлень [RFC822]. У стані транзакції клієнт може посилати серверу послідовність POP3 команд, на кожну з яких сервер повинен послати відгук. Далі слід короткий опис команд, що використовуються в стані транзакція.
LIST [повідомлення]
Аргументи: номер повідомлення (опційно), який не може ставитися до повідомлення, помічені як видалені. Команда може бути видана тільки в режимі TRANSACTION. За наявності аргументу сервер видає позитивний відгук, що містить інформаційну рядок повідомлення. Такий рядок називається скан-лістингом повідомлення (scan listing). scan listing складається з номера повідомлення, за яким слід пробіл і число октетів в повідомленні. Повідомлення, помічені як видалені, не відсилаються. Прикладом негативного відгуку може служити:-ERR no such message.
Приклади використання команди LIST:
Клієнт видає команду: LIST
Сервер відгукується: + OK 2 messages (320 octets) Сервер: 1120
Сервер: 2200
Сервер:.
...
Клієнт: LIST 2
Сервер: + OK 2200
...
К: LIST 3
З:-ERR no such message, only 2 messages in maildrop
...