Envestnet Consents API

Consents API

OpenAPI Specification

envestnet-consents-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Envestnet Aggregation APIs Account Token Consents API
  description: 'This file describes the Yodlee Aggregation product APIs using the swagger notation that you can use to build your financial application.  You can generate the client SDK in Python, JavaScript, PHP, or any other languages according to your development needs. For more details about the APIs, refer to <a href="https://developer.envestnet.com/resources/yodlee/yodlee-api-overview/docs">Yodlee API v1.1 - Overview</a>.<br><br>You will have to set the header before making the API call. The following headers apply to all the APIs:<ul><li>Authorization: This header holds the access token</li> <li> Api-Version: 1.1</li></ul><b>Note</b>: If there are any API-specific headers, they are mentioned explicitly in the respective API''s description.'
  termsOfService: https://developer.yodlee.com/terms/condition
  contact:
    email: developer@yodlee.com
  license:
    name: Yodlee Developer License
    url: https://developer.yodlee.com/terms/condition#_Services_1
  version: 1.1.0
servers:
- url: /
tags:
- name: Consents
  description: Consents API
paths:
  /consents/preferences:
    get:
      tags:
      - Consents
      summary: Envestnet Get Consents Preferences
      description: This API service provides user's preferences for the consent
      operationId: getConsentPreferences
      parameters:
      - name: consentId
        in: query
        description: consentId
        required: true
        schema:
          type: string
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ConsentPreferencesResponse'
        400:
          description: 'Y800 : Invalid value for consentId <br/>Y812 :Required field/value - consentId missing in the request <br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
  /consents/{consentId}/renewal:
    put:
      tags:
      - Consents
      summary: Envestnet Renew Consent
      description: 'The consent renewal service is used to renew the consent by validating the consent state. This API supports both UK and AU Open Banking. </br><b>Renewing an UK Open Banking consent:</b><br><li>Before the grace period of 90 days: The consent will be renewed using the third-party provider (TPP) renewal process that Yodlee does, and no consent reauthorisation is required.The API response will contain the complete renewed consent object.</li><li>After the grace period of 90 days: The API will provide an authorisation URL to redirect the user to the financial institution site to complete the consent reauthorization process.<br><b>Renewing an AU Open Banking consent:</b><br><li>Invoke this API, and in the API response, an authorisation URL will be provided to redirect the user to the financial institution site to complete the consent reauthorisation process.</li><br>'
      operationId: renewConsent
      parameters:
      - name: consentId
        in: path
        description: Consent Id to be renewed.
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: renewal entity from consent details service.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RenewConsentRequest'
        required: false
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/RenewConsentResponse'
        400:
          description: 'Y800 : Invalid value for consentId <br/>Y800 : Invalid value for consentParam <br/>Y802 : The consent duration days is outside of the range selected during onboarding, hence consentDurationDays not allowed<br/>Y803 : consent duration days preference required consentParam <br/>Y812 : Required field/value - scopeId missing in the consentParam <br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
  /consents/history/count:
    get:
      tags:
      - Consents
      summary: Envestnet Get Consent History Count
      description: The count service provides the total number of history records for a specific consent. <br/>If you are implementing pagination for consent history, call this endpoint before calling GET /consents/history to know the number of records for the given consent that are returned for the input parameters passed.<br/>
      operationId: getConsentHistoryCount
      parameters:
      - name: consentId
        in: query
        description: Consent Id generated through POST Consent.
        required: true
        allowEmptyValue: false
        schema:
          type: string
      - name: fromDate
        in: query
        description: Consent History from date(YYYY-MM-DD)
        allowEmptyValue: false
        schema:
          type: string
      - name: toDate
        in: query
        description: Consent History end date (YYYY-MM-DD)
        allowEmptyValue: false
        schema:
          type: string
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ConsentHistoryCountResponse'
        400:
          description: 'Y800 : Invalid value for consentId <br/>Y803 : consentId is required <br/>Y800 : Invalid value for fromDate<br/>Y800 : Invalid value for toDate<br/>Y809 : Invalid date range<br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
  /consents/history:
    get:
      tags:
      - Consents
      summary: Envestnet Get Consent History
      description: The get consent history service is used to retrieve all the history related to the consent. <br/>All history event details for few fields like userDataPurge, deidentificationPreference and consentCollectionPeriod may not be available for older AU Open Banking consents and other Open Banking regions.<br/>For any consent, history will be captured and available from consent authorization (consent status Active) event onwards.<br/><b>Note:</b><br/>  i. Duration (fromDate and toDate) is optional. In the absence of duration, one year history is retrieved from today's date.<br/>ii. The pagination feature is available by default. If no values are passed in the skip and top parameters, the API will only return the first 500 records.<br/>
      operationId: getConsentHistory
      parameters:
      - name: consentId
        in: query
        description: Consent Id generated through POST Consent.
        required: true
        allowEmptyValue: false
        schema:
          type: string
      - name: fromDate
        in: query
        description: Consent History from date(YYYY-MM-DD)
        allowEmptyValue: false
        schema:
          type: string
      - name: skip
        in: query
        description: skip (Min 0)
        allowEmptyValue: false
        schema:
          type: integer
          format: int32
      - name: toDate
        in: query
        description: Consent History end date (YYYY-MM-DD)
        allowEmptyValue: false
        schema:
          type: string
      - name: top
        in: query
        description: top (Max 500)
        allowEmptyValue: false
        schema:
          type: integer
          format: int32
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ConsentHistoryResponse'
        400:
          description: 'Y800 : Invalid value for consentId <br/>Y803 : consentId is required <br/>Y804 : Permitted values of top between 1 - 500<br/>Y800 : Invalid value for skip<br/>Y800 : Invalid value for fromDate<br/>Y800 : Invalid value for toDate<br/>Y809 : Invalid date range<br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
  /consents/{consentId}:
    get:
      tags:
      - Consents
      summary: Envestnet Get Authorization Details
      description: The get authorization URL for consent service provides the authorization URL for the renew consent flow, within the consent dashboard.<b>Note:</b>This service supports the localization feature and accepts locale as a header parameter.<br>
      operationId: getConsentDetails
      parameters:
      - name: consentId
        in: path
        description: Consent Id generated through POST Consent.
        required: true
        schema:
          type: integer
          format: int64
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/UpdatedConsentResponse'
        400:
          description: 'Y800 : Invalid value for consentId <br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
    put:
      tags:
      - Consents
      summary: Envestnet Put Consent
      description: The update consent service is used to capture the user acceptance of the consent presented to him or her. <br/>This service returns the authorization-redirect URL that should be used to display to the user, the bank's authentication interface.<b>Note:</b>This service supports the localization feature and accepts locale as a header parameter.<br>
      operationId: updateConsent
      parameters:
      - name: consentId
        in: path
        description: Consent Id generated through POST Consent.
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        description: Applicable Open Banking data cluster values.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateConsentRequest'
        required: true
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/UpdatedConsentResponse'
        400:
          description: 'Y800 : Invalid value for consentId <br/>Y800 : Invalid value for consentParam <br/>Y802 : The consent duration days is outside of the range selected during onboarding, hence consentDurationDays not allowed<br>Y803 : consent duration days preference required consentParam <br/>Y812 : Required field/value - scopeId missing in the consentParam <br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
  /consents:
    get:
      tags:
      - Consents
      summary: Envestnet Get Consents
      description: The get consent service is used to retrieve all the consents submitted to Yodlee. <br>The service can be used to build a manage consent interface or a consent dashboard to implement the renew and revoke consent flows.<br><b>Note:</b>This service supports the localization feature and accepts locale as a header parameter.<br>
      operationId: getConsents
      parameters:
      - name: consentIds
        in: query
        description: Consent Id generated through POST Consent.
        allowEmptyValue: false
        schema:
          type: string
      - name: include
        in: query
        description: The flag responsible to include renew details like sharing duration and reauthorization required
        allowEmptyValue: false
        schema:
          type: string
      - name: providerAccountIds
        in: query
        description: Unique identifier for the provider account resource. This is created during account addition.
        allowEmptyValue: false
        schema:
          type: string
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/ConsentResponse'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
    post:
      tags:
      - Consents
      summary: Envestnet Post Consent
      description: The generate consent service is used to generate all the consent information and permissions associated to a provider. <br/>The scope provided in the response is based on the providerId and the datasets provided in the input. <br/>If no dataset value is provided, the datasets that are configured for the customer will be considered. <br/>The configured dataset can be overridden by providing the dataset as an input. <br/>If no applicationName is provided in the input, the default applicationName will be considered. <b>Note:</b>This service supports the localization feature and accepts locale as a header parameter.<br>
      operationId: createConsent
      requestBody:
        description: Unique identifier for the provider site(mandatory), the name of the application,  <br/>the flag responsible to include html content in the response, <br/>when passed as true and the name of the dataset attribute supported by the provider.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateConsentRequest'
        required: true
      responses:
        200:
          description: OK
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/CreatedConsentResponse'
        400:
          description: 'Y800 : Invalid value for providerId <br/>Y807 : Resource not found <br/>Y800 : Invalid value for consentParam <br/>Y901 : Service not supported <br/>Y800 : Invalid value for applicationName <br/>'
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/YodleeError'
        401:
          description: Unauthorized
          content: {}
        404:
          description: Not Found
          content: {}
      deprecated: false
components:
  schemas:
    Consent:
      title: Consent
      required:
      - applicationDisplayName
      - clientADR
      - clientTrustedAdvisor
      - consentId
      - consentStatus
      - expirationDate
      - expirationDateTime
      - links
      - preferences
      - providerId
      - revokeDate
      - revokeDateTime
      - scope
      - startDate
      - startDateTime
      - title
      - titleBody
      type: object
      properties:
        dataAccessFrequency:
          type: string
          description: Data Access Frequency explains the number of times that this consent can be used.<br> Otherwise called as consent frequency type.
          enum:
          - ONE_TIME
          - RECURRING
        expirationDateTime:
          type: string
          description: Consent expiry datetime.
        otspADR:
          type: string
          description: Unique/Accredition Id of the ADR
        clientTrustedAdvisor:
          type: array
          description: describes information of client trusted advisor
          items:
            $ref: '#/components/schemas/ClientTrustedAdvisor'
        providerConsentId:
          type: string
          description: Provider consent id
        revokeDate:
          type: string
          description: Consent revoke date.
        title:
          type: string
          description: Title for the consent form.
        applicationDisplayName:
          type: string
          description: Application display name.
        consentId:
          type: integer
          description: Consent Id generated through POST Consent.
          format: int64
        providerId:
          type: integer
          description: Provider Id for which the consent needs to be generated.
          format: int64
        consentStatus:
          type: string
          description: Status of the consent.
          enum:
          - ACTIVE
          - CONSENT_GENERATED
          - CONSENT_ACCEPTED
          - CONSENT_AUTHORIZED
          - CONSENT_MISMATCH
          - PENDING
          - EXPIRED
          - REVOKED
          - CONSENT_REPEALED
        scope:
          type: array
          description: Scope describes about the consent permissions and their purpose.
          items:
            $ref: '#/components/schemas/Scope'
        userDataTreatment:
          $ref: '#/components/schemas/UserDataTreatment'
        links:
          type: array
          description: GET consent preferences API details
          items:
            $ref: '#/components/schemas/Links'
        expirationDate:
          type: string
          description: Consent expiry date.
        otspADRName:
          type: string
          description: Name of the Accredited Data Recipient/Organization
        preferences:
          type: array
          description: Preferences describes options about the additional usage of data or purge data
          items:
            $ref: '#/components/schemas/Preferences'
        clientADR:
          type: string
          description: Client Name of the ADR
        renewal:
          $ref: '#/components/schemas/Renewal'
        revokeDateTime:
          type: string
          description: Consent revoke datetime.
        titleBody:
          type: string
          description: Description for the title.
        startDateTime:
          type: string
          description: Consent start datetime.
        thirdPartyADR:
          type: array
          description: ThirdPartyADR describes details of additional parties which are accredited data recipients under organization
          items:
            $ref: '#/components/schemas/ThirdPartyADR'
        providerAccountId:
          type: integer
          description: Unique identifier for the provider account resource. <br>This is created during account addition.<br><br><b>Endpoints</b>:<ul><li>GET providerAccounts</li></ul>
          format: int64
          readOnly: true
        startDate:
          type: string
          description: Consent start date.
    ClientTrustedAdvisor:
      title: ClientTrustedAdvisor
      required:
      - email
      - name
      - role
      type: object
      properties:
        role:
          type: string
          description: '<b>Role of the Client Trusted Advisor</b>: Example : Lawyer , Accountant , etc...'
        name:
          type: string
          description: Name of the client trusted advisor
        email:
          type: string
          description: '<b>Email Id of the Client Trusted Advisor</b>: PRIMARY , SECONDARY , PERSONAL , WORK and OTHERS'
    ClientTrustedAdvisorTxt:
      title: ClientTrustedAdvisorTxt
      required:
      - description
      type: object
      properties:
        description:
          type: string
          description: ClientTrustedAdvisorTxt Description
    RenewConsentRequest:
      title: RenewConsentRequest
      required:
      - clientTrustedAdvisor
      type: object
      properties:
        preferences:
          $ref: '#/components/schemas/RenewConsentPreferences'
        renewal:
          $ref: '#/components/schemas/RenewalConsent'
        clientTrustedAdvisor:
          type: array
          description: describes information of client trusted advisor.
          items:
            $ref: '#/components/schemas/ClientTrustedAdvisor'
    ProvidersDataset:
      title: ProvidersDataset
      type: object
      properties:
        name:
          type: string
          description: 'The name of the dataset requested from the provider site<br><br><b>Account Type</b>: Manual<br><b>Endpoints</b>:<ul><li>GET accounts</li><li>GET accounts/{accountId}</li><li>GET providerAccounts</li><li>POST providerAccounts</li><li>PUT providerAccounts/{providerAccountId}</li><li>GET providerAccounts/{providerAccountId}</li><li>GET providers/{providerId}</li><li>GET providers</li></ul><b>Applicable Values</b><br>'
          enum:
          - BASIC_AGG_DATA
          - ADVANCE_AGG_DATA
          - ACCT_PROFILE
          - DOCUMENT
        attribute:
          type: array
          description: The name of the dataset attribute suported by the provider.<br><br><b>Endpoints</b>:<ul><li>GET providers/{providerId}</li><li>GET providers</li></ul>
          items:
            $ref: '#/components/schemas/Attribute'
    ConsentConfirmation:
      title: ConsentConfirmation
      required:
      - description
      - header
      type: object
      properties:
        description:
          type: string
          description: Consent confirmation Description
        header:
          type: string
          description: Consent confirmation Header
    CdrPolicy:
      title: CdrPolicy
      required:
      - description
      - url
      type: object
      properties:
        description:
          type: string
          description: Consumer Data Right Policy
        url:
          type: string
          description: https://solutions.yodlee.com/au-cdr.html
    YodleeError:
      title: YodleeError
      type: object
      properties:
        errorMessage:
          type: string
          description: The descriptive message that explains the error scenario.
          readOnly: true
        errorCode:
          type: string
          description: The error code follows the format YNNN. The error codes do not change. New error codes may be added as we introduce new features and enhance functionalities.
          readOnly: true
        referenceCode:
          type: string
          description: Unique Yodlee identifier used to troubleshoot issues at Yodlee's end.
          readOnly: true
    ContainerAttributes:
      title: ContainerAttributes
      type: object
      properties:
        BANK:
          $ref: '#/components/schemas/TransactionDays'
        LOAN:
          $ref: '#/components/schemas/TransactionDays'
        CREDITCARD:
          $ref: '#/components/schemas/TransactionDays'
        INVESTMENT:
          $ref: '#/components/schemas/TransactionDays'
        INSURANCE:
          $ref: '#/components/schemas/TransactionDays'
    Links:
      title: Links
      required:
      - href
      - methodType
      - rel
      type: object
      properties:
        methodType:
          type: string
          description: Type of the HTTP method <br/> GET , PUT , POST , DELETE , ...
        rel:
          type: string
          description: Get Consent preference
        href:
          type: string
          description: Get Consent preference Endpoint
    Scope:
      title: Scope
      required:
      - scopeId
      - title
      - titleBody
      type: object
      properties:
        titleBody:
          type: array
          description: Title body that explains the purpose of the scope.
          items:
            type: string
        scopeId:
          type: string
          description: Unique Dataset Cluster name for the consent group like <br/> ACCOUNT_DETAILS<br/> STATEMENT_DETAILS<br/> CONTACT_DETAILS<br/> TRANSACTION_DETAILS
          enum:
          - ACCOUNT_DETAILS
          - TRANSACTION_DETAILS
          - STATEMENT_DETAILS
          - CONTACT_DETAILS
        datasetAttributes:
          type: array
          description: Permissions that are associated with the Consent group like<br/> BASIC_AGG_DATA.BASIC_ACCOUNT_INFO<br/> BASIC_AGG_DATA.ACCOUNT_DETAILS<br/> BASIC_AGG_DATA.STATEMENTS<br/> BASIC_AGG_DATA.TRANSACTIONS<br/> ACCT_PROFILE.HOLDER_NAME<br/> ACCT_PROFILE.FULL_ACCT_NUMBER<br/> ACCT_PROFILE.BANK_TRANSFER_CODE<br/> ACCT_PROFILE.HOLDER_DETAILS
          items:
            type: string
        title:
          type: string
          description: Title for the Data Cluster.
    Renewal:
      title: Renewal
      required:
      - defaultRenewalDuration
      - isReauthorizationRequired
      type: object
      properties:
        defaultRenewalDuration:
          type: integer
          description: Shows the duration in days of consent renewal
          format: int64
        isReauthorizationRequired:
          type: boolean
          description: Shows if the consent renewal need reauthorization
    CreateConsentRequest:
      title: CreateConsentRequest
      type: object
      properties:
        providerId:
          type: integer
          description: Unique identifier for the provider site.(e.g., financial institution sites, biller sites, lender sites, etc.).<br><br><b>Endpoints</b>:<ul><li>POST Consent</li></ul>
          format: int64
        dataset:
          type: array
          description: The name of the dataset attribute supported by the provider.If no dataset value is provided, the datasets that are configured for the customer will be considered.The configured dataset can be overridden by providing the dataset as an input.<br><br><b>Endpoints</b>:<ul><li>POST Consent</li></ul>
          items:
            $ref: '#/components/schemas/ProvidersDataset'
        applicationName:
          type: string
          description: The name of the application.If no applicationName is provided in the input, the default applicationName will be considered<br><br><b>Endpoints</b>:<ul><li>POST Consent</li></ul>
    DataHandling:
      title: DataHandling
      required:
      - dataList
      - headerDescription
      type: object
      properties:
        dataList:
          type: array
          description: We will apply the CDR de-identificatiion process. <br/> De-identificatied data will be used without further consent.<br/> De-identification of CDR data means your data cannot be associated with your identity after de-identification process takes place.
          items:
            type: string
        headerDescription:
          type: string
          description: De-identification of data
    UserDataTreatment:
      title: UserDataTreatment
      required:
      - cdrPolicy
      - dataHandling
      - description
      type: object
      properties:
        dataHandling:
          $ref: '#/components/schemas/DataHandling'
        cdrPolicy:
          $ref: '#/components/schemas/CdrPolicy'
        description:
          type: string
          description: After we have finished using your data or you have withdraw your consent to use the data, it will be de-identified as per our
    ThirdPartyADR:
      title: ThirdPartyADR
      required:
      - name
      - url
      type: object
      properties:
        name:
          type: string
          description: name of ADR
        url:
          type: string
          description: Unique Id of ADR
    ConsentHistoryCountResponse:
      title: ConsentHistoryCountResponse
      type: object
      properties:
        consentHistory:
          $ref: '#/components/schemas/ConsentHistoryCount'
    CustomDisplayData:
      title: CustomDisplayData
      required:
      - clientTrustedAdvisorTxt
      - consentConfirmation
      - deletePreference
      - thirdParty
      - userDataTreatment
      type: object
      properties:
        consentConfirmation:
          $ref: '#/components/schemas/ConsentConfirmation'
        deletePreference:
          $ref: '#/components/schemas/DeletePreference'
        thirdParty:
          $ref: '#/components/schemas/ThirdParty'
        clientTrustedAdvisorTxt:
          $ref: '#/components/schemas/ClientTrustedAdvisorTxt'
        userDataTreatment:
          $ref: '#/components/schemas/UserDataTreatment'
    TransactionDays:
      title: TransactionDays
      type: object
      properties:
        fullAccountNumberFields:
          type: array
          items:
            type: string
            enum:
            - paymentAccountNumber
            - unmaskedAccountNumber
        numberOfTransactionDays:
          type: integer
          format: int32
    Preferences:
      title: Preferences
      required:
      - id
      - title
      - type
      - value
      type: object
      properties:
        id:
          type: integer
          description: Id of the preference
          format: int32
        label:
          type: string
          description: Detailed description for each preference
        title:
          type: string
          description: Type of the preferences <br/> additionalUseOfData<br/> userDataPurge
        type:
          type: string
          description: Visual Type of the preference selection
        value:
          type: string
          description: Value of the preference
    ConsentResponse:
      title: ConsentResponse
      type: object
      properties:
        consent:
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/Consent'
    ConsentHistoryCount:
      title: ConsentHistoryCount
      type: object
      properties:
        TOTAL:
          $ref: '#/components/schemas/TotalCount'
    ConsentHistoryResponse:
      title: ConsentHistoryResponse
      type: object
      properties:
        consentHistory:
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/ConsentHistory'
    UpdateConsentRequest:
      title: UpdateConsentRequest
      required:
      - clientTrustedAdvisor
      type: object
      properties:
        preferences:
          $ref: '#/components/schemas/RenewConsentPreferences'
        scopeId:
          type: array
          description: Applicable Open Banking data cluster values.<br><br><b>Endpoints</b>:<ul><li>PUT Consent</li></ul>
          items:
            type: string
            enum:
            - ACCOUNT_DETAILS
            - TRANSACTION_DETAILS
            - STATEMENT_DETAILS
            - CONTACT_DETAILS
        clientTrustedAdvisor:
          type: array
          description: describes information of client trusted advisor
          items:
            $ref: '#/components/schemas/ClientTrustedAdvisor'
    ConsentPreferencesResponse:
      title: ConsentPreferencesResponse
      required:
      - consentId
      - customDisplayData
      - preferences
      type: object
      properties:
        consentId:
          type: integer
          description: Consent Id generated through POST Consent.
          format: int64
        preferences:
          $ref: '#/components/schemas/Preferences'
        customDisplayData:
          $ref: '#/components/schemas/CustomDisplayData'
    UpdatedConsentResponse:
      title: UpdatedConsentResponse
      type: object
      properties:
        consent:
          type: array
          readOnly: true
          items:
            $ref: '#/components/schemas/UpdateConsent'
    ConsentHistory:
      title: ConsentHistory
      required:
      - consentStatus
      - eventDateTime
      - startDateTime
      type: object
      properties:
        eventDateTime:
          type: string
          description: History logged datetime.
        expirationDateTime:
          type: string
          description: Consent expiry datetime where supported by the provider.
        userDataPurge:
          type: integer
          description: Applicable data deletion preference for consent as per AU OB onboarding model and user's &quot;delete my data instead&quot; option. This data point is applicable for AU Open Banking region only.
          format: int64
        deidentificationPreference:
          type: boolean
          description: whether user has given consent to use deidentified data or not. This data point is applicable for AU Open Banking region only. Oauthpref id = 4
  

# --- truncated at 32 KB (41 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/envestnet/refs/heads/main/openapi/envestnet-consents-api-openapi.yml