Skip to content
Written with Claude

REQUEST_HEADERS_PARAMETER_NAME

Also known as

request_headers_param_name (with or without @ prefix)

Set the parameter name that receives request headers when using parameter mode.

Syntax

code
@request_headers_parameter_name <param-name>

Examples

Custom Parameter Name

sql
sql
create function process_request(_data text, _req_headers json default null)
returns json
language sql
begin atomic;
...;
end;

comment on function process_request(text, json) is
'HTTP POST
@request_headers_mode parameter
@request_headers_parameter_name _req_headers';

Equivalent as a SQL file endpoint (sql/process-request.sql):

sql
sql
/*
HTTP POST
@request_headers_mode parameter
@request_headers_parameter_name req_headers
@param $1 data
@param $2 req_headers json
*/
select json_build_object('data', $1, 'headers', $2);

Default Parameter Name

By default, uses _headers as the parameter name:

sql
sql
create function my_func(_input text, _headers json default null)
returns json
language sql
begin atomic;
...;
end;

comment on function my_func(text, json) is
'HTTP POST
@request_headers_mode parameter';

Behavior

  • Only applies when request_headers_mode is parameter
  • Parameter must have a default value (typically null)
  • Parameter type should be json or text
  • Headers are passed as JSON object

Comments