Profile Delete
The system supports a “soft” delete of profiles, which means that the profile status changes to "Deleted" and most business data is removed from the profile. This deletion ensures that private agency data is removed from profiles, while maintaining the profile entity (its ID) for data integrity reasons.
Any profile whose status is Deleted is not accessible via the web services. That is, no user – regardless of security authorization – can retrieve, modify, or see in search or child search results any profile that is Deleted. If such a profile is requested via the web services by its unique ID (or provisioning code), an error is returned. In other words, only a DBA has access to Deleted profiles.
If a profile is deleted, none of the associated non-profile data is removed from the system. That is, templates, custom fields, tags, etc. that may be “owned” by the profile are not removed. This restriction is relevant to these profile types:
-
Agencies, which own custom fields, tags, default templates, and agency hierarchy levels, which will remain in the database.
-
Branches, which can own an override template, which will remain in the database.
-
Accounts, which can own override templates for account and traveler, and the account hierarchy levels, which will all remain in the database.
When a profile’s status is changed to Deleted, all but a small subset of profile data is deleted. The following information is retained for data integrity:
-
Agency Group and Account: unique ID, profile type, status, version, name, created timestamp, created by agent ID, last modified timestamp, last modified by agent ID
-
Agency: unique ID, name, status, provisioning ID (AgencyCode), version, create timestamp, created by agent ID, hierarchy level ID, contract node indicator, last modified timestamp, last modified by agent ID, agency group profile ID (if applicable)
-
Branch Group: unique ID, profile type, name, status, provisioning ID (BranchGroupCode), version, hierarchy level ID, contract node indicator, created timestamp, created by agent ID, last modified timestamp, last modified by agent ID
-
Branch: unique ID, profile type, name, status, provisioning ID (BranchCode), version, branch address, branch phone number, hierarchy level ID, contract node indicator, created timestamp, created by agent ID, last modified timestamp, last modified by agent ID, default currency, geo city code
-
Agent: unique ID, profile type, provisioning ID (UserName), status, version, given name, surname, hierarchy level ID, created timestamp, created by agent ID, last modified timestamp, last modified by agent ID
-
Traveler Group: unique ID, profile type, status, version, name, created timestamp, created by agent ID, last modified timestamp, last modified by agent ID
-
Traveler: unique ID, given name, surname, profile type, status, version, created timestamp, created by agent ID, last modified timestamp, last modified by agent ID
-
If a traveler profile being deleted has links to other profiles, the links will also be deleted.
-
If a traveler profile is deleted and if other traveler profiles link to it, the link is not removed from the associated profile. This means that if the agent clicks a link to a deleted profile, they will get an error message (e.g., “this profile does not exist”).
Schema
Profile Delete is within uProfile.xsd. See the following transactions for Profile Delete:
- ProfileDeleteReq
- For ProfileDeleteRsp, refer directly to the uProfile schema.
Request
Specify which profile you want to delete using one of the following identifiers:
- ProfileID
- ProvisioningCode plus profile type
- UniqueProfileID plus profile type. UniqueProfileID is currently only applicable to traveler profiles.
Send the Force attribute in the Profile Delete request to force the deletion of Account, Traveler Group, and Traveler profiles, even when a profile has undeleted child profiles.
In the Profile Delete request:
- If the Force attribute is not sent, an error is returned that indicates all children must be deleted before the profile can be deleted.
- The client application can use the ProfileChildSearchReq to determine which immediate child profiles exist.
- In the case of an agency group, the user must first remove any parent-child association from the agency group to any agencies before deleting the agency group profile.
- If the Force attribute is sent for a ProfileType of Account, Traveler Group, or Traveler, the ProfileID sent in the request and all of its children are immediately “soft deleted” (i.e., the profile status is updated to Deleted). They are “hard deleted” (i.e., removed from the database) three business days later.
Notes:
Response