IO Wallet SDK
    Preparing search index...
    • Creates a JWT Secured Authorization Request (JAR) request payload.

      The request object is always signed, and optionally encrypted when jweEncryptor is provided. The returned jarAuthorizationRequest is created in one of two forms:

      • by-value, with request
      • by-reference, with request_uri

      Parameters

      • options: CreateJarRequestOptions

        Parameters used to create the JAR request

        • OptionaladditionalJwtPayload?: Record<string, unknown>

          Additional claims merged into the request object payload before authorizationRequestPayload.

        • authorizationRequestHeader: {
              alg: string;
              jwk?: {
                  alg?: string;
                  crv?: string;
                  d?: string;
                  dp?: string;
                  dq?: string;
                  e?: string;
                  ext?: boolean;
                  k?: string;
                  key_ops?: string[];
                  kid?: string;
                  kty: string;
                  n?: string;
                  oth?: { d?: string; r?: string; t?: string; [key: string]: unknown }[];
                  p?: string;
                  q?: string;
                  qi?: string;
                  use?: string;
                  x?: string;
                  x5c?: string[];
                  x5t?: string;
                  "x5t#S256"?: string;
                  x5u?: string;
                  y?: string;
                  [key: string]: unknown;
              };
              kid?: string;
              trust_chain?: [string, ...string[]];
              typ: "oauth-authz-req+jwt";
              x5c?: string[];
              [key: string]: unknown;
          }

          Authorization request claims used as JWT header parameters.

        • authorizationRequestPayload: {
              aud?: string;
              client_id: string;
              cnf?: {
                  jkt?: string;
                  jwk?: {
                      alg?: string;
                      crv?: string;
                      d?: string;
                      dp?: string;
                      dq?: string;
                      e?: string;
                      ext?: boolean;
                      k?: string;
                      key_ops?: string[];
                      kid?: string;
                      kty: string;
                      n?: string;
                      oth?: { d?: string; r?: string; t?: string; [key: string]: unknown }[];
                      p?: string;
                      q?: string;
                      qi?: string;
                      use?: string;
                      x?: string;
                      x5c?: string[];
                      x5t?: string;
                      "x5t#S256"?: string;
                      x5u?: string;
                      y?: string;
                      [key: string]: unknown;
                  };
                  [key: string]: unknown;
              };
              exp?: number;
              iat?: number;
              iss?: string;
              jti?: string;
              nbf?: number;
              nonce?: string;
              status?: Record<string, any>;
              trust_chain?: [string, ...string[]];
              [key: string]: unknown;
          }

          Authorization request claims used as JWT payload.

        • callbacks: Partial<Pick<CallbackContext, "encryptJwe">> & Pick<CallbackContext, "signJwt">

          Cryptographic callbacks used to sign and optionally encrypt the JAR.

        • expiresInSeconds: number

          Request object lifetime in seconds from now.

        • OptionaljweEncryptor?: JweEncryptor

          Encryptor configuration. When provided, the signed request object is wrapped as JWE and returned as encrypted request value.

        • jwtSigner: JwtSigner

          Signer configuration used to produce the request object JWT.

        • Optionalnow?: Date

          Date that should be used as now. If not provided current date will be used.

        • OptionalrequestUri?: string

          Optional request URI for by-reference JAR transmission. When provided, jarAuthorizationRequest will include request_uri instead of request.

      Returns Promise<CreateJarRequestResult>

      Signed (and optionally encrypted) authorization request data, signer key material, and JAR request parameters for transmission.