naftiko: 1.0.0-alpha2 info: label: Yodlee Core APIs — Consents description: 'Yodlee Core APIs — Consents. 8 operations. Lead operation: Post Consent. Self-contained Naftiko capability covering one Yodlee business surface.' tags: - Yodlee - Consents created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: YODLEE_API_KEY: YODLEE_API_KEY capability: consumes: - type: http namespace: core-consents baseUri: '' description: Yodlee Core APIs — Consents business capability. Self-contained, no shared references. resources: - name: consents path: /consents operations: - name: createconsent method: POST description: Post Consent outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentRequest in: body type: string description: Unique identifier for the provider site(mandatory), the name of the application,
the flag responsible to include html content in the response,
when p required: true - name: getconsents method: GET description: Get Consents outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentIds in: query type: string description: Consent Id generated through POST Consent. - name: include in: query type: string description: The flag responsible to include renew details like sharing duration and reauthorization required - name: providerAccountIds in: query type: string description: Unique identifier for the provider account resource. This is created during account addition. - name: consents-history path: /consents/history operations: - name: getconsenthistory method: GET description: Get Consent History outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentId in: query type: string description: Consent Id generated through POST Consent. required: true - name: fromDate in: query type: string description: Consent History from date(YYYY-MM-DD) - name: skip in: query type: integer description: skip (Min 0) - name: toDate in: query type: string description: Consent History end date (YYYY-MM-DD) - name: top in: query type: integer description: top (Max 500) - name: consents-history-count path: /consents/history/count operations: - name: getconsenthistorycount method: GET description: Get Consent History Count outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentId in: query type: string description: Consent Id generated through POST Consent. required: true - name: fromDate in: query type: string description: Consent History from date(YYYY-MM-DD) - name: toDate in: query type: string description: Consent History end date (YYYY-MM-DD) - name: consents-preferences path: /consents/preferences operations: - name: getconsentpreferences method: GET description: Get Consents Preferences outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentId in: query type: string description: consentId required: true - name: consents-consentId path: /consents/{consentId} operations: - name: getconsentdetails method: GET description: Get Authorization Details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentId in: path type: integer description: Consent Id generated through POST Consent. required: true - name: updateconsent method: PUT description: Put Consent outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentId in: path type: integer description: Consent Id generated through POST Consent. required: true - name: consentRequest in: body type: string description: Applicable Open Banking data cluster values. required: true - name: consents-consentId-renewal path: /consents/{consentId}/renewal operations: - name: renewconsent method: PUT description: Renew Consent outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: consentId in: path type: integer description: Consent Id to be renewed. required: true - name: renewConsentRequest in: body type: string description: renewal entity from consent details service. exposes: - type: rest namespace: core-consents-rest port: 8080 description: REST adapter for Yodlee Core APIs — Consents. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/consents name: consents description: REST surface for consents. operations: - method: POST name: createconsent description: Post Consent call: core-consents.createconsent with: consentRequest: rest.consentRequest outputParameters: - type: object mapping: $. - method: GET name: getconsents description: Get Consents call: core-consents.getconsents with: consentIds: rest.consentIds include: rest.include providerAccountIds: rest.providerAccountIds outputParameters: - type: object mapping: $. - path: /v1/consents/history name: consents-history description: REST surface for consents-history. operations: - method: GET name: getconsenthistory description: Get Consent History call: core-consents.getconsenthistory with: consentId: rest.consentId fromDate: rest.fromDate skip: rest.skip toDate: rest.toDate top: rest.top outputParameters: - type: object mapping: $. - path: /v1/consents/history/count name: consents-history-count description: REST surface for consents-history-count. operations: - method: GET name: getconsenthistorycount description: Get Consent History Count call: core-consents.getconsenthistorycount with: consentId: rest.consentId fromDate: rest.fromDate toDate: rest.toDate outputParameters: - type: object mapping: $. - path: /v1/consents/preferences name: consents-preferences description: REST surface for consents-preferences. operations: - method: GET name: getconsentpreferences description: Get Consents Preferences call: core-consents.getconsentpreferences with: consentId: rest.consentId outputParameters: - type: object mapping: $. - path: /v1/consents/{consentid} name: consents-consentid description: REST surface for consents-consentId. operations: - method: GET name: getconsentdetails description: Get Authorization Details call: core-consents.getconsentdetails with: consentId: rest.consentId outputParameters: - type: object mapping: $. - method: PUT name: updateconsent description: Put Consent call: core-consents.updateconsent with: consentId: rest.consentId consentRequest: rest.consentRequest outputParameters: - type: object mapping: $. - path: /v1/consents/{consentid}/renewal name: consents-consentid-renewal description: REST surface for consents-consentId-renewal. operations: - method: PUT name: renewconsent description: Renew Consent call: core-consents.renewconsent with: consentId: rest.consentId renewConsentRequest: rest.renewConsentRequest outputParameters: - type: object mapping: $. - type: mcp namespace: core-consents-mcp port: 9090 transport: http description: MCP adapter for Yodlee Core APIs — Consents. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: post-consent description: Post Consent hints: readOnly: false destructive: false idempotent: false call: core-consents.createconsent with: consentRequest: tools.consentRequest outputParameters: - type: object mapping: $. - name: get-consents description: Get Consents hints: readOnly: true destructive: false idempotent: true call: core-consents.getconsents with: consentIds: tools.consentIds include: tools.include providerAccountIds: tools.providerAccountIds outputParameters: - type: object mapping: $. - name: get-consent-history description: Get Consent History hints: readOnly: true destructive: false idempotent: true call: core-consents.getconsenthistory with: consentId: tools.consentId fromDate: tools.fromDate skip: tools.skip toDate: tools.toDate top: tools.top outputParameters: - type: object mapping: $. - name: get-consent-history-count description: Get Consent History Count hints: readOnly: true destructive: false idempotent: true call: core-consents.getconsenthistorycount with: consentId: tools.consentId fromDate: tools.fromDate toDate: tools.toDate outputParameters: - type: object mapping: $. - name: get-consents-preferences description: Get Consents Preferences hints: readOnly: true destructive: false idempotent: true call: core-consents.getconsentpreferences with: consentId: tools.consentId outputParameters: - type: object mapping: $. - name: get-authorization-details description: Get Authorization Details hints: readOnly: true destructive: false idempotent: true call: core-consents.getconsentdetails with: consentId: tools.consentId outputParameters: - type: object mapping: $. - name: put-consent description: Put Consent hints: readOnly: false destructive: false idempotent: true call: core-consents.updateconsent with: consentId: tools.consentId consentRequest: tools.consentRequest outputParameters: - type: object mapping: $. - name: renew-consent description: Renew Consent hints: readOnly: false destructive: false idempotent: true call: core-consents.renewconsent with: consentId: tools.consentId renewConsentRequest: tools.renewConsentRequest outputParameters: - type: object mapping: $.