# HTTP Method

Key: `technology.internet.http_method`

HTTP request method (GET, POST, PUT, DELETE, PATCH, HEAD, OPTIONS, TRACE, CONNECT). Broad categorization.

Page: <https://meridian.online/docs/finetype/types/technology/internet/http_method>

Samples: `GET`, `post`, `Delete`

## Use it

Shell

```shell
finetype infer -i 'GET' --mode column
# → technology.internet.http_method
```

DuckDB

```sql
SELECT ft_infer('GET');
-- → 'technology.internet.http_method'
```

Cast template: {col} is your column

```sql
CAST({col} AS VARCHAR)
```

## Background

### Origin

RFC 1945, Hypertext Transfer Protocol -- HTTP/1.0, was published in May 1996 by T. Berners-Lee, R. Fielding and H. Frystyk.[[1]](https://www.rfc-editor.org/rfc/rfc1945) RFC 1945 defines three methods, GET, HEAD and POST, and allows further extension methods as tokens.[[1]](https://www.rfc-editor.org/rfc/rfc1945)

RFC 9110 defines eight methods: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS and TRACE.[[2]](https://www.rfc-editor.org/rfc/rfc9110) RFC 9110 requires all general-purpose servers to support GET and HEAD, and makes every other method optional.[[2]](https://www.rfc-editor.org/rfc/rfc9110) PATCH was added by RFC 5789, PATCH Method for HTTP, written by L. Dusseault and J. Snell and published in March 2010.[[3]](https://www.rfc-editor.org/rfc/rfc5789) RFC 5789 explains that the existing PUT method only allows a complete replacement of a document, so PATCH was added to modify an existing resource.[[3]](https://www.rfc-editor.org/rfc/rfc5789)

IANA keeps the Hypertext Transfer Protocol (HTTP) Method Registry, and new entries go through IETF Review.[[4]](https://www.iana.org/assignments/http-methods/http-methods.xhtml)

### Use

MDN describes request methods as indicating the purpose of a request, and notes they are sometimes called HTTP verbs.[[5]](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Methods) RFC 9110 defines GET, HEAD, OPTIONS and TRACE as safe methods.[[2]](https://www.rfc-editor.org/rfc/rfc9110) RFC 9110 defines PUT, DELETE and the safe methods as idempotent.[[2]](https://www.rfc-editor.org/rfc/rfc9110) When a log or API trace has a method column, the safe and idempotent split is a quick way to separate reads from writes before you count anything. (Meridian's view)

Apache HTTP Server's Common Log Format records the client's request line in double quotes, as in GET /apache\_pb.gif HTTP/1.0, with the method first.[[6]](https://httpd.apache.org/docs/2.4/logs.html) Apache HTTP Server can also log the method on its own with the %m format string.[[6]](https://httpd.apache.org/docs/2.4/logs.html)

## Sources

1. [Hypertext Transfer Protocol -- HTTP/1.0](https://www.rfc-editor.org/rfc/rfc1945) — standard
2. [RFC 9110: HTTP Semantics](https://www.rfc-editor.org/rfc/rfc9110) — standard
3. [PATCH Method for HTTP](https://www.rfc-editor.org/rfc/rfc5789) — standard
4. [Hypertext Transfer Protocol (HTTP) Method Registry](https://www.iana.org/assignments/http-methods/http-methods.xhtml) — catalogue entry
5. [HTTP request methods - HTTP \| MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Methods) — secondary source
6. [Log Files - Apache HTTP Server Version 2.4](https://httpd.apache.org/docs/2.4/logs.html) — documentation

## How it's detected

Lower priority due to high cardinality but limited semantic information. Expanded enum + pattern to 27 case variants (UPPER/lower/Title per method) to fix the v16 training-audit finding where distilled http\_method rows (SAN JOAQUIN, GOAT, OPERATING, IN PROGRESS, ENROUTE) caused misclassification. Cascade: multi-branch validation-branch pass-rate feature becomes \~1.0 for real HTTP-method columns regardless of case (was \~1/3 when only UPPER variants passed).
