Creates a new retention source authority in the system. Retention source authorities specify the governing body or regulation that mandates retention requirements for records and documents.
/srv.asmx/CreateRetentionSourceAuthority
/srv.asmx/CreateRetentionSourceAuthority?authenticationTicket=...&authorityName=.../srv.asmx/CreateRetentionSourceAuthority (form data)http://tempuri.org/CreateRetentionSourceAuthority| Parameter | Type | Required | Description |
|---|---|---|---|
authenticationTicket |
string | Yes | Authentication ticket obtained from AuthenticateUser |
authorityName |
string | Yes | Name of the retention source authority to create (e.g., “SEC - Securities and Exchange Commission”) |
<root success="true" />
<root success="false" error="[ErrorCode] Error message" />
GET /srv.asmx/CreateRetentionSourceAuthority?authenticationTicket=abc123-def456&authorityName=GDPR%20-%20General%20Data%20Protection%20Regulation HTTP/1.1
Host: server.example.com
POST /srv.asmx/CreateRetentionSourceAuthority HTTP/1.1
Content-Type: application/x-www-form-urlencoded
authenticationTicket=abc123-def456&authorityName=GDPR - General Data Protection Regulation
POST /srv.asmx HTTP/1.1
Content-Type: text/xml; charset=utf-8
SOAPAction: "http://tempuri.org/CreateRetentionSourceAuthority"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<CreateRetentionSourceAuthority xmlns="http://tempuri.org/">
<authenticationTicket>abc123-def456</authenticationTicket>
<authorityName>GDPR - General Data Protection Regulation</authorityName>
</CreateRetentionSourceAuthority>
</soap:Body>
</soap:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<root success="true" />
Duplicate Authority:
<root success="false" error="Authority with this name already exists" />
Empty Name:
<root success="false" error="Authority name cannot be empty" />
Invalid Ticket:
<root success="false" error="[901]Session expired or Invalid ticket" />
GetRetentionSourceAuthorities - List all retention source authoritiesDeleteRetentionSourceAuthority - Delete a retention source authorityUpdateRetentionSourceAuthority - Update an existing authority (if available)GetRandDSchedules - Get all R&D schedulesCreateRandDSchedule - Create a new R&D schedule (references source authority)UpdateRandDSchedule - Update an existing R&D scheduleDeleteRandDSchedule - Delete an R&D scheduleSEC - Securities and Exchange Commission
FINRA - Financial Industry Regulatory Authority
SOX - Sarbanes-Oxley Act
GLBA - Gramm-Leach-Bliley Act
HIPAA - Health Insurance Portability and Accountability Act
FDA - Food and Drug Administration
HITECH - Health Information Technology for Economic and Clinical Health Act
GDPR - General Data Protection Regulation
ISO 15489 - Records Management Standard
ISO 27001 - Information Security Management
NARA - National Archives and Records Administration
FOIA - Freedom of Information Act
DoD 5015.2 - Department of Defense Records Management
Common error responses:
| Error | Description |
|---|---|
[901]Session expired or Invalid ticket |
Invalid authentication ticket |
[2730]Insufficient rights. Anonymous users cannot perform this action |
User is not authenticated |
Authority name cannot be empty |
No authority name provided or only whitespace |
Authority with this name already exists |
An authority with the same name is already defined |
Invalid authority name |
Authority name contains invalid characters or exceeds length limit |
Access denied |
User does not have permission to create authorities |
After creating a retention source authority:
GetRetentionSourceAuthorities to confirm the authority was addedCreateRandDSchedule to define retention policiesThe API performs the following validations:
async function createAuthority(authorityName) {
const ticket = getUserAuthTicket();
const formData = new FormData();
formData.append('authenticationTicket', ticket);
formData.append('authorityName', authorityName);
const response = await fetch('/srv.asmx/CreateRetentionSourceAuthority', {
method: 'POST',
body: formData
});
const xmlText = await response.text();
const parser = new DOMParser();
const xmlDoc = parser.parseFromString(xmlText, "text/xml");
const success = xmlDoc.querySelector("root").getAttribute("success");
if (success === "true") {
console.log("Authority created successfully");
return true;
} else {
const error = xmlDoc.querySelector("root").getAttribute("error");
console.error("Failed to create authority:", error);
return false;
}
}
using (var client = new SrvSoapClient())
{
try
{
var response = await client.CreateRetentionSourceAuthorityAsync(
authTicket,
"CCPA - California Consumer Privacy Act"
);
var root = response.Root;
if (root.Attribute("success")?.Value == "true")
{
Console.WriteLine("Authority created successfully");
}
else
{
var error = root.Attribute("error")?.Value;
Console.WriteLine($"Error: {error}");
}
}
catch (Exception ex)
{
Console.WriteLine($"Exception: {ex.Message}");
}
}
RetentionSourceAuthority.aspx - Authority creation form