# Table of contents:
# Introduction
GetProfile is one of the SOAP actions the Schematized Storage Service provides.
Get the attributes of the profile associated with the provided resource handle.
Responding to a request without a <ExpressionProfile> will cause the client to request a CreateProfile action.
Responding with a new profile resource ID can cause the client to request a ShareItem action.
# Client/Request
The template used in this action is described on the Schematized Storage Service main page.
# GetProfileThis element has only one attribute:
xmlns: This is always set tohttp://www.msn.com/webservices/storage/, followed by the version of the schema.
# profileAttributes
This element has three children:
<ResourceID>: Set this totrueif you want the<ResourceID>element in the response.<DateModified>: Set this totrueif you want the<DateModified>element in the response.<ExpressionProfileAttributes>: Described below.
This element has nine optional children:
<ResourceID>: Set this totrueif you want the<ResourceID>element in the response.<DateModified>: Set this totrueif you want the<DateModified>element in the response.<DisplayName>: Set this totrueif you want the<DisplayName>element in the response.<DisplayNameLastModified>: Set this totrueif you want the<DisplayNameLastModified>element in the response.<PersonalStatus>: Set this totrueif you want the<PersonalStatus>element in the response.<PersonalStatusLastModified>: Set this totrueif you want the<PersonalStatusLastModified>element in the response.<StaticUserTilePublicURL>: Set this totrueif you want the<StaticUserTilePublicURL>element in the response.<Photo>: Set this totrueif you want the<Photo>element in the response.<Flags>: Set this totrueif you want the<Flags>element in the response.
# Server/Response
The template used in this action is described on the Schematized Storage Service main page.
# GetProfileResponseThis element has only one attribute:
xmlns: This is always set tohttp://www.msn.com/webservices/storage/, followed by the version of the schema.
This element has three children:
<ResourceID>: The profile's resource ID.<DateModified>: This is a ISO 8601 timestamp which denotes the last time the profile was changed in any way.<ExpressionProfile>: Described below.
This element has ten optional children:
<ResourceID>: The resource ID of this<ExpressionProfile>.<Version>: The version of this<ExpressionProfile>.<DateModified>: This is a ISO 8601 timestamp which denotes the last time the<ExpressionProfile>was changed in any way.<DisplayName>: The roaming display name.<DisplayNameLastModified>: This is a ISO 8601 timestamp which denotes the last time the<DisplayName>was changed.<PersonalStatus>: The roaming personal status message.<PersonalStatusLastModified>: This is a ISO 8601 timestamp which denotes the last time the<PersonalStatus>was changed.<StaticUserTilePublicURL>: A public and static version of the roaming profile picture.<Flags>: The transaction flag. If there is an ongoing write operation, this is set to1. Otherwise, it is set to0.<Photo>: Described below.
This element has three optional children:
<ResourceID>: The associated photo resource's resource ID.<Name>: The associated photo resource's display name.<DocumentStreams>: Described below.
This element contains one or more <DocumentStream> elements.
This element has four children:
<DocumentStreamName>: The name of this<DocumentStream>, and is usually the same value as the<DocumentStreamType>.<MimeType>: The MIME type of the document:png(Not a MIME type, send if<ApplicationID>isMessenger Client 8.0.)cab(Not a MIME type, send if<ApplicationID>isMessenger Client 8.0.)image/png(Note: Not always an actual PNG., send if<ApplicationID>is NOTMessenger Client 8.0.)application/vnd.ms-cab-compressed(Send if<ApplicationID>is NOTMessenger Client 8.0.)audio/x-ms-wma
<DocumentStreamType>: The sub-type of this<DocumentStream>:UserTileStaticUserTileDynamicBinary
<PreAuthURL>: The URL where the document content is stored, which may have Passport query parameters appended by the client for thestorage.msn.comtoken.
NOTE: While there are known to be more children to <DocumentStream>, none of them are used by most clients.
# Examples
# Schema version w10
# Basic Request
NOTE: The response is shown without a <Photo> relationship.
# Client/Request
POST /storageservice/SchematizedStore.asmx HTTP/1.1
SOAPAction: http://www.msn.com/webservices/storage/w10/GetProfile
Cache-Control: no-cache
Content-Type: text/xml; charset=utf-8
Content-Length: 1554
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>
<soap:Header>
<StorageApplicationHeader xmlns="http://www.msn.com/webservices/storage/w10">
<ApplicationID>Messenger Client 8.0</ApplicationID>
<Scenario>Timer</Scenario>
</StorageApplicationHeader>
<StorageUserHeader xmlns="http://www.msn.com/webservices/storage/w10">
<Puid>0</Puid>
<TicketToken>t=ticket&p=profile</TicketToken>
</StorageUserHeader>
</soap:Header>
<soap:Body>
<GetProfile xmlns="http://www.msn.com/webservices/storage/w10">
<profileHandle>
<Alias>
<Name>4294967298</Name>
<NameSpace>MyCidStuff</NameSpace>
</Alias>
<RelationshipName>MyProfile</RelationshipName>
</profileHandle>
<profileAttributes>
<ResourceID>true</ResourceID>
<DateModified>true</DateModified>
<ExpressionProfileAttributes>
<ResourceID>true</ResourceID>
<DateModified>true</DateModified>
<DisplayName>true</DisplayName>
<DisplayNameLastModified>true</DisplayNameLastModified>
<PersonalStatus>true</PersonalStatus>
<PersonalStatusLastModified>true</PersonalStatusLastModified>
<StaticUserTilePublicURL>true</StaticUserTilePublicURL>
<Photo>true</Photo>
<Flags>true</Flags>
</ExpressionProfileAttributes>
</profileAttributes>
</GetProfile>
</soap:Body>
</soap:Envelope>
# Server/Response
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: 1469
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
<soap:Header>
<AffinityCacheHeader xmlns="http://www.msn.com/webservices/storage/w10">
<CacheKey>MjAyNi0wMi0wOFQxMDoxODozNi43MDVa</CacheKey>
</AffinityCacheHeader>
<StorageUserHeader xmlns="http://www.msn.com/webservices/storage/w10">
<Puid>0</Puid>
<Cid>4294967298</Cid>
<TicketToken>t=ticket&p=profile</TicketToken>
<IsAdmin>false</IsAdmin>
</StorageUserHeader>
</soap:Header>
<soap:Body>
<GetProfileResponse xmlns="http://www.msn.com/webservices/storage/w10">
<GetProfileResult>
<ResourceID>cid_4294967298!profile</ResourceID>
<DateModified>2026-02-11T19:03:11.539Z</DateModified>
<ExpressionProfile>
<ResourceID>cid_4294967298!expressionprofile</ResourceID>
<DateModified>2026-02-11T19:03:11.539Z</DateModified>
<DisplayName>example user</DisplayName>
<DisplayNameLastModified>2026-02-11T19:03:11.539Z</DisplayNameLastModified>
<PersonalStatus></PersonalStatus>
<PersonalStatusLastModified>2026-02-11T19:03:11.539Z</PersonalStatusLastModified>
<StaticUserTilePublicURL>http://example.com/usertiles/cid_4294967298/static</StaticUserTilePublicURL>
<Flags>0</Flags>
</ExpressionProfile>
</GetProfileResult>
</GetProfileResponse>
</soap:Body>
</soap:Envelope>
# With a Photo
# Client/Request
POST /storageservice/SchematizedStore.asmx HTTP/1.1
SOAPAction: http://www.msn.com/webservices/storage/w10/GetProfile
Cache-Control: no-cache
Content-Type: text/xml; charset=utf-8
Content-Length: 1554
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
>
<soap:Header>
<StorageApplicationHeader xmlns="http://www.msn.com/webservices/storage/w10">
<ApplicationID>Messenger Client 9.0</ApplicationID>
<Scenario>Timer</Scenario>
</StorageApplicationHeader>
<StorageUserHeader xmlns="http://www.msn.com/webservices/storage/w10">
<Puid>0</Puid>
<TicketToken>t=ticket&p=profile</TicketToken>
</StorageUserHeader>
</soap:Header>
<soap:Body>
<GetProfile xmlns="http://www.msn.com/webservices/storage/w10">
<profileHandle>
<Alias>
<Name>4294967298</Name>
<NameSpace>MyCidStuff</NameSpace>
</Alias>
<RelationshipName>MyProfile</RelationshipName>
</profileHandle>
<profileAttributes>
<ResourceID>true</ResourceID>
<DateModified>true</DateModified>
<ExpressionProfileAttributes>
<ResourceID>true</ResourceID>
<DateModified>true</DateModified>
<DisplayName>true</DisplayName>
<DisplayNameLastModified>true</DisplayNameLastModified>
<PersonalStatus>true</PersonalStatus>
<PersonalStatusLastModified>true</PersonalStatusLastModified>
<StaticUserTilePublicURL>true</StaticUserTilePublicURL>
<Photo>true</Photo>
<Flags>true</Flags>
</ExpressionProfileAttributes>
</profileAttributes>
</GetProfile>
</soap:Body>
</soap:Envelope>
# Server/Response
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: 1999
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
>
<soap:Header>
<AffinityCacheHeader xmlns="http://www.msn.com/webservices/storage/w10">
<CacheKey>MjAyNi0wMi0wOFQxMDoxODozNi43MDVa</CacheKey>
</AffinityCacheHeader>
<StorageUserHeader xmlns="http://www.msn.com/webservices/storage/w10">
<Puid>0</Puid>
<Cid>4294967298</Cid>
<TicketToken>t=ticket&p=profile</TicketToken>
<IsAdmin>false</IsAdmin>
</StorageUserHeader>
</soap:Header>
<soap:Body>
<GetProfileResponse xmlns="http://www.msn.com/webservices/storage/w10">
<GetProfileResult>
<ResourceID>cid_4294967298!profile</ResourceID>
<DateModified>2026-02-11T19:03:11.539Z</DateModified>
<ExpressionProfile>
<ResourceID>cid_4294967298!expressionprofile</ResourceID>
<DateModified>2026-02-11T19:03:11.539Z</DateModified>
<DisplayName>example user</DisplayName>
<DisplayNameLastModified>2026-02-11T19:03:11.539Z</DisplayNameLastModified>
<PersonalStatus></PersonalStatus>
<PersonalStatusLastModified>2026-02-11T19:03:11.539Z</PersonalStatusLastModified>
<Photo>
<ResourceID>cid_4294967298!documents!1</ResourceID>
<DateModified>2026-02-11T19:03:11.539Z</DateModified>
<DocumentStreams>
<DocumentStream>
<DocumentStreamName>UserTileStatic</DocumentStreamName>
<MimeType>image/png</MimeType>
<DocumentStreamType>UserTileStatic</DocumentStreamType>
<PreAuthURL>https://example.com/me/profile/photo/static</PreAuthURL>
</DocumentStream>
</DocumentStreams>
<Name>Example Display Picture</Name>
</Photo>
<StaticUserTilePublicURL>http://example.com/usertiles/cid_4294967298/static</StaticUserTilePublicURL>
<Flags>0</Flags>
</ExpressionProfile>
</GetProfileResult>
</GetProfileResponse>
</soap:Body>
</soap:Envelope>