libsoup is an HTTP client/server library for GNOME. It uses GObjects and the glib main loop to integrate well with GNOME applications and also has a synchronous API for use in CLI tools.

Features include:

  • Both asynchronous (GMainLoop and callback-based) and synchronous APIs

  • Automatic connection caching and reuse.
  • TLS support using GnuTLS, OpenSSL, or SChannel (provided by glib-networking).
  • Proxy support, including authentication and SSL tunneling (provided by glib-networking).
  • Support for HTTP/1.1 and HTTP/2 (client-only)
  • Client support for Digest, NTLM, and Basic authentication
  • Server support for Digest and Basic authentication

See the libsoup client-side HOWTO and libsoup server-side HOWTO for an introduction to using the client and server APIs.


You can check out the current development snapshot using:

 git clone

Projects/libsoup (last edited 2022-01-24 23:58:12 by TingPing)