title: Authentification on DHL-SOAP API with zeep
body: <p>I just started working with one of the DHL-SOAP APIs and use zeep to run requests against the API.
  The API expects and Element <em>Authentification</em> like this:</p>
  
  <pre><code>...
  &lt;soapenv:Header&gt;
      &lt;cis:Authentification&gt;
          &lt;cis:user&gt;USER&lt;/cis:user&gt;
          &lt;cis:signature&gt;PASSWORD&lt;/cis:signature&gt;
      &lt;/cis:Authentification&gt;
  &lt;/soapenv:Header&gt;
  ...
  </code></pre>
  
  <p>I tried to pass the authentification as part of the _soapheaders as described in the zeep documentation, neigher the dict notation nor the xsd.Element notation seem to work.</p>
  
  <pre><code>from zeep import Client
  from zeep import xsd
  
  client = Client('&lt;URL_TO_WSDL&gt;')
  auth_header = {'user': 'user', 'signature': 'signature'}
  # dict approach
  client.service.DHL_SERVICE(_soapheaders={'Authentification': auth_header})
  
  # xsd approach
  header = xsd.Element('Authentification',
      xsd.ComplexType([
          xsd.Element('user', xsd.String()),
          xsd.Element('signature', xsd.String())
      ])
  )
  header_values = header(user='user', signature='signature')
  client.service.DHL_SERVICE(_soapheaders=[header_values])
  </code></pre>
  
  <p>I don't find helpful information in the DHL docs not in the zeep documentation.</p>
  
  <p>Thank you in advance!</p>
  
  <p>Regards</p>