Consulta API Guía de Migración V3
Cambios en la Especificación de V2
La Consulta V3 API fue introducido para consolidar los cuatro views/summaries puntos finales a uno, con journeyType convirtiéndose en un parámetro de búsqueda en lugar de un parámetro de url.
Se han realizado los siguientes cambios:
-
Todos los puntos finales han sido actualizados para tener una ruta que comience con
/api/v3. Por ejemplo:-
/api/v2/views/details/{unitOfWorkId}→`/api/v3/views/details/{unitOfWorkId}` -
/api/v2/catalogue/process-objects/message-logs→`/api/v3/catalogue/process-objects/message-logs` -
etc.
-
-
Los cuatro
/views/summaries/Los puntos finales de búsqueda han sido unificados. Anteriormente, estos cuatro API los endpoints tenían journeyType como un parámetro de URL, ahora es un parámetro de consulta. Por ejemplo:-
/api/v2/views/summaries/payments→`/api/v3/views/summaries?journeyType=PAYMENT` -
/api/v2/views/summaries/recalls→`/api/v3/views/summaries?journeyType=RECALL`
-
-
Lo que significa que estos puntos finales han sido eliminados:
-
/views/summaries/payments -
/views/summaries/recalls -
/views/summaries/batches -
/views/summaries/bulks
-
-
La clase de respuesta para todos
/api/v3/all/mds-objectsy/api/v3/catalogue/mds-objects/los endpoints han cambiado aMdsObjectSearchItem2, eliminando el uso de las clases distintas:-
MdsObjectSearchItem -
Pacs008FIToFICustomerCreditTransferMdsSearchItem -
Pacs008CreditTransferTransactionMdsSearchItem -
Pacs002FIToFIPaymentStatusReportMdsSearchItem -
Pacs002OriginalGroupHeaderMdsSearchItem -
Pacs002PaymentTransactionMdsSearchItem -
Pacs004PaymentReturnMdsSearchItem -
Pacs004PaymentTransactionMdsSearchItem -
Pacs009FinancialInstitutionCreditTransferMdsSearchItem -
Pacs009CreditTransferTransactionMdsSearchItem -
Pacs028FIToFIPaymentStatusRequestMdsSearchItem -
Pacs028OriginalGroupInformationMdsSearchItem -
Pacs028PaymentTransactionMdsSearchItem -
Pain001CustomerCreditTransferInitiationMdsSearchItem -
Pain001PaymentInstructionMdsSearchItem -
Pain001CreditTransferTransactionMdsSearchItem -
Pain002CustomerPaymentStatusReportMdsSearchItem -
Pain002OriginalPaymentInstructionMdsSearchItem -
Pain002PaymentTransactionMdsSearchItem -
Camt027ClaimNonReceiptMdsSearchItem -
Camt029ResolutionOfInvestigationMdsSearchItem -
Camt029PaymentTransactionWithResolutionMdsSearchItem -
Camt029UnderlyingTransactionMdsSearchItem -
Camt054BankToCustomerDebitCreditNotificationMdsSearchItem -
Camt054AccountNotificationMdsSearchItem -
Camt056FIToFIPaymentCancellationRequestMdsSearchItem -
Camt056PaymentTransactionMdsSearchItem -
Camt056UnderlyingTransactionMdsSearchItem -
Camt087RequestToModifyPaymentMdsSearchItem
-
-
La estructura y respuesta del API manténgase consistente con la implementación V2. Esto afecta a los siguientes puntos finales:
-
/api/v3/all/mds-objects -
/api/v3/all/mds-objects/{odsObjectId} -
/api/v3/all/mds-objects/{mdsObjectId}/history -
/api/v3/catalogue/mds-objects/PACS_008 -
/api/v3/catalogue/mds-objects/PACS_008_CREDIT_TRANSFER_TRANSACTION -
/api/v3/catalogue/mds-objects/PACS_002 -
/api/v3/catalogue/mds-objects/PACS_002_ORIGINAL_GROUP_HEADER -
/api/v3/catalogue/mds-objects/PACS_002_PAYMENT_TRANSACTION -
/api/v3/catalogue/mds-objects/PACS_004 -
/api/v3/catalogue/mds-objects/PACS_004_PAYMENT_TRANSACTION -
/api/v3/catalogue/mds-objects/PACS_009 -
/api/v3/catalogue/mds-objects/PACS_009_CREDIT_TRANSFER_TRANSACTION -
/api/v3/catalogue/mds-objects/PACS_028 -
/api/v3/catalogue/mds-objects/PACS_028_ORIGINAL_GROUP_INFORMATION -
/api/v3/catalogue/mds-objects/PACS_028_PAYMENT_TRANSACTION -
/api/v3/catalogue/mds-objects/PAIN_001 -
/api/v3/catalogue/mds-objects/PAIN_001_PAYMENT_INSTRUCTION -
/api/v3/catalogue/mds-objects/PAIN_001_CREDIT_TRANSFER_TRANSACTION -
/api/v3/catalogue/mds-objects/PAIN_002 -
/api/v3/catalogue/mds-objects/PAIN_002_ORIGINAL_PAYMENT_INSTRUCTION -
/api/v3/catalogue/mds-objects/PAIN_002_PAYMENT_TRANSACTION -
/api/v3/catalogue/mds-objects/CAMT_027 -
/api/v3/catalogue/mds-objects/CAMT_029 -
/api/v3/catalogue/mds-objects/CAMT_029_PAYMENT_TRANSACTION_WITH_RESOLUTION -
/api/v3/catalogue/mds-objects/CAMT_029_UNDERLYING_TRANSACTION -
/api/v3/catalogue/mds-objects/CAMT_054 -
/api/v3/catalogue/mds-objects/CAMT_054_ACCOUNT_NOTIFICATION -
/api/v3/catalogue/mds-objects/CAMT_056 -
/api/v3/catalogue/mds-objects/CAMT_056_PAYMENT_TRANSACTION -
/api/v3/catalogue/mds-objects/CAMT_056_UNDERLYING_TRANSACTION -
/api/v3/catalogue/mds-objects/CAMT_087
-
Migrando Conectores de Cliente
El ods-inquiry-client El módulo ha sido actualizado para soportar tanto V1, V2 como V3 Consulta. APIs.
La configuración predeterminada (ods.inquiry.client.version=2) permite la instanciación del Cliente de Consulta V2 APIs y debe ser anulado explícitamente para el Cliente de Consulta V3 APIs.
|
Si desea migrar al cliente V3 APIs, su configuración debe ser actualizada para anular la configuración de la versión del cliente de la siguiente manera:`ods.inquiry.client.version=3` Esto asegurará el cliente V3 APIs puede ser habilitado y se requerirá un cambio de código. Ver Consulta V3 API documentación del cliente para más información sobre el cliente V3 APIs que se puede habilitar. |
El Cliente V3 disponible APIs se enumeran a continuación.
Cliente API la configuración se encuentra bajo ods.inquiry.client, y todas las propiedades enumeradas a continuación deben estar precedidas por esto.
-
Configurar el Cliente V3 APIs
| Propiedad | Predeterminado | Notas |
|---|---|---|
|
|
Habilite el |
|
|
Habilite el |
|
|
Habilite el |
|
|
Habilite el |
|
|
Habilite el |
|
|
Habilite el |
|
|
Habilite el |
Cambios del Conector de Cliente de V2
Existen diferencias con respecto al conjunto de V2 beans:
| V2 Bean | Reemplazo V3 Bean | Notas | Nuevos campos requeridos | Campos cambiados |
|---|---|---|---|---|
Resúmenes |
Resúmenes V3 |
|
|
El |
ProcessObjects |
Process Objects V3 |
- |
- |
- |
PdsObjects |
Pds Objects V3 |
|
|
- |
MdsObjects |
Mds Objects V3 |
|
|
- |
Detalles |
Detalles V3 |
|
- |
- |
Migrando Cliente de Pruebas
The ods-inquiry-test-client el módulo ha sido actualizado para soportar la Consulta V1, V2 y V3 APIs.
Similar al Cliente APIs, un nuevo conjunto de V3 Test Client APIs están disponibles a través de la InquiryClientV3 interfaz.
Uso
Tanto los Clientes de Prueba V1, V2 como V3 pueden ser utilizados al mismo tiempo.
Si está migrando de V2 a V3, deberá actualizar su suite de pruebas para utilizar el InquiryClientV3 interfaz.
El método InquiryClient createInquiryClientV3 devolverá una instancia predeterminada de la InquiryClientV3 interfaz.
@Configuration
class TestClientConfig {
@Bean
InquiryClient inquiryClient(@Value("${inquiry.base.url}") final String baseUrl,
@Value("${inquiry.openapi-validation.enabled}") final boolean openApiValidation,
final CurrentAuthToken currentAuthToken) {
return InquiryClient.createInquiryClient(InquiryClientOptions.builder()
.baseUrl(baseUrl)
.currentAuthToken(currentAuthToken)
.requestTimeout(Duration.ofSeconds(60))
.openApiValidation(openApiValidation)
.build());
}
@Bean
InquiryClientV2 inquiryClientV2(@Value("${inquiry.base.url}") final String baseUrl,
@Value("${inquiry.openapi-validation.enabled}") final boolean openApiValidation,
final CurrentAuthToken currentAuthToken) {
return InquiryClient.createInquiryClientV2(InquiryClientOptions.builder()
.baseUrl(baseUrl)
.currentAuthToken(currentAuthToken)
.requestTimeout(Duration.ofSeconds(60))
.openApiValidation(openApiValidation)
.build());
}
@Bean
InquiryClientV3 inquiryClientV3(@Value("${inquiry.base.url}") final String baseUrl,
@Value("${inquiry.openapi-validation.enabled}") final boolean openApiValidation,
final CurrentAuthToken currentAuthToken) {
return InquiryClient.createInquiryClientV3(InquiryClientOptions.builder()
.baseUrl(baseUrl)
.currentAuthToken(currentAuthToken)
.requestTimeout(Duration.ofSeconds(60))
.openApiValidation(openApiValidation)
.build());
}
}
Cambios del Cliente de Prueba de V2
La diferencia entre el Cliente de Prueba V2 y V3 APIs es el siguiente:
-
Todo APIs han sido actualizados para utilizar la Consulta V3 API especificación
-
El
Details,MdsObjects,MessageLogs,PdsObjects,ProcessFlowDefinitions,ProcessFlowEvents,ProcessObjects,Summaries1ySystemEventslas interfaces han sido desaprobadas, para ser reemplazadas por elDetailsV3,MdsObjectsV3,MessageLogsV3,PdsObjectsV3,ProcessFlowDefinitionsV3,ProcessFlowEventsV3,ProcessObjectsV3,SummariesV3ySystemEventsV3interfaces.-
El
DetailsV3la interfaz devuelve elDetailView2clase, mientras queDetailsutiliza elDetailViewclase. -
El
MdsObjectsV3la interfaz devuelve elMdsObjectSearchItem2clase, mientras queMdsObjectsutiliza elMdsObjectSearchItemor thePacs008FIToFICustomerCreditTransferMdsSearchItemclase para el método pacs008Credit Transfer Transactions. -
El
MessageLogsV3la interfaz devuelve elIPFMessageLogSearchItem2clase, mientras queMessageLogsutiliza elIPFMessageLogSearchItemclase. -
El
PdsObjectsV3la interfaz devuelve elPdsObjectSearchItem2clase, mientras quePdsObjectsutiliza elPdsObjectSearchItemclase. ElPdsObjectsV3la interfaz ahora solo tiene métodos que buscan por unitOfWorkId, odsObjectId y pdsObjectId, mientras quePdsObjectstenía métodos que también buscaban por unitOfWorkId y nombre como dos parámetros de búsqueda. -
El
ProcessFlowDefinitionsV3la interfaz devuelve elIPFProcessFlowDefinitionSearchItem2clase, mientras queProcessFlowDefinitionsutiliza elIPFProcessFlowDefinitionSearchItemclase. -
El
ProcessFlowEventsV3la interfaz devuelve elIPFProcessFlowEventSearchItem2clase, mientras queProcessFlowEventsutiliza elIPFProcessFlowEventSearchItemclase. -
El
ProcessObjectsV3la interfaz devuelve elProcessObjectSearchItem2,SystemEventsV3,MessageLogsV3,ProcessFlowEventsV3yProcessFlowDefinitionsV3clases, mientras queProcessObjectsutiliza elProcessObjectSearchItem,SystemEvents,MessageLogs,ProcessFlowEventsyProcessFlowDefinitionsclases. -
El
SummariesV3la interfaz devuelve elSummaryView2clase y ya no utiliza elJourneyTypeclase como un parámetro de búsqueda, mientras queSummaries1utiliza elSummaryViewclase y usos elJourneyTypeclase como parámetro de búsqueda. -
El
SystemEventsV3la interfaz devuelve elIPFSystemEventSearchItem2clase, mientras queSystemEventsutiliza elIPFSystemEventSearchItemclase.
-
-
El
Summaries1,Details,MdsObjects,ProcessObjectsyPdsObjectslas interfaces han sido reemplazadas por elSummariesV3,DetailsV3,MdsObjectsV3,ProcessObjectsV3yPdsObjectsV3clases para elInquiryClient3interfaz