CURLOPT_HTTPGET(3) Library Functions Manual CURLOPT_HTTPGET(3) NAME CURLOPT_HTTPGET - ask for an HTTP GET request SYNOPSIS #include CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPGET, long useget); DESCRIPTION Pass a long. If useget is 1, this forces the HTTP request to get back to using GET. Usable if a POST, HEAD, PUT, etc has been used previously using the same curl handle. When setting CURLOPT_HTTPGET(3) to 1, libcurl automatically sets CURLOPT_NOBODY(3) to 0 and CURLOPT_UPLOAD(3) to 0. Setting this option to zero has no effect. Applications need to explicitly select which HTTP request method to use, they cannot deselect a method. To reset a handle to default method, consider curl_easy_reset(3). DEFAULT 0 PROTOCOLS This functionality affects http only EXAMPLE int main(void) { CURL *curl = curl_easy_init(); if(curl) { CURLcode result; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com"); /* use a GET to fetch this */ curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L); /* Perform the request */ result = curl_easy_perform(curl); curl_easy_cleanup(curl); } } AVAILABILITY Added in curl 7.8.1 RETURN VALUE curl_easy_setopt(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 CURLOPT_NOBODY(3), CURLOPT_POST(3), CURLOPT_UPLOAD(3), curl_easy_reset(3) libcurl 2026-09-02 CURLOPT_HTTPGET(3)