Mastercard Developer Hub for FDX APIs PAR+RAR Authorize API

Please refer RFC - [RFC 9126 - OAuth 2.0 Pushed Authorization Requests (ietf.org)](https://datatracker.ietf.org/doc/html/rfc9126) and [RFC 9396 - OAuth 2.0 Rich Authorization Requests (ietf.org)](https://datatracker.ietf.org/doc/html/rfc9396) for implementation.

OpenAPI Specification

mastercard-developer-hub-for-fdx-apis-par-rar-authorize-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Mastercard Developer Hub for FDX APIs FDX Authorization Server Application Check Controller PAR+RAR Authorize API
  version: 1.0.0
  description: Dynamic Client Registration, Token, Introspection, Authorize API
  contact:
    name: API Support
    email: apisupport@mastercard.com
    url: https://developer.mastercard.com/support
servers:
- url: http://localhost:8080
  description: Localhost URL
tags:
- name: PAR+RAR Authorize
  description: Please refer RFC - [RFC 9126 - OAuth 2.0 Pushed Authorization Requests (ietf.org)](https://datatracker.ietf.org/doc/html/rfc9126) and [RFC 9396 - OAuth 2.0 Rich Authorization Requests (ietf.org)](https://datatracker.ietf.org/doc/html/rfc9396) for implementation.
paths:
  /oauth2/par:
    post:
      tags:
      - PAR+RAR Authorize
      summary: Mastercard Developer Hub for FDX APIs Submit an Authorization Request
      description: Clients can submit their authorization requests to this endpoint to receive a request URI for user redirection.
      operationId: authorizeViaParRar
      requestBody:
        $ref: '#/components/requestBodies/PARRequestBody'
      responses:
        '200':
          $ref: '#/components/responses/PAR'
      security:
      - {}
components:
  responses:
    PAR:
      description: Successful response containing request_uri
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Par'
          examples:
            Successful response:
              value:
                expires_in: 90
                request_uri: urn:ietf:params:oauth2:8df8d6a2-72c4-49e6-8f12-e846bb01a6c2
  schemas:
    Par:
      type: object
      properties:
        expires_in:
          type: number
          description: The expiration time of the request_uri in seconds.
          example: 3600
        request_uri:
          type: string
          example: urn:ietf:params:oauth2:eb6b74fb-2249-499a-9889-3e1c485e687b
          description: The request URI corresponding to the authorization request posted. This URI is a single-use reference to the respective request data in the subsequent authorization request.
    client_id:
      type: string
      example: dh-fdx-client-registrar-2
      description: OAuth 2.0 client identifier.  Unique ID representing Data Recipient and Identity Chain combination
    grant_type:
      type: string
      example: refresh_token OR client_credentials OR authorization_code
      description: The grant type(s) supported by the Authorisation Server.
  requestBodies:
    PARRequestBody:
      required: true
      content:
        application/x-www-form-urlencoded:
          schema:
            type: object
            properties:
              authorization_details:
                type: string
                description: JSON-formatted object with two members in compliance with the RAR format specified by RAR memo, refer FDX spec
                example: '[{"type":"fdx_v1.0","consentRequest":{"durationType":"ONE_TIME","lookbackPeriod":60,"resources":[{"resourceType":"ACCOUNT","dataClusters":["ACCOUNT_DETAILED","TRANSACTIONS","STATEMENTS"]}]}}]'
              client_assertion:
                type: string
                example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
                description: The encoded assertion JWT.
              client_assertion_type:
                type: string
                example: urn:ietf:params:oauth:client-assertion-type:jwt-bearer
                description: This MUST be set to urn:ietf:params:oauth:client-assertion-type:jwt-bearer
              client_id:
                $ref: '#/components/schemas/client_id'
              grant_type:
                $ref: '#/components/schemas/grant_type'
              request:
                type: string
                example: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
                description: The encoded assertion JWT.
              response_type:
                type: string
                example: code
                description: Supported response type
          examples:
            Authorize (via PAR+RAR):
              value:
                authorization_details: '[{"type":"fdx_v1.0","consentRequest":{"durationType":"ONE_TIME","lookbackPeriod":60,"resources":[{"resourceType":"ACCOUNT","dataClusters":["ACCOUNT_DETAILED","TRANSACTIONS","STATEMENTS"]}]}}]'
                client_assertion: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
                client_assertion_type: urn:ietf:params:oauth:client-assertion-type:jwt-bearer
                client_id: dh-fdx-client-registrar-2
                grant_type: client_credentials
                request: eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c
                response_type: code
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer