# IRPCVaultExtensionMethods.ExecuteAnonymousExtensionMethod

Location: [gRPC API](https://developer.m-files.com/APIs/gRPC-API/index.md) > [Vault API](https://developer.m-files.com/APIs/gRPC-API/vault/index.md) > [Vault extension methods](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultExtensionMethods/index.md)

HTML version: https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultExtensionMethods/ExecuteAnonymousExtensionMethod/

Badges: `Vault API / standard` `write` `no session` `returns metadata structure version`

Passes an anonymous HTTP request, such as a webhook call, to a vault application. Used by the
M-Files web server.

- **Service:** [Vault extension methods](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultExtensionMethods/index.md) `MFiles.IRPCVaultExtensionMethods`
- **gRPC method:** `/MFiles.IRPCVaultExtensionMethods/ExecuteAnonymousExtensionMethod`
- **HTTP (mf-http-grpc):** `POST /grpc/v1/execute-anonymous-extension-method`
- **Request:** [`ExecuteAnonymousExtensionMethodRequest`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultExtensionMethods/ExecuteAnonymousExtensionMethod/index.md#request)
- **Response:** [`ExecuteAnonymousExtensionMethodResponse`](https://developer.m-files.com/APIs/gRPC-API/Reference/MFiles.IRPCVaultExtensionMethods/ExecuteAnonymousExtensionMethod/index.md#response)
- **Book and level:** Vault API, standard
- **Kind:** write
- **Session:** Not needed: the call can be made before logging in.
- **Idempotent:** no
- **Returns metadata structure version:** yes (in the mfiles-metadata-version-bin trailer)
- **Streaming:** none (unary)

<a id="remarks"></a>

## Remarks

- No session is needed. The server finds the vault by `vault_dns`, which must match a host name
  that the server administrator has mapped to a vault; otherwise the call fails with "The
  parameter is incorrect.".
- The method runs without a user. The receiving application must authenticate and validate the
  request itself.
- `http_path` must not be empty and is limited to 10240 characters. `http_method` must be one of
  CONNECT, DELETE, GET, HEAD, OPTIONS, POST or PUT. Other values fail with "The parameter is
  incorrect.".

<a id="request"></a>

## Request: ExecuteAnonymousExtensionMethodRequest

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `vault_dns` | `string` | The host name of the vault, as mapped on the server. |
| `method_identifier` | `string` | The name of the anonymous extension method. |
| `http_path` | `string` | The path and query string of the HTTP request. |
| `http_method` | `string` | The HTTP method of the request, for example `POST`. |
| `http_headers[]` | repeated [`NamedValue`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.NamedValue/index.md) | The headers of the HTTP request. |
| `http_headers[].key` | `string` | The name of the value. |
| `http_headers[].value` | [`TypedValue`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.TypedValue/index.md) | The value as a serialized bytearray. |
| `http_headers[].value.is_null_value` | `bool` | True if the value is empty. `data` is then unset. |
| `http_headers[].value.type` | [`Datatype`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.Datatype/index.md) | The data type of the value. |
| `http_headers[].value.data` | [`TypedValueUnion`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.TypedValueUnion/index.md) | The value, in the member that matches `type`. Unset for an empty value. |
| `request_body` | `bytes` | The body of the HTTP request. |

<a id="response"></a>

## Response: ExecuteAnonymousExtensionMethodResponse

> Nested message fields are expanded to depth 3; follow a type link for deeper levels and for the type's own page.

| Field | Type | Description |
|---|---|---|
| `response_http_headers[]` | repeated [`NamedValue`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.NamedValue/index.md) | The headers to return in the HTTP response. |
| `response_http_headers[].key` | `string` | The name of the value. |
| `response_http_headers[].value` | [`TypedValue`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.TypedValue/index.md) | The value as a serialized bytearray. |
| `response_http_headers[].value.is_null_value` | `bool` | True if the value is empty. `data` is then unset. |
| `response_http_headers[].value.type` | [`Datatype`](https://developer.m-files.com/APIs/gRPC-API/Reference/Enums/MFiles.Datatype/index.md) | The data type of the value. |
| `response_http_headers[].value.data` | [`TypedValueUnion`](https://developer.m-files.com/APIs/gRPC-API/Reference/Messages/MFiles.TypedValueUnion/index.md) | The value, in the member that matches `type`. Unset for an empty value. |
| `response_body` | `bytes` | The body of the HTTP response. |
