soap.txt is located in ZimbraServer/docs. You can find it
here.
The relevant snippet is
Code:
<ChangePasswordRequest>
<account by="name">...</account>
<oldPassword>...</oldPassword>
<password>...</password>
[<virtualHost>{virtual-host}</virtualHost>]
</ChangePasswordRequest>
<ChangePasswordResponse/>
{virtual-host} = if specified virtual-host is used to determine the domain of the account name, if it
does not include a domain component. For example, if the domain foo.com has a zimbraVirtualHostname of "mail.foo.com",
and an auth request comes in for "joe" with a virtualHost of "mail.foo.com", then the request will be equivalent to
logging in with "joe@foo.com".