Skip to content
This repository was archived by the owner on Aug 24, 2026. It is now read-only.
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/references/_attachments/ic.did
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@ type deposit_cycles_args = record {
type http_request_args = record {
url : text;
max_response_bytes : opt nat64;
method : variant { get; head; post; put; delete };
method : variant { get; head; post; put; delete; patch };
headers : vec http_header;
body : opt blob;
transform : opt record {
Expand Down
3 changes: 3 additions & 0 deletions docs/references/_attachments/interface-spec-changelog.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
## Changelog {#changelog}

### 0.62.0 (2025-06-03) {$0_62_0}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The date should be updated and this PR merged when the feature is rolled out on mainnet.

* Support for the HTTP method `PATCH` in canister `http_request` in non-replicated mode.

### 0.61.0 (2025-05-18) {$0_61_0}
* New management canister endpoint `canister_metrics`.

Expand Down
4 changes: 2 additions & 2 deletions docs/references/ic-interface-spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -3046,7 +3046,7 @@ In the replicated mode, the responses for all identical requests must match, too

For this reason, the calling canister can supply a transformation function, which the IC uses to let the canister sanitize the responses from such unique values. The transformation function is executed separately on the corresponding response received for a request (both in replicated and non-replicated modes). Only the transformed response will be available to the calling canister.

Currently, the `GET`, `HEAD`, and `POST` methods are supported for HTTP requests. Additionally, the `PUT` and `DELETE` methods are supported in non-replicated mode only. `PUT` and `DELETE` are restricted to non-replicated mode to avoid confusing race conditions that may occur with replicated execution.
Currently, the `GET`, `HEAD`, and `POST` methods are supported for HTTP requests. Additionally, the `PUT`, `DELETE`, and `PATCH` methods are supported in non-replicated mode only. `PUT`, `DELETE`, and `PATCH` are restricted to non-replicated mode to avoid confusing race conditions that may occur with replicated execution.

It is important to note the following for the usage of the `POST` method:

Expand All @@ -3070,7 +3070,7 @@ The following parameters should be supplied for the call:

- `max_response_bytes` - optional, specifies the maximal size of the response in bytes. If provided, the value must not exceed `2MB` (`2,000,000B`). The call will be charged based on this parameter. If not provided, the maximum of `2MB` will be used.

- `method` - currently, `GET`, `HEAD`, and `POST` are supported. Additionally, `PUT` and `DELETE` are supported in non-replicated mode only.
- `method` - currently, `GET`, `HEAD`, and `POST` are supported. Additionally, `PUT`, `DELETE`, and `PATCH` are supported in non-replicated mode only.

- `headers` - list of HTTP request headers and their corresponding values

Expand Down