Considerações
Permissão de uso dos Web Services
O provedor que tiver interesse em utilizar os Web Services deverá entrar em contato com o setor de Suporte da NDD (suporte.ndd.tech) para solicitar a liberação do acesso.
Limites de retorno
Existe uma limitação padrão do tamanho do pacote de resposta e, também, um timeout dependendo da quantidade de dados que foi solicitado. Em um projeto .Net, por exemplo, deve-se realizar uma das seguintes configurações no arquivo app.config do seu projeto que será algo parecido com:
Utilizando chamada via Service Reference:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="MyServiceReferenceSoap" sendTimeout="00:03:00" closeTimeout="00:03:00" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647"></readerQuotas>
<security mode="Transport" />
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="https://api-general.nddprint.com/Service/MyServiceReference.asmx"
binding="basicHttpBinding" bindingConfiguration="MyServiceReferenceSoap"
contract="MyServiceReference.MyServiceReferenceSoap" name="MyServiceReferenceSoap" />
</client>
</system.serviceModel>
</configuration>
As configurações em negrito são as que devem ser adicionadas ou alteradas. Após isso, caso ainda ocorram problemas de comunicação ou timeout, devem ser aumentados os valores das configurações correspondentes. Observe que, no caso acima, está sendo utilizado o valor 2147483647, que é o valor máximo permitido de dados; e o valor 00:03:00, que é um timeout de 3 (três) minutos.
Utilizando chamada via Web Reference:
<configuration>
<system.web>
<httpRuntime executionTimeout="180" maxRequestLength="2147483647" maxQueryStringLength="2147483647" />
</system.web>
<applicationSettings>
<GeneralWSTool.Properties.Settings>
<setting name="MyServiceData" serializeAs="String">
<value>https://api-general.nddprint.com/Service/MyServiceReference.asmx</value>
</setting>
</GeneralWSTool.Properties.Settings>
</applicationSettings>
</configuration>
Observe que o atributo executionTimeout foi setado para 180 segundos, ou seja, 3 (três) minutos; e maxRequestLength foi inserido o valor 2147483647, que é o valor máximo permitido.
Informação
As configurações acima não são exigência, elas apenas demonstram como lidar com situações de timeout ou de pacotes que estão trafegando.