update version file, forgot this repo had one fix mistakes and other such add new information finish passport (SOAP) stuff, may rename to RST later?, just mention in footnote for now next commit WILL be msnp13 on 0.1.4 release, promise
4.9 KiB
Introduction
The Address Book Service (abservice) is a SOAP (XML) Web Service. Introduced with MSNP8.
It manages the link(s) between the E-mail Service Address Book and the Forward List (FL).
It's default HTTP URL is http://contacts.msn.com/abservice/abservice.asmx
.
It's default HTTPS URL is https://contacts.msn.com/abservice/abservice.asmx
.
This service requires Passport authentication.
Related: Contact Sharing Service (for other List's members).
Actions
All actions listed have the prefix of
http://www.msn.com/webservices/AddressBook/
.
- ABFindAll (internal name:
Contacts.Pull
) - ABContactAdd (internal name:
Contacts.Push.Contact.Add
) - ABContactDelete (internal name:
Contacts.Push.Contact.Delete
) - ABContactUpdate (internal name:
Contacts.Push.Contact.Update
) - ABGroupContactAdd (internal name:
Contacts.Push.Contact.AddToGroup
) - ABGroupContactDelete (internal name:
Contacts.Push.Contact.DeleteFromGroup
) - ABGroupAdd (internal name:
Contacts.Push.Group
) - ABGroupDelete (internal name:
Contacts.Push.Group.Delete
) - ABGroupUpdate (internal name:
Contacts.Push.Contact.Edit
)
Actions that we don't know much about
- ABFind (internal name:
Contacts.FindId
) - ABAdd (internal name:
Contacts.AddAb
) - ABDelete (internal name:
Contacts.DeleteAb
) - ABFindByContacts (internal name:
Contacts.Pull.Id
) - UpdateDynamicItem (internal name:
Contacts.Push.DynamicItem.Edit
)
Shared Templates
This is used by all Actions listed, as far as we know. The following also applies to the Contact Sharing Service.
Client/Request
The following sub-headings are XML elements for the client's request.
soap:Envelope
This element has four attributes:
xmlns:soap
: Is always set tohttp://schemas.xmlsoap.org/soap/envelope/
.xmlns:xsi
: Is always set tohttp://www.w3.org/2001/XMLSchema-instance
.xmlns:xsd
: Is always set tohttp://www.w3.org/2001/XMLSchema
.xmlns:soapenc
: Is always set tohttp://schemas.xmlsoap.org/soap/encoding/
.
soap:Header
This element only serves to host the <ABApplicationHeader>
and <ABAuthHeader>
elements.
ABApplicationHeader
This element has only one attribute:
xmlns
: Is always set tohttp://www.msn.com/webservices/AddressBook
.
This element has three children:
<ApplicationID>
: The GUID of the client that sent the request for this action.<IsMigration>
: If this request is part of the ABCH Migration process. If it is, set totrue
, otherwise set tofalse
.<PartnerScenario>
: What caused this request to happen:Initial
: This is the initial request to this action.Timer
: This request was done automatically on a timer.ContactSave
: When the modified contact is saved by the client.MessengerPendingList
: Managing the Pending List (PL).ContactMsgrAPI
: General Messenger API.BlockUnblock
: Block or unblock of this user.GroupSave
: When the modified group is saved by the client.
ABAuthHeader
This element has only one attribute:
xmlns
: Is always set tohttp://www.msn.com/webservices/AddressBook
.
This element has two children:
<ManagedGroupRequest>
: If this is a managed group request, set totrue
, otherwise set tofalse
.<TicketToken>
This element contains the XML-encoded Passport token forcontacts.msn.com
. Added since MSNP15.
soap:Body
Your request element and it's children goes here.
Server/Response
The following sub-headings are XML elements for the server's response.
soap:Envelope
This element has three attributes:
xmlns:soap
: Is always set tohttp://schemas.xmlsoap.org/soap/envelope/
.xmlns:xsi
: Is always set tohttp://www.w3.org/2001/XMLSchema-instance
.xmlns:xsd
: Is always set tohttp://www.w3.org/2001/XMLSchema
.
soap:Header
This element only serves to host the <ServiceHeader>
element.
ServiceHeader
This element has only one attribute:
xmlns
: Is always set tohttp://www.msn.com/webservices/AddressBook
.
This element has five children:
<Version>
: The version of this service.<CacheKey>
: The current or new address book caching key. Usually starts with14r2;
, then continues with base64-encoded data. The meaning of the appended data is yet to be known. It may be a 128-bit hash of some kind.<CacheKeyChanged>
: Did the<CacheKey>
change? If it did, set totrue
, otherwise set tofalse
.<PreferredHostName>
: The domain name that this service would like to receive requests to.<SessionId>
: The current session GUID.
soap:Body
This element contains the server's response elements and their children for the action.