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 server's response.
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.