...
Formato SOAP/XML | Formato REST/JSON | |||
---|---|---|---|---|
Endpoints | ||||
http://<servidor>:<porta>/eai2-ws/EAIService?wsdl (DATASUL) http://<servidor>:<porta>/EAISERVICE.apw?wsdl (LOGIX/PROTHEUS) http://<servidor>:<porta>/EAIService/MEX?wsdl (RM)
| http://<servidor>:<porta>/totvseai/standardmessage/v1/transactions http://<servidor>:<porta>/totvseai/standardmessage/v1/content
| |||
Estrutura da mensagem | ||||
TOTVSMessage, composta de:
| Dois atributos principais:
| |||
Tags de MessageInformation X atributos de header | ||||
<MessageInformation version="2.000"> | "Version" : "2.000" | |||
<UUID>d6bbfa63-ca27-e2ac-0b14-101970f59a5b</UUID> | "UUID" : "d6bbfa63-ca27-e2ac-0b14-101970f59a5b" | |||
<Type>BusinessMessage</Type> | "Type" : "BusinessMessage" | |||
<Transaction>CostCenter</Transaction> | "Transaction" : "CostCenter" | |||
<StandardVersion>1.000</StandardVersion> | Sem equivalente na mensagem. A versão do padrão será designada na URL do endpoint /totvseai/standardmessage/v1. | |||
<SourceApplication>P1299</SourceApplication> | "SourceApplication" : "P1299" | |||
<CompanyId>99</CompanyId> | "CompanyId" : "99" | |||
<BranchId>01</BranchId> | "BranchId" : "01" | |||
<UserId>admin<UserId> | "UserId" : "admin" | |||
<Enterprise></Enterprise> | Não será utilizado no formato REST/JSON | |||
<BusinessUnit></BusinessUnit> | Não será utilizado no formato REST/JSON. | |||
<CompanySharingMode>C</CompanySharingMode>Não será utilizado no formato REST/JSON. | "CompanySharingMode" : "C" | |||
<BusinessUnitSharingMode>C</BusinessUnitSharingMode> | "BusinessUnitSharingMode" : "C" | |||
<BranchSharingMode>E</BranchSharingMode> | "BranchSharingMode" : "E" | Não será utilizado no formato REST/JSON. | <BranchSharingMode>C</BranchSharingMode> | Não será utilizado no formato REST/JSON. |
<Product name="PROTHEUS" version="12.1.17" /> | "ProductName" : "PROTHEUS" "ProductVersion" : "12.1.17" | |||
<GeneratedOn>2017-11-15T12:00:30-02:00</GeneratedOn> | "GeneratedOn" : "2017-11-15T12:00:30-02:00" | |||
<DeliveryType>async</DeliveryType> | "DeliveryType" : "async" | |||
Outras tags e suas equivalências no modelo REST/JSON | ||||
BusinessMessage/BusinessEvent | Atributo "SubType" do Header, com valor igual a "event". Ex: "SubType" : "event". | |||
BusinessMessage/BusinessEvent/Entity | Utilizar o atributo "Transaction" do Header. | |||
BusinessMessage/BusinessEvent/Event | A operação será obtida do método HTTP usado no endpoint:
| |||
BusinessMessage/BusinessEvent/Identification | Não será utilizado no formato REST/JSON. Foi substituído pelos internal Ids informados no conteúdo da mensagem. | |||
BusinessMessage/BusinessRequest | Atributo "SubType" do Header com valor igual a "request". Ex: "subType" : "request". | |||
BusinessMessage/BusinessRequest/Operation | Usar o atributo "Transaction" do Header. | |||
BusinessMessage/BusinessContent | Atributo "Content". Todas as tags do XML correspondentes a BusinessContent devem ser convertidas em atributos JSON, sem qualquer modificação. | |||
ResponseMessage/ReceivedMessage e tags filhas. | Atributo "ReceivedMessage"´de Content. Os atributos filhos são equivalências diretas das tags filhas de <ReceivedMessage>.
| |||
ResponseMessage/ProcessingInformation | Atributo "ProcessingInformation" do Content, quando a mensagem for do tipo "Response". As tags <ProcessedOn> e <Status> tem os atributos equivalentes "ProcessedOn" e "Status".
| |||
ResponseMessage/ProcessingInformation/ListOfMessages | Atributo "Details" do ProcessingInformation. | |||
ResponseMessage/ReturnContent | Atributo "ReturnContent". Todas as tags XML devem ser convertidas em atributos JSON. | |||
ReceiptMessage | Não existe mensagem de recibo no formato JSON. O indicativo de que a mensagem foi recebida é o código HTTP 202 (Accepted). |
...