curl / libcurl / API / curl_easy_setopt / all options

All curl_easy_setopt options listed

All existing options for curl_easy_setopt in alphabetical order.

CURLOPT_ABSTRACT_UNIX_SOCKET abstract Unix domain socket
CURLOPT_ACCEPTTIMEOUT_MS timeout waiting for FTP server to connect back
CURLOPT_ACCEPT_ENCODING automatic decompression of HTTP downloads
CURLOPT_ADDRESS_SCOPE scope id for IPv6 addresses
CURLOPT_ALTSVC alt-svc cache filename
CURLOPT_ALTSVC_CTRL control alt-svc behavior
CURLOPT_APPEND append to the remote file
CURLOPT_AUTOREFERER automatically update the referer header
CURLOPT_AWS_SIGV4 V4 signature
CURLOPT_BUFFERSIZE receive buffer size
CURLOPT_CAINFO path to Certificate Authority (CA) bundle
CURLOPT_CAINFO_BLOB Certificate Authority (CA) bundle in PEM format
CURLOPT_CAPATH directory holding CA certificates
CURLOPT_CA_CACHE_TIMEOUT life-time for cached certificate stores
CURLOPT_CERTINFO request SSL certificate information
CURLOPT_CHUNK_BGN_FUNCTION callback before a transfer with FTP wildcard match
CURLOPT_CHUNK_DATA pointer passed to the FTP chunk callbacks
CURLOPT_CHUNK_END_FUNCTION callback after a transfer with FTP wildcard match
CURLOPT_CLOSESOCKETDATA pointer passed to the socket close callback
CURLOPT_CLOSESOCKETFUNCTION callback to socket close replacement
CURLOPT_CONNECTTIMEOUT timeout for the connect phase
CURLOPT_CONNECTTIMEOUT_MS timeout for the connect phase
CURLOPT_CONNECT_ONLY stop when connected to target server
CURLOPT_CONNECT_TO connect to another host and port instead
CURLOPT_CONV_FROM_NETWORK_FUNCTION convert data from network to host encoding
CURLOPT_CONV_FROM_UTF8_FUNCTION convert data from UTF8 to host encoding
CURLOPT_CONV_TO_NETWORK_FUNCTION convert data to network from host encoding
CURLOPT_COOKIE HTTP Cookie header
CURLOPT_COOKIEFILE filename to read cookies from
CURLOPT_COOKIEJAR filename to store cookies to
CURLOPT_COOKIELIST add to or manipulate cookies held in memory
CURLOPT_COOKIESESSION start a new cookie session
CURLOPT_COPYPOSTFIELDS have libcurl copy data to POST
CURLOPT_CRLF CRLF conversion
CURLOPT_CRLFILE Certificate Revocation List file
CURLOPT_CURLU URL in URL handle format
CURLOPT_CUSTOMREQUEST custom request method
CURLOPT_DEBUGDATA pointer passed to the debug callback
CURLOPT_DEBUGFUNCTION debug callback
CURLOPT_DEFAULT_PROTOCOL default protocol to use if the URL is missing a
CURLOPT_DIRLISTONLY ask for names only in a directory listing
CURLOPT_DISALLOW_USERNAME_IN_URL disallow specifying username in the URL
CURLOPT_DNS_CACHE_TIMEOUT life-time for DNS cache entries
CURLOPT_DNS_INTERFACE interface to speak DNS over
CURLOPT_DNS_LOCAL_IP4 IPv4 address to bind DNS resolves to
CURLOPT_DNS_LOCAL_IP6 IPv6 address to bind DNS resolves to
CURLOPT_DNS_SERVERS DNS servers to use
CURLOPT_DNS_SHUFFLE_ADDRESSES shuffle IP addresses for hostname
CURLOPT_DNS_USE_GLOBAL_CACHE global DNS cache
CURLOPT_DOH_SSL_VERIFYHOST verify the hostname in the DoH SSL certificate
CURLOPT_DOH_SSL_VERIFYPEER verify the DoH SSL certificate
CURLOPT_DOH_SSL_VERIFYSTATUS verify the DoH SSL certificate's status
CURLOPT_DOH_URL provide the DNS-over-HTTPS URL
CURLOPT_ECH configuration for Encrypted Client Hello
CURLOPT_EGDSOCKET EGD socket path
CURLOPT_ERRORBUFFER error buffer for error messages
CURLOPT_EXPECT_100_TIMEOUT_MS timeout for Expect: 100-continue response
CURLOPT_FAILONERROR request failure on HTTP response \>= 400
CURLOPT_FILETIME get the modification time of the remote resource
CURLOPT_FNMATCH_DATA pointer passed to the fnmatch callback
CURLOPT_FNMATCH_FUNCTION wildcard match callback
CURLOPT_FOLLOWLOCATION follow HTTP 3xx redirects
CURLOPT_FORBID_REUSE make connection get closed at once after use
CURLOPT_FRESH_CONNECT force a new connection to be used
CURLOPT_FTPPORT make FTP transfer active
CURLOPT_FTPSSLAUTH order in which to attempt TLS vs SSL
CURLOPT_FTP_ACCOUNT account info for FTP
CURLOPT_FTP_ALTERNATIVE_TO_USER command to use instead of USER with FTP
CURLOPT_FTP_CREATE_MISSING_DIRS create missing directories for FTP and SFTP
CURLOPT_FTP_FILEMETHOD select directory traversing method for FTP
CURLOPT_FTP_SKIP_PASV_IP ignore the IP address in the PASV response
CURLOPT_FTP_SSL_CCC switch off SSL again with FTP after auth
CURLOPT_FTP_USE_EPRT use EPRT for FTP
CURLOPT_FTP_USE_EPSV use EPSV for FTP
CURLOPT_FTP_USE_PRET use PRET for FTP
CURLOPT_GSSAPI_DELEGATION allowed GSS-API delegation
CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS head start for IPv6 for happy eyeballs
CURLOPT_HAPROXYPROTOCOL send HAProxy PROXY protocol v1 header
CURLOPT_HAPROXY_CLIENT_IP set HAProxy PROXY protocol client IP
CURLOPT_HEADER pass headers to the data stream
CURLOPT_HEADERDATA pointer to pass to header callback
CURLOPT_HEADERFUNCTION callback that receives header data
CURLOPT_HEADEROPT send HTTP headers to both proxy and host or separately
CURLOPT_HSTS HSTS cache filename
CURLOPT_HSTSREADDATA pointer passed to the HSTS read callback
CURLOPT_HSTSREADFUNCTION read callback for HSTS hosts
CURLOPT_HSTSWRITEDATA pointer passed to the HSTS write callback
CURLOPT_HSTSWRITEFUNCTION write callback for HSTS hosts
CURLOPT_HSTS_CTRL control HSTS behavior
CURLOPT_HTTP09_ALLOWED allow HTTP/0.9 response
CURLOPT_HTTP200ALIASES alternative matches for HTTP 200 OK
CURLOPT_HTTPAUTH HTTP server authentication methods to try
CURLOPT_HTTPGET ask for an HTTP GET request
CURLOPT_HTTPHEADER set of HTTP headers
CURLOPT_HTTPPOST multipart formpost content
CURLOPT_HTTPPROXYTUNNEL tunnel through HTTP proxy
CURLOPT_HTTP_CONTENT_DECODING HTTP content decoding control
CURLOPT_HTTP_TRANSFER_DECODING HTTP transfer decoding control
CURLOPT_HTTP_VERSION HTTP protocol version to use
CURLOPT_IGNORE_CONTENT_LENGTH ignore content length
CURLOPT_INFILESIZE size of the input file to send off
CURLOPT_INFILESIZE_LARGE size of the input file to send off
CURLOPT_INTERFACE source interface for outgoing traffic
CURLOPT_INTERLEAVEDATA pointer passed to RTSP interleave callback
CURLOPT_INTERLEAVEFUNCTION callback for RTSP interleaved data
CURLOPT_IOCTLDATA pointer passed to I/O callback
CURLOPT_IOCTLFUNCTION callback for I/O operations
CURLOPT_IPRESOLVE IP protocol version to use
CURLOPT_ISSUERCERT issuer SSL certificate filename
CURLOPT_ISSUERCERT_BLOB issuer SSL certificate from memory blob
CURLOPT_KEEP_SENDING_ON_ERROR keep sending on early HTTP response \>= 300
CURLOPT_KEYPASSWD passphrase to private key
CURLOPT_KRBLEVEL FTP kerberos security level
CURLOPT_LOCALPORT local port number to use for socket
CURLOPT_LOCALPORTRANGE number of additional local ports to try
CURLOPT_LOGIN_OPTIONS login options
CURLOPT_LOW_SPEED_LIMIT low speed limit in bytes per second
CURLOPT_LOW_SPEED_TIME low speed limit time period
CURLOPT_MAIL_AUTH SMTP authentication address
CURLOPT_MAIL_FROM SMTP sender address
CURLOPT_MAIL_RCPT list of SMTP mail recipients
CURLOPT_MAIL_RCPT_ALLOWFAILS allow RCPT TO command to fail for some recipients
CURLOPT_MAXAGE_CONN max idle time allowed for reusing a connection
CURLOPT_MAXCONNECTS maximum connection cache size
CURLOPT_MAXFILESIZE maximum file size allowed to download
CURLOPT_MAXFILESIZE_LARGE maximum file size allowed to download
CURLOPT_MAXLIFETIME_CONN max lifetime (since creation) allowed for reusing a connection
CURLOPT_MAXREDIRS maximum number of redirects allowed
CURLOPT_MAX_RECV_SPEED_LARGE rate limit data download speed
CURLOPT_MAX_SEND_SPEED_LARGE rate limit data upload speed
CURLOPT_MIMEPOST send data from mime structure
CURLOPT_MIME_OPTIONS set MIME option flags
CURLOPT_NETRC enable use of .netrc
CURLOPT_NETRC_FILE filename to read .netrc info from
CURLOPT_NEW_DIRECTORY_PERMS permissions for remotely created directories
CURLOPT_NEW_FILE_PERMS permissions for remotely created files
CURLOPT_NOBODY do the download request without getting the body
CURLOPT_NOPROGRESS switch off the progress meter
CURLOPT_NOPROXY disable proxy use for specific hosts
CURLOPT_NOSIGNAL skip all signal handling
CURLOPT_OPENSOCKETDATA pointer passed to open socket callback
CURLOPT_OPENSOCKETFUNCTION callback for opening socket
CURLOPT_PASSWORD password to use in authentication
CURLOPT_PATH_AS_IS do not handle dot-dot sequences
CURLOPT_PINNEDPUBLICKEY pinned public key
CURLOPT_PIPEWAIT wait for multiplexing
CURLOPT_PORT remote port number to connect to
CURLOPT_POST make an HTTP POST
CURLOPT_POSTFIELDS data to POST to server
CURLOPT_POSTFIELDSIZE size of POST data pointed to
CURLOPT_POSTFIELDSIZE_LARGE size of POST data pointed to
CURLOPT_POSTQUOTE (S)FTP commands to run after the transfer
CURLOPT_POSTREDIR how to act on an HTTP POST redirect
CURLOPT_PREQUOTE commands to run before an FTP transfer
CURLOPT_PREREQDATA pointer passed to the pre-request callback
CURLOPT_PREREQFUNCTION user callback called when a connection has been
CURLOPT_PRE_PROXY pre-proxy host to use
CURLOPT_PRIVATE store a private pointer
CURLOPT_PROGRESSDATA pointer passed to the progress callback
CURLOPT_PROGRESSFUNCTION progress meter callback
CURLOPT_PROTOCOLS allowed protocols
CURLOPT_PROTOCOLS_STR allowed protocols
CURLOPT_PROXY proxy to use
CURLOPT_PROXYAUTH HTTP proxy authentication methods
CURLOPT_PROXYHEADER set of HTTP headers to pass to proxy
CURLOPT_PROXYPASSWORD password to use with proxy authentication
CURLOPT_PROXYPORT port number the proxy listens on
CURLOPT_PROXYTYPE proxy protocol type
CURLOPT_PROXYUSERNAME username to use for proxy authentication
CURLOPT_PROXYUSERPWD username and password to use for proxy authentication
CURLOPT_PROXY_CAINFO path to proxy Certificate Authority (CA) bundle
CURLOPT_PROXY_CAINFO_BLOB proxy Certificate Authority (CA) bundle in PEM format
CURLOPT_PROXY_CAPATH directory holding HTTPS proxy CA certificates
CURLOPT_PROXY_CRLFILE HTTPS proxy Certificate Revocation List file
CURLOPT_PROXY_ISSUERCERT proxy issuer SSL certificate filename
CURLOPT_PROXY_ISSUERCERT_BLOB proxy issuer SSL certificate from memory blob
CURLOPT_PROXY_KEYPASSWD passphrase for the proxy private key
CURLOPT_PROXY_PINNEDPUBLICKEY pinned public key for https proxy
CURLOPT_PROXY_SERVICE_NAME proxy authentication service name
CURLOPT_PROXY_SSLCERT HTTPS proxy client certificate
CURLOPT_PROXY_SSLCERTTYPE type of the proxy client SSL certificate
CURLOPT_PROXY_SSLCERT_BLOB SSL proxy client certificate from memory blob
CURLOPT_PROXY_SSLKEY private key file for HTTPS proxy client cert
CURLOPT_PROXY_SSLKEYTYPE type of the proxy private key file
CURLOPT_PROXY_SSLKEY_BLOB private key for proxy cert from memory blob
CURLOPT_PROXY_SSLVERSION preferred HTTPS proxy TLS version
CURLOPT_PROXY_SSL_CIPHER_LIST ciphers to use for HTTPS proxy
CURLOPT_PROXY_SSL_OPTIONS HTTPS proxy SSL behavior options
CURLOPT_PROXY_SSL_VERIFYHOST verify the proxy certificate's name against host
CURLOPT_PROXY_SSL_VERIFYPEER verify the proxy's SSL certificate
CURLOPT_PROXY_TLS13_CIPHERS ciphers suites for proxy TLS 1.3
CURLOPT_PROXY_TLSAUTH_PASSWORD password to use for proxy TLS authentication
CURLOPT_PROXY_TLSAUTH_TYPE HTTPS proxy TLS authentication methods
CURLOPT_PROXY_TLSAUTH_USERNAME username to use for proxy TLS authentication
CURLOPT_PROXY_TRANSFER_MODE append FTP transfer mode to URL for proxy
CURLOPT_PUT make an HTTP PUT request
CURLOPT_QUICK_EXIT allow to exit quickly
CURLOPT_QUOTE (S)FTP commands to run before transfer
CURLOPT_RANDOM_FILE file to read random data from
CURLOPT_RANGE byte range to request
CURLOPT_READDATA pointer passed to the read callback
CURLOPT_READFUNCTION read callback for data uploads
CURLOPT_REDIR_PROTOCOLS protocols allowed to redirect to
CURLOPT_REDIR_PROTOCOLS_STR protocols allowed to redirect to
CURLOPT_REFERER the HTTP referer header
CURLOPT_REQUEST_TARGET alternative target for this request
CURLOPT_RESOLVE provide custom hostname to IP address resolves
CURLOPT_RESOLVER_START_DATA pointer passed to the resolver start callback
CURLOPT_RESOLVER_START_FUNCTION callback called before a new name resolve is started
CURLOPT_RESUME_FROM offset to resume transfer from
CURLOPT_RESUME_FROM_LARGE offset to resume transfer from
CURLOPT_RTSP_CLIENT_CSEQ RTSP client CSEQ number
CURLOPT_RTSP_REQUEST RTSP request
CURLOPT_RTSP_SERVER_CSEQ RTSP server CSEQ number
CURLOPT_RTSP_SESSION_ID RTSP session ID
CURLOPT_RTSP_STREAM_URI RTSP stream URI
CURLOPT_RTSP_TRANSPORT RTSP Transport: header
CURLOPT_SASL_AUTHZID authorization identity (identity to act as)
CURLOPT_SASL_IR send initial response in first packet
CURLOPT_SEEKDATA pointer passed to the seek callback
CURLOPT_SEEKFUNCTION user callback for seeking in input stream
CURLOPT_SERVER_RESPONSE_TIMEOUT time allowed to wait for server response
CURLOPT_SERVER_RESPONSE_TIMEOUT_MS time allowed to wait for server response
CURLOPT_SERVICE_NAME authentication service name
CURLOPT_SHARE share handle to use
CURLOPT_SOCKOPTDATA pointer to pass to sockopt callback
CURLOPT_SOCKOPTFUNCTION callback for setting socket options
CURLOPT_SOCKS5_AUTH methods for SOCKS5 proxy authentication
CURLOPT_SOCKS5_GSSAPI_NEC SOCKS proxy GSSAPI negotiation protection
CURLOPT_SOCKS5_GSSAPI_SERVICE SOCKS5 proxy authentication service name
CURLOPT_SSH_AUTH_TYPES auth types for SFTP and SCP
CURLOPT_SSH_COMPRESSION enable SSH compression
CURLOPT_SSH_HOSTKEYDATA pointer to pass to the SSH host key callback
CURLOPT_SSH_HOSTKEYFUNCTION callback to check host key
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 MD5 checksum of SSH server public key
CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 SHA256 hash of SSH server public key
CURLOPT_SSH_KEYDATA pointer passed to the SSH key callback
CURLOPT_SSH_KEYFUNCTION callback for known host matching logic
CURLOPT_SSH_KNOWNHOSTS filename holding the SSH known hosts
CURLOPT_SSH_PRIVATE_KEYFILE private key file for SSH auth
CURLOPT_SSH_PUBLIC_KEYFILE public key file for SSH auth
CURLOPT_SSLCERT SSL client certificate
CURLOPT_SSLCERTTYPE type of client SSL certificate
CURLOPT_SSLCERT_BLOB SSL client certificate from memory blob
CURLOPT_SSLENGINE SSL engine identifier
CURLOPT_SSLENGINE_DEFAULT make SSL engine default
CURLOPT_SSLKEY private key file for TLS and SSL client cert
CURLOPT_SSLKEYTYPE type of the private key file
CURLOPT_SSLKEY_BLOB private key for client cert from memory blob
CURLOPT_SSLVERSION preferred TLS/SSL version
CURLOPT_SSL_CIPHER_LIST ciphers to use for TLS
CURLOPT_SSL_CTX_DATA pointer passed to SSL context callback
CURLOPT_SSL_CTX_FUNCTION SSL context callback
CURLOPT_SSL_EC_CURVES key exchange curves
CURLOPT_SSL_ENABLE_ALPN Application Layer Protocol Negotiation
CURLOPT_SSL_ENABLE_NPN use NPN
CURLOPT_SSL_FALSESTART TLS false start
CURLOPT_SSL_OPTIONS SSL behavior options
CURLOPT_SSL_SESSIONID_CACHE use the SSL session-ID cache
CURLOPT_SSL_VERIFYHOST verify the certificate's name against host
CURLOPT_SSL_VERIFYPEER verify the peer's SSL certificate
CURLOPT_SSL_VERIFYSTATUS verify the certificate's status
CURLOPT_STDERR redirect stderr to another stream
CURLOPT_STREAM_DEPENDS stream this transfer depends on
CURLOPT_STREAM_DEPENDS_E stream this transfer depends on exclusively
CURLOPT_STREAM_WEIGHT numerical stream weight
CURLOPT_SUPPRESS_CONNECT_HEADERS suppress proxy CONNECT response headers
CURLOPT_TCP_FASTOPEN TCP Fast Open
CURLOPT_TCP_KEEPALIVE TCP keep-alive probing
CURLOPT_TCP_KEEPCNT Maximum number of TCP keep-alive probes
CURLOPT_TCP_KEEPIDLE TCP keep-alive idle time wait
CURLOPT_TCP_KEEPINTVL TCP keep-alive interval
CURLOPT_TCP_NODELAY the TCP_NODELAY option
CURLOPT_TELNETOPTIONS set of telnet options
CURLOPT_TFTP_BLKSIZE TFTP block size
CURLOPT_TFTP_NO_OPTIONS send no TFTP options requests
CURLOPT_TIMECONDITION select condition for a time request
CURLOPT_TIMEOUT maximum time the transfer is allowed to complete
CURLOPT_TIMEOUT_MS maximum time the transfer is allowed to complete
CURLOPT_TIMEVALUE time value for conditional
CURLOPT_TIMEVALUE_LARGE time value for conditional
CURLOPT_TLS13_CIPHERS ciphers suites to use for TLS 1.3
CURLOPT_TLSAUTH_PASSWORD password to use for TLS authentication
CURLOPT_TLSAUTH_TYPE TLS authentication methods
CURLOPT_TLSAUTH_USERNAME username to use for TLS authentication
CURLOPT_TRAILERDATA pointer passed to trailing headers callback
CURLOPT_TRAILERFUNCTION callback for sending trailing headers
CURLOPT_TRANSFERTEXT request a text based transfer for FTP
CURLOPT_TRANSFER_ENCODING ask for HTTP Transfer Encoding
CURLOPT_UNIX_SOCKET_PATH Unix domain socket
CURLOPT_UNRESTRICTED_AUTH send credentials to other hosts too
CURLOPT_UPKEEP_INTERVAL_MS connection upkeep interval
CURLOPT_UPLOAD data upload
CURLOPT_UPLOAD_BUFFERSIZE upload buffer size
CURLOPT_URL URL for this transfer
CURLOPT_USERAGENT HTTP user-agent header
CURLOPT_USERNAME username to use in authentication
CURLOPT_USERPWD username and password to use in authentication
CURLOPT_USE_SSL request using SSL / TLS for the transfer
CURLOPT_VERBOSE verbose mode
CURLOPT_WILDCARDMATCH directory wildcard transfers
CURLOPT_WRITEDATA pointer passed to the write callback
CURLOPT_WRITEFUNCTION callback for writing received data
CURLOPT_WS_OPTIONS WebSocket behavior options
CURLOPT_XFERINFODATA pointer passed to the progress callback
CURLOPT_XFERINFOFUNCTION progress meter callback
CURLOPT_XOAUTH2_BEARER OAuth 2.0 access token