# Web and network

URLs, domain names, HTTP values, IP addresses and network identifiers.

## Topics

| Page | What it covers |
|---|---|
| [Web and software](/docs/web-and-software.md) | The web types are the values a web app and its network pass around: URLs and paths, domain names, HTTP statuses and headers, cookies, IP ranges, and the problem documents an API reports failures with. |

## Types

| Type | What it is |
|---|---|
| [`Url`](/docs/types/type-url.md) | An `http://` or `https://` address with a host. |
| [`UrlPath`](/docs/types/type-url-path.md) | A URL's path, starting with `/`: `/products/42`. |
| [`RelativeUrl`](/docs/types/type-relative-url.md) | An address relative to another: `../images/logo.png`, `?page=2`. |
| [`Slug`](/docs/types/type-slug.md) | A URL-safe name: lower-case words joined by hyphens, `autumn-sale`. |
| [`DomainName`](/docs/types/type-domain-name.md) | A domain name: `example.com`. |
| [`Hostname`](/docs/types/type-hostname.md) | A host: a domain name or an IP address. |
| [`WebOrigin`](/docs/types/type-web-origin.md) | A web origin: the scheme, the host and any port, `https://example.com`. |
| [`HttpMethod`](/docs/types/type-http-method.md) | An HTTP method a route is written with: `GET`, `POST`, `PUT`, `PATCH` or `DELETE`. |
| [`HttpStatus`](/docs/types/type-http-status.md) | An HTTP response's status code, from 100 to 599. |
| [`HttpHeaderName`](/docs/types/type-http-header-name.md) | An HTTP header's name, in lower case: `content-type`. |
| [`FileType`](/docs/types/type-file-type.md) | A file's media type: `image/png`, `application/pdf` and so on. |
| [`UserAgent`](/docs/types/type-user-agent.md) | What an HTTP client says it is: `curl/8.7.1`. |
| [`ProblemDetails`](/docs/types/type-problem-details.md) | An HTTP API's error body, as other APIs often send one. |
| [`JsonPointer`](/docs/types/type-json-pointer.md) | A pointer into a JSON document: `/foo/0`. |
| [`Cookie`](/docs/types/type-cookie.md) | A cookie as a server sets it: `SID=31d4d96e; Path=/; Secure; HttpOnly`. |
| [`UtmParameters`](/docs/types/type-utm-parameters.md) | Where a visit came from, as marketing links carry it: source, medium and campaign. |
| [`IpAddress`](/docs/types/type-ip-address.md) | An IPv4 or IPv6 address: `192.0.2.1`, `2001:db8::1`. |
| [`Cidr`](/docs/types/type-cidr.md) | A range of IP addresses: `192.0.2.0/24`. |
| [`NetworkPort`](/docs/types/type-network-port.md) | A TCP or UDP port, from 1 to 65535. |
| [`MacAddress`](/docs/types/type-mac-address.md) | A network card's hardware address: `AC-DE-48-00-00-80`. |
| [`Imei`](/docs/types/type-imei.md) | A mobile device's 15-digit IMEI. |
| [`Emoji`](/docs/types/type-emoji.md) | One emoji: `😀`, `👍🏽`. |
| [`PushToken`](/docs/types/type-push-token.md) | The address of a device for push notifications, from Apple's or Google's service. |
