JWT API
string · enumstringstringstringstringstring · requiredstringstringstring[]string
SignRequest
object · required
Custom claims to embed. iat is set automatically.
Example: {"sub":"user_42","role":"admin"}
algSigning algorithm.
Enum values:
HS256
HS384
HS512
RS256
ES256
PS256
Default: HS256
secretShared secret. Required for HS* algorithms.
Example: super-secret-value
privateKeyPEM-encoded PKCS8 private key. Required for RS*/ES*/PS* algorithms. Newlines must be real \n escapes inside JSON.
Example: -----BEGIN PRIVATE KEY-----
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQ...
-----END PRIVATE KEY-----
Duration string (e.g. '2h', '30m', '7d') or a positive number of seconds-from-now. Takes precedence over any exp in payload.
Example: 2h
issuerValue to set as the iss claim.
Example: https://jwt-api.p.rapidapi.com
Value to set as the aud claim.
Example: my-app
subjectValue to set as the sub claim.
Example: user_42
VerifyRequest
tokensecretShared secret. Required for HS* algorithms.
Example: super-secret-value
publicKeyPEM-encoded SPKI public key. Required for RS*/ES*/PS* algorithms.
Example: -----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQE...
-----END PUBLIC KEY-----
algorithmsRestrict accepted algorithms (defends against alg-confusion).
Example: ["HS256"]
issuerExpected iss claim. Verification fails on mismatch.
Example: https://jwt-api.p.rapidapi.com
Expected aud claim. Verification fails on mismatch.
Example: my-app