xref: /curl/docs/libcurl/opts/CURLINFO_XFER_ID.md (revision e3fe0200)
1---
2c: Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
3SPDX-License-Identifier: curl
4Title: CURLINFO_XFER_ID
5Section: 3
6Source: libcurl
7See-also:
8  - CURLINFO_CONN_ID (3)
9  - curl_easy_getinfo (3)
10  - curl_easy_setopt (3)
11Protocol:
12  - All
13---
14
15# NAME
16
17CURLINFO_XFER_ID - get the ID of a transfer
18
19# SYNOPSIS
20
21~~~c
22#include <curl/curl.h>
23
24CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_XFER_ID,
25                           curl_off_t *xfer_id);
26~~~
27
28# DESCRIPTION
29
30Pass a pointer to a *curl_off_t* to receive the identifier of the
31current/last transfer done with the handle. Stores -1 if no transfer
32has been started yet for the handle.
33
34The transfer id is unique among all transfers performed using the same
35connection cache. This is implicitly the case for all transfers in the
36same multi handle.
37
38# EXAMPLE
39
40~~~c
41int main(void)
42{
43  CURL *curl = curl_easy_init();
44  if(curl) {
45    CURLcode res;
46    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
47
48    /* Perform the request */
49    res = curl_easy_perform(curl);
50
51    if(!res) {
52      curl_off_t xfer_id;
53      res = curl_easy_getinfo(curl, CURLINFO_XFER_ID, &xfer_id);
54      if(!res) {
55        printf("Transfer ID: %" CURL_FORMAT_CURL_OFF_T "\n", xfer_id);
56      }
57    }
58  }
59}
60~~~
61
62# AVAILABILITY
63
64Added in 8.2.0
65
66# RETURN VALUE
67
68Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
69