27.2 ENCODE Function
This function encodes and optionally encrypts payload.
Syntax
FUNCTION ENCODE (
p_iss IN VARCHAR2 DEFAULT NULL,
p_sub IN VARCHAR2 DEFAULT NULL,
p_aud IN VARCHAR2 DEFAULT NULL,
p_nbf_ts IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
p_iat_ts IN TIMESTAMP WITH TIME ZONE DEFAULT SYSTIMESTAMP,
p_exp_sec IN PLS_INTEGER DEFAULT NULL,
p_jti IN VARCHAR2 DEFAULT NULL,
p_other_claims IN VARCHAR2 DEFAULT NULL,
p_signature_key IN RAW DEFAULT NULL )
RETURN VARCHAR2
Parameters
Table 27-2 ENCODE Function Parameters
Parameter | Description |
---|---|
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional |
|
Optional raw JSON with additional claims. |
|
Optional MAC key for the signature. If not null, a |
Returns
A varchar2, the encoded token value.
Example
This example creates and prints a JWT value for Example User, intended to be used by Example JWT Recipient. The token is valid for 5 minutes.
declare
l_jwt_value varchar2(32767);
begin
l_jwt_value := apex_jwt.encode (
p_iss => 'Example Issuer',
p_sub => 'Example User',
p_aud => 'Example JWT Recipient',
p_exp_sec => 60*5,
p_other_claims => '"name1": '||apex_json.stringify('value1')||
',"name2": '||apex_json.stringify('value2'),
p_signature_key => ... encryption key ... );
sys.dbms_output.put_line(l_jwt_value);
end;
Parent topic: APEX_JWT