Breadcrumbs

Supported cURL Options

Scheer PAS cURL Options

Option

Data Type

Remarks

E2E_FORBID_REUSE

Boolean

If E2E_FORBID_REUSE is true for a URL adapter call, then all curl connections are closed after the request.

Native cURL Options

The following options - listed in alphabetical order - are currently supported (refer to the cURL documentation for more details).

Legend:

check mark Option is recognized and forwarded to cURL
warning Option is recognized and forwarded to cURL, but may overwrite built-in URL adapter functionality
cross mark Option is not supported and not forwarded to cURL

cURL Data Types

All cURL data types can be set by using xUML Base Type String :

cURL Data Type

xUML Base Type

Comment

Array(String)

Array of Strings

You must use a cast() to use this type, because the URL option value is of type String.

Bitmask

String

It is a string containing a string of cURL options separated by the pipe character ("|").

Blob

n/a

Is not supported.

Boolean

String

You can use false or 0 for false and true or 1 for true.

Callback

n/a

Is not supported.

Constant

String

Use the defined strings from cURL. For example, for the option CURLOPT_FTP_FILEMETHOD you can use CURLFTPMETHOD_MULTICWD, CURLFTPMETHOD_NOCWD or CURLFTPMETHOD_SINGLECWD. The xUML Runtime will convert the strings to numbers.

FileHandle

n/a

Is not supported.

Integer

String

String will be converted to a number.

String

String


List of Supported Options

Option

Data Type

Supported

Supported cURL Constants / Remarks

CURLOPT_ACCEPT_ENCODING

String

check mark


CURLOPT_ACCEPTTIMEOUT_MS

Integer

check mark


CURLOPT_APPEND

String

check mark


CURLOPT_AUTOREFERER

Boolean

check mark


CURLOPT_AWS_SIGV4

String

check mark


CURLOPT_BUFFERSIZE

Integer

check mark


CURLOPT_CAINFO

String

warning


CURLOPT_CAPATH

String

check mark

CURLOPT_CA_CACHE_TIMEOUT

Integer

check mark

In seconds (see cURL documentation).

CURLOPT_CONNECTTIMEOUT

Integer

check mark

In seconds (see cURL documentation).

This timeout applies to the connection phase of the TCP/IP protocol only. If you want to use timeout limiting the whole interaction time, use CURLOPT_TIMEOUT.

CURLOPT_CONNECT_ONLY

Boolean

check mark


CURLOPT_CRLF

Boolean

check mark


CURLOPT_CRLFILE

String

check mark


CURLOPT_CONV_FROM_NETWORK_FUNCTION

Callback

cross mark


CURLOPT_CONV_FROM_UTF8_FUNCTION

Callback

cross mark


CURLOPT_CONV_TO_NETWORK_FUNCTION

Callback

cross mark


CURLOPT_COOKIE

String

check mark


CURLOPT_COOKIEFILE

String

check mark


CURLOPT_COOKIEJAR

String

check mark


CURLOPT_COOKIELIST

String

check mark


CURLOPT_COOKIESESSION

Boolean

check mark


CURLOPT_CUSTOMREQUEST

String

warning


CURLOPT_DEBUGDATA

Blob

cross mark


CURLOPT_DEBUGFUNCTION

Callback

cross mark


CURLOPT_DIRLISTONLY

String

check mark


CURLOPT_DNS_CACHE_TIMEOUT

Integer

check mark

In seconds (see cURL documentation).

CURLOPT_DNS_USE_GLOBAL_CACHE

Boolean

check mark


CURLOPT_DOH_SSL_VERIFYHOST

Boolean

check mark


CURLOPT_DOH_SSL_VERIFYPEER

Boolean

check mark


CURLOPT_DOH_SSL_VERIFYSTATUS

Integer

check mark


CURLOPT_DOH_URL

String

check mark


CURLOPT_EGDSOCKET

String

check mark


CURLOPT_ENCODING

String

check mark


CURLOPT_ERRORBUFFER

Blob

cross mark


CURLOPT_EXPECT_100_TIMEOUT_MS

Integer

check mark


CURLOPT_FAILONERROR

Boolean

warning


CURLOPT_FILETIME

Boolean

check mark


CURLOPT_FORBID_REUSE

Boolean

check mark


CURLOPT_FRESH_CONNECT

Boolean

check mark


CURLOPT_FTP_ACCOUNT

String

check mark


CURLOPT_FTP_ALTERNATIVE_TO_USER

String

check mark


CURLOPT_FTPAPPEND

Boolean

check mark


CURLOPT_FTP_CREATE_MISSING_DIRS

Boolean

check mark


CURLOPT_FTP_FILEMETHOD

Constant

check mark

CURLFTPMETHOD_DEFAULT

Same behavior as if no method is specified.

CURLFTPMETHOD_MULTICWD

cURL does a single CWD operation for each path part in the given URL.

CURLFTPMETHOD_NOCWD

cURL does no CWD at all.

CURLFTPMETHOD_SINGLECWD

libccURL does one CWD with the full target directory and then operates on the file "normally".

CURLOPT_FTPLISTONLY

Boolean

check mark


CURLOPT_FTP_RESPONSE_TIMEOUT

Integer

check mark

In seconds (see cURL documentation).

CURLOPT_FTPPORT

String

check mark


CURLOPT_FTP_SKIP_PASV_IP

Boolean

check mark


CURLOPT_FTP_SSL

Constant

check mark

Deprecated. Use CURLOPT_USE_SSL instead.

CURLOPT_FTP_SSL_CCC

Boolean

check mark

false represents CURLFTPSSL_CCC_NONE, true is for CURLFTPSSL_CCC_PASSIVE.

CURLOPT_FTPSSLAUTH

Constant

check mark

CURLFTPAUTH_DEFAULT

Allow cURL to decide.

CURLFTPAUTH_SSL

Try SSL first, and only if that fails try TLS.

CURLFTPAUTH_TLS

Try TLS first, and only if that fails try SSL.

CURLOPT_FTP_USE_EPRT

Boolean

check mark


CURLOPT_FTP_USE_EPSV

Boolean

check mark


CURLOPT_FTP_USE_PRET

String

check mark


CURLOPT_FOLLOWLOCATION

Boolean

warning


CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS

Integer

check mark


CURLOPT_HAPROXYPROTOCOL

String

check mark


CURLOPT_HEADER

Boolean

check mark


CURLOPT_HEADERDATA

Blob

cross mark


CURLOPT_HEADERFUNCTION

Callback

cross mark


CURLOPT_HTTPAUTH

Constant

check mark

CURLAUTH_ANY

cURL will automatically select the one it finds most secure.

CURLAUTH_ANYSAFE

All except basic authentication. cURL will automatically select the one it finds most secure.

CURLAUTH_AWS_SIGV4

AWS V4 signature (see CURLOPT_AWS_SIGV4). 

CURLAUTH_BASIC

basic authentication

CURLAUTH_DIGEST

digest authentication

CURLAUTH_GSSNEGOTIATE

deprecated, use CURLAUTH_NEGOTIATE instead

CURLAUTH_NEGOTIATE

negotiate (SPNEGO) authentication

CURLAUTH_NTLM

NTLM authentication

CURLOPT_HTTPGET

Boolean

check mark


CURLOPT_HTTPHEADER

Array(String)

warning


CURLOPT_HTTPPOST

Other

cross mark


CURLOPT_HTTPPROXYTUNNEL

Boolean

check mark


CURLOPT_HTTP_VERSION

Constant

check mark

CURL_HTTP_VERSION_NONE

cURL will use whatever HTTP version it thinks fit.

CURL_HTTP_VERSION_1_0

Enforce HTTP 1.0 requests.

CURL_HTTP_VERSION_1_1

Enforce HTTP 1.1 requests.

CURLOPT_HTTP200ALIASES

Array(String)

check mark


CURLOPT_IGNORE_CONTENT_LENGTH

Boolean

check mark


CURLOPT_INFILESIZE

Integer

warning


CURLOPT_INFILESIZE_LARGE

Integer

warning


CURLOPT_INTERFACE

String

warning


CURLOPT_IOCTLDATA

Blob

cross mark


CURLOPT_IOCTLFUNCTION

Callback

cross mark


CURLOPT_IPRESOLVE

Constant

check mark

CURL_IPRESOLVE_WHATEVER

Resolves addresses to all IP versions that your system allows.

CURL_IPRESOLVE_V4

Resolve to IPv4 addresses.

CURL_IPRESOLVE_V6

Resolve to IPv6 addresses.

CURLOPT_ISSUERCERT

String

check mark


CURLOPT_KEYPASSWD

String

check mark


CURLOPT_KRB4LEVEL

String

check mark


CURLOPT_LOCALPORT

Integer

check mark


CURLOPT_LOCALPORTRANGE

Integer

check mark


CURLOPT_LOW_SPEED_LIMIT

Integer

check mark


CURLOPT_LOW_SPEED_TIME

Integer

check mark

In seconds (see cURL documentation).

CURLOPT_MAXAGE_CONN

Integer

check mark


CURLOPT_MAXCONNECTS

Integer

check mark


CURLOPT_MAXFILESIZE

Integer

check mark


CURLOPT_MAXFILESIZE_LARGE

Integer

check mark


CURLOPT_MAXLIFETIME_CONN

Integer

check mark


CURLOPT_MAX_RECV_SPEED_LARGE

Integer

check mark


CURLOPT_MAXREDIRS

Integer

warning


CURLOPT_MAX_SEND_SPEED_LARGE

Integer

check mark


CURLOPT_MIME_OPTIONS

Constant

check mark

CURLMIMEOPT_FORMESCAPE

Tells libcurl to escape multipart form field and file names using the backslash-escaping algorithm rather than percent-encoding (HTTP only). See cURL documentation for more.

CURLOPT_NETRC

Constant

check mark

CURL_NETRC_OPTIONAL

The use of your ~/.netrc file is optional, and information in the URL is to be preferred.

CURL_NETRC_IGNORED

cURL will ignore the file and use only the information in the URL.

CURL_NETRC_REQUIRED

The use of the file is required, the information in the URL is ignored.

CURLOPT_NETRC_FILE

String

check mark


CURLOPT_NEW_DIRECTORY_PERMS

Integer

check mark


CURLOPT_NEW_FILE_PERMS

Integer

check mark


CURLOPT_NOBODY

Boolean

check mark


CURLOPT_NOPROGRESS

Boolean

check mark


CURLPOT_NOPROXY

String

check mark

See cURL documentation.

CURLOPT_NOSIGNAL

Boolean

warning


CURLOPT_QUOTE

Array(String)

check mark


CURLOPT_PATH_AS_IS

String

check mark


CURLOPT_PINNEDPUBLICKEY

String

check mark


CURLOPT_PORT

Integer

check mark


CURLOPT_POST

Boolean

check mark


CURLOPT_POSTFIELDS

Blob

cross mark


CURLOPT_POSTFIELDSIZE

Integer

check mark


CURLOPT_POSTFIELDSIZE_LARGE

Integer

check mark


CURLOPT_POSTQUOTE

Array(String)

warning


CURLOPT_POSTREDIR

String

check mark


CURLOPT_PREQUOTE

Array(String)

check mark


CURLOPT_PREREQDATA

Blob

cross mark


CURLOPT_PREREQFUNCTION

Callback

cross mark


CURLOPT_PRIVATE

Blob

cross mark


CURLOPT_PROGRESSDATA

Blob

cross mark


CURLOPT_PROGRESSFUNCTION

Callback

cross mark


CURLOPT_PROTOCOLS_STR

String

cross mark


CURLOPT_PROXY

String

warning


CURLOPT_PROXYAUTH

Constant

check mark

CURLAUTH_BASIC

basic authentication

CURLAUTH_DIGEST

digest authentication

CURLAUTH_NEGOTIATE

negotiate (SPNEGO) authentication

CURLAUTH_GSSNEGOTIATE

deprecated, use CURLAUTH_NEGOTIATE instead

CURLAUTH_NTLM

NTLM authentication

CURLAUTH_ANY

cURL will automatically select the one it finds most secure.

CURLAUTH_ANYSAFE

All except basic authentication. cURL will automatically select the one it finds most secure.

CURLOPT_PROXY_CAINFO

String

check mark


CURLOPT_PROXY_CAPATH

String

check mark


CURLOPT_PROXY_CRLFILE

String

check mark


CURLOPT_PROXYHEADER

String

check mark


CURLOPT_PROXY_ISSUERCERT

String

check mark


CURLOPT_PROXY_KEYPASSWD

String

check mark


CURLOPT_PROXYPASSWORD

String

check mark


CURLOPT_PROXY_PINNEDPUBLICKEY

String

check mark


CURLOPT_PROXYPORT

Integer

warning


CURLOPT_PROXY_SERVICE_NAME

String

check mark


CURLOPT_PROXY_SSLCERT

String

check mark


CURLOPT_PROXY_SSLCERTTYPE

String

check mark


CURLOPT_PROXY_SSL_CIPHER_LIST

String

check mark


CURLOPT_PROXY_SSLKEY

String

check mark


CURLOPT_PROXY_SSLKEYTYPE

String

check mark


CURLOPT_PROXY_SSL_OPTIONS

String

check mark


CURLOPT_PROXY_SSL_VERIFYHOST

String

check mark


CURLOPT_PROXY_SSL_VERIFYPEER

String

check mark


CURLOPT_PROXY_SSLVERSION

String

check mark


CURLOPT_PROXY_TLS13_CIPHERS

String

check mark


CURLOPT_PROXY_TRANSFER_MODE

String

check mark


CURLOPT_PROXYTYPE

Constant

warning

CURLPROXY_HTTP

HTTP proxy

CURLPROXY_SOCKS4

SOCKS4 proxy

CURLPROXY_SOCKS5

SOCKS5 proxy

CURLOPT_PROXYUSERNAME

String

check mark


CURLOPT_PROXYUSERPWD

String

warning


CURLOPT_PUT

Boolean

check mark


CURLOPT_QUICK_EXIT

Boolean

cross mark


CURLOPT_RANDOM_FILE

String

check mark


CURLOPT_RANGE

String

check mark


CURLOPT_READDATA

Blob

cross mark


CURLOPT_READFUNCTION

Callback

cross mark


CURLOPT_REDIR_PROTOCOLS_STR

String

cross mark


CURLOPT_REFERER

String

check mark


CURLOPT_RESOLVE

String

check mark


CURLOPT_RESUME_FROM

Integer

check mark


CURLOPT_RESUME_FROM_LARGE

Integer

check mark


CURLOPT_SERVER_RESPONSE_TIMEOUT

Integer

check mark


CURLOPT_SERVICE_NAME

String

check mark


CURLOPT_SOCKS5_AUTH

String

check mark


CURLOPT_SOCKS5_GSSAPI_NEC

String

check mark


CURLOPT_SOCKS5_GSSAPI_SERVICE

String

check mark


CURLOPT_SSH_AUTH_TYPES

Constant

check mark

CURLSSH_AUTH_KEYBOARD  is not implemented for obvious reasons.

CURLOPT_SSH_HOSTKEYDATA

Blob

cross mark


CURLOPT_SSH_HOSTKEYFUNCTION

Callback

cross mark


CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256

String

check mark


CURLOPT_SSH_PUBLIC_KEYFILE

String

check mark


CURLOPT_SSH_PUBLIC_KEY_MD5

String

check mark


CURLOPT_SSH_PRIVATE_KEYFILE

String

check mark


CURLOPT_SHARE

FileHandle

cross mark


CURLOPT_SSLCERT

String

warning


CURLOPT_SSLCERTTYPE

String

warning


CURLOPT_SSLCERTPASSWD

String

check mark


CURLOPT_SSL_CIPHER_LIST

String

check mark


CURLOPT_SSL_CTX_DATA

Blob

cross mark


CURLOPT_SSL_CTX_FUNCTION

Callback

cross mark


CURLOPT_SSLENGINE

String

check mark


CURLOPT_SSLENGINE_DEFAULT

None

check mark


CURLOPT_SSLKEY

String

warning


CURLOPT_SSLKEYTYPE

String

warning


CURLOPT_SSLKEYPASSWD

String

warning


CURLOPT_SSL_OPTIONS

Constant

check mark

CURLSSLOPT_ALLOW_BEAST

Tells libcurl to not attempt to use any workarounds for a security flaw in the SSL3 and TLS1.0 protocols. See cURL documentation for more.

CURLOPT_SSL_SESSIOID_CACHE

Boolean

check mark


CURLOPT_SSL_VERIFYHOST

Integer

warning


CURLOPT_SSL_VERIFYPEER

Boolean

warning


CURLOPT_SSL_VERIFYSTATUS

Integer

check mark



CURLOPT_SSLVERSION

Constant

check mark

CURL_SSLVERSION_DEFAULT

Default action. This will attempt to figure out the remote SSL protocol version.

CURL_SSLVERSION_TLSv1

Use TLSv1.x.

CURL_SSLVERSION_SSLv2

Use SSLv2.

CURL_SSLVERSION_SSLv3

Use SSLv3.

CURLOPT_STDERR

FileHandle

cross mark


CURLOPT_TCP_NODELAY

Boolean

check mark


CURLOPT_TELNETOPTIONS

Array(String)

check mark


CURLOPT_TIMECONDITION

Constant

check mark

CURL_TIMECOND_IFMODSINCE

CURL_TIMECOND_IFUNMODSINCE

CURLOPT_TIMEOUT

Integer

check mark

In seconds (see cURL documentation).

CURLOPT_TIMEOUT_MS

Integer

check mark

In milliseconds (see cURL documentation).

CURLOPT_TIMEVALUE

Integer

check mark


CURLOPT_TIMEVALUE_LARGE

Integer

check mark


CURLOPT_TLS13_CIPHERS

String

check mark


CURLOPT_TRANSFERTEXT

Boolean

check mark


CURLOPT_UNRESTRICTED_AUTH

Boolean

check mark


CURLOPT_UPLOAD

Boolean

warning


CURLOPT_URL

String

warning


CURLOPT_USE_SSL

Constant

check mark

CURLUSESSL_NONE  

 Do not attempt to use SSL.

CURLUSESSL_TRY

Try using SSL, proceed as normal otherwise.

CURLUSESSL_CONTROL

Require SSL for the control connection

CURLUSESSL_ALL

Require SSL for all communication.

CURLOPT_USERAGENT

String

check mark



CURLOPT_USERPWD

String

warning



CURLOPT_VERBOSE

Boolean

warning



CURLOPT_WRITEDATA

Blob

cross mark



CURLOPT_WRITEFUNCTION

Callback

cross mark



CURLOPT_WS_OPTIONS

Bitmask

cross mark



CURLOPT_XOAUTH2_BEARER

String

check mark




📗