Free course

curl Course

Use curl to inspect, reproduce, debug, and automate HTTP and API transfers with clear security and reliability boundaries.

5 modules · 25 lessons · No signup

Prerequisites: Shell Commands and HTTP

~~~

Your progress

of lessons completed.

Course completed.

What you'll learn

Build precise requests, inspect every transfer stage, handle authentication and TLS safely, and turn a request into a reliable smoke test.

Take this course offline

Subscribe to my newsletter to get every free book and course in PDF and EPUB format.

Get the downloads

Course contents

  1. Request basics

    Install curl, make requests, inspect the exchange, and save response data.

    1. Inspect your curl installation
    2. Make a GET request
    3. Inspect a request with verbose output
    4. Save and name response files
    5. Check your understanding: request basics
  2. Send request data

    Build query strings, headers, JSON bodies, forms, uploads, and deliberate methods.

    1. Build a query string safely
    2. Send JSON
    3. Submit forms and files
    4. Choose a method deliberately
    5. Check your understanding: send request data
  3. State and authentication

    Send credentials, bearer tokens, cookies, redirects, and sensitive data with clear boundaries.

    1. Use Basic authentication
    2. Send a bearer token
    3. Store and reuse cookies
    4. Follow redirects with boundaries
    5. Check your understanding: state and authentication
  4. TLS and network control

    Verify servers, override name resolution, use proxies, and bound slow or unreliable transfers.

    1. Keep TLS verification enabled
    2. Override resolution with --resolve
    3. Send requests through a proxy
    4. Set timeouts and safe retries
    5. Check your understanding: tls and network control
  5. Debug and automate

    Measure transfers, capture traces, use configuration files, and build a repeatable API smoke test.

    1. Measure a transfer
    2. Capture a curl trace
    3. Write a curl config file
    4. Build an API smoke test
    5. Check your understanding: debug and automate