CURLINFO_XFER_ID(3) Introduction to Library Functions CURLINFO_XFER_ID(3)
CURLINFO_XFER_ID - ID of the transfer
#include <curl/curl.h>
CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_XFER_ID,
curl_off_t *xfer_id);
Pass a pointer to a curl_off_t to receive the identifier of the
current/last transfer done with the handle. Stores -1 if no transfer
has been started yet for the handle.
The transfer id is unique among all transfers performed using the
same connection cache. This is implicitly the case for all transfers
in the same multi handle.
This functionality affects all supported protocols
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
CURLcode result;
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
/* Perform the request */
result = curl_easy_perform(curl);
if(!result) {
curl_off_t xfer_id;
result = curl_easy_getinfo(curl, CURLINFO_XFER_ID, &xfer_id);
if(!result) {
printf("Transfer ID: %" CURL_FORMAT_CURL_OFF_T "\n", xfer_id);
}
}
}
}
Added in curl 8.2.0
curl_easy_getinfo(3) returns a CURLcode indicating success or error.
CURLE_OK (0) means everything was OK, non-zero means an error
occurred, see libcurl-errors(3).
CURLINFO_CONN_ID(3), curl_easy_getinfo(3), curl_easy_setopt(3)
libcurl 2026-01-08 CURLINFO_XFER_ID(3)
NAME
CURLINFO_XFER_ID - ID of the transfer
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_XFER_ID,
curl_off_t *xfer_id);
DESCRIPTION
Pass a pointer to a curl_off_t to receive the identifier of the
current/last transfer done with the handle. Stores -1 if no transfer
has been started yet for the handle.
The transfer id is unique among all transfers performed using the
same connection cache. This is implicitly the case for all transfers
in the same multi handle.
PROTOCOLS
This functionality affects all supported protocols
EXAMPLE
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
CURLcode result;
curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
/* Perform the request */
result = curl_easy_perform(curl);
if(!result) {
curl_off_t xfer_id;
result = curl_easy_getinfo(curl, CURLINFO_XFER_ID, &xfer_id);
if(!result) {
printf("Transfer ID: %" CURL_FORMAT_CURL_OFF_T "\n", xfer_id);
}
}
}
}
AVAILABILITY
Added in curl 8.2.0
RETURN VALUE
curl_easy_getinfo(3) returns a CURLcode indicating success or error.
CURLE_OK (0) means everything was OK, non-zero means an error
occurred, see libcurl-errors(3).
SEE ALSO
CURLINFO_CONN_ID(3), curl_easy_getinfo(3), curl_easy_setopt(3)
libcurl 2026-01-08 CURLINFO_XFER_ID(3)