xref: /curl/docs/cmdline-opts/_PROTOCOLS.md (revision 5bfd0cd9)
1<!-- Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. -->
2<!-- SPDX-License-Identifier: curl -->
3# PROTOCOLS
4curl supports numerous protocols, or put in URL terms: schemes. Your
5particular build may not support them all.
6## DICT
7Lets you lookup words using online dictionaries.
8## FILE
9Read or write local files. curl does not support accessing file:// URL
10remotely, but when running on Microsoft Windows using the native UNC approach
11works.
12## FTP(S)
13curl supports the File Transfer Protocol with a lot of tweaks and levers. With
14or without using TLS.
15## GOPHER(S)
16Retrieve files.
17## HTTP(S)
18curl supports HTTP with numerous options and variations. It can speak HTTP
19version 0.9, 1.0, 1.1, 2 and 3 depending on build options and the correct
20command line options.
21## IMAP(S)
22Using the mail reading protocol, curl can download emails for you. With or
23without using TLS.
24## LDAP(S)
25curl can do directory lookups for you, with or without TLS.
26## MQTT
27curl supports MQTT version 3. Downloading over MQTT equals subscribe to a
28topic while uploading/posting equals publish on a topic. MQTT over TLS is not
29supported (yet).
30## POP3(S)
31Downloading from a pop3 server means getting a mail. With or without using
32TLS.
33## RTMP(S)
34The **Realtime Messaging Protocol** is primarily used to serve streaming media
35and curl can download it.
36## RTSP
37curl supports RTSP 1.0 downloads.
38## SCP
39curl supports SSH version 2 scp transfers.
40## SFTP
41curl supports SFTP (draft 5) done over SSH version 2.
42## SMB(S)
43curl supports SMB version 1 for upload and download.
44## SMTP(S)
45Uploading contents to an SMTP server means sending an email. With or without
46TLS.
47## TELNET
48Fetching a telnet URL starts an interactive session where it sends what it
49reads on stdin and outputs what the server sends it.
50## TFTP
51curl can do TFTP downloads and uploads.
52## WS(S)
53WebSocket done over HTTP/1. WSS implies that it works over HTTPS.
54