CURLINFO_XFER_ID(3)

CURLINFO_XFER_ID(3) πŸ’…

okay so bestie, you're in the Library Functions Manual and this page is CURLINFO_XFER_ID β€” the one that hands you the ID of the transfer. no cap, it's giving tiny-but-important. 🫢

πŸ’– 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. πŸ’€ lowkey important: -1 is the "no transfer started yet" value.

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. πŸ‘‘ iykyk.

🌈 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);
      }
    }
  }
}

the example ate, fr fr. πŸ“

πŸŽ€ 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 πŸ”₯


source libcurl Β· dated 2026-10-12 Β· page CURLINFO_XFER_ID(3) β€” bye bestie, go slay those transfers! πŸ’–πŸŽ€ periodt.

πŸ“¦ where this page comes from