GetNamingConventions()

Abstract

The GetNamingConventions() API function is an XmlHttp function to obtain the naming conventions for the current user.  This function must be called after the LogonUser() function.

The naming conventions are based around the standard tags for each type of record in TrackerRMS and the returned XML will include the text to display for each type of record, for example Client A might have the naming convention called “Opportunities” whereas Client B might call these “Jobs”.  The tag (in this case NamingOpportunities) will remain constant however the text displayed may change with each client that logs on.

API Address

https://api.tracker-rms.com/WebAPI/XmlHttpGetNamingConventions.aspx

Request Format

The input format XML for this function is as follows:

<?xml version="1.0"?>
<TrackerRMS>
    <WebAPI>
        <GetNamingConventions>
            <UserCredentials>
                <SecurityToken></SecurityToken>
                <Username></Username>
                <Password></Password>
            </UserCredentials>
        </GetNamingConventions>
    </WebAPI>
</TrackerRMS>
Parameter Notes
<SecurityToken> This will be the 40 character security token obtained from the LogonUser() function
<Username> The username is typically the email address for the user in the format name@domain.com
<Password> The password will be the same as their web based password and can contain a combination of upper case, lower case and alpha-numeric characters

Response Format

The function will return the standard RequestStatus section along with the naming conventions for each of the tags which are to be used for the home page and any subsequent list and records pages.

<?xml version="1.0"?>
<TrackerRMS>
    <WebAPI>
        <RequestStatus>
            <ReturnCode></ReturnCode>
            <ReturnDescription></ReturnDescription>
            <ReturnRecordCount></ReturnRecordCount>
        </RequestStatus>
        <GetNamingConventions_Return>
            <NamingConventions>
                <NamingConvention tag=””></NamingConvention>
                <NamingConvention tag=””></NamingConvention>
                ...
            </NamingConventions>
            <StatusTypeConventions>
                <LeadStatuses>
                    <LeadStatus id=””></LeadStatus>
                    <LeadStatus id=””></LeadStatus>
                    ...
                </LeadStatuses>
                <OpportunityStatuses>
                    <OpportunityStatus id=””></OpportunityStatus>
                    <OpportunityStatus id=””></OpportunityStatus>
                    ...
                </OpportunityStatuses>
                <ProjectStatuses>
                    <ProjectStatus id=””></ProjectStatus>
                    <ProjectStatus id=””></ProjectStatus>
                    ...
                </ProjectStatuses>
                <ResourceStatuses>
                    <ResourceStatus id=””></ResourceStatus>
                    <ResourceStatus id=””></ResourceStatus>
                    ...
                </ResourceStatuses>
                <TicketTypes>
                    <TicketType id=””></TickeType>
                    <TicketType id=””></TickeType>
                    ...
                </TicketTypes>
                <Departments>
                    <Department id=””></Department>
                    <Department id=””></Department>
                    ...
                </Departments>
                <Teams>
                    <Team id=””></Team>
                    <Team id=””></Team>
                    ...
                </Teams>
            </StatusTypeConventions>
        </GetNamingConventions_Return>
    </WebAPI>
</TrackerRMS>
Parameter Notes
<NamingConvention> (collection) Within the <NamingConventions> node is the standard <NamingConvention> “tags” with their specific naming conventions included.
These can vary on a client by client basis and can be obtained once following logon in order to build the naming conventions that are to be used throughout the application.
<StatusTypeConventions> Within this node are the individual status collections and type collection for each of the main record types.  See below.
<LeadStatuses>
<LeadStatus> (collection)
The <LeadStatues> node contains individual <LeadStatus> nodes, each with an “id” which should be passed back in any subsequent fetch.  The content text for the node is the description presented to the user.
<OpportunityStatuses>
<OpportunityStatus> (collection)
The <OpportunityStatues> node contains individual <OpportunityStatus> nodes, each with an “id” which should be passed back in any subsequent fetch.  The content text for the node is the description presented to the user.
<ProjectStatuses>
<ProjectStatus> (collection)
The <ProjectStatues> node contains individual <ProjectStatus> nodes, each with an “id” which should be passed back in any subsequent fetch.  The content text for the node is the description presented to the user.
<ResourceStatuses>
<ResourceStatus> (collection)
The <ResourceStatues> node contains individual <ResourceStatus> nodes, each with an “id” which should be passed back in any subsequent fetch.  The content text for the node is the description presented to the user.
<TicketTypes>
<TicketType> (collection)
The <TicketTypes> node contains individual <TicketType> nodes, each with an “id” which should be passed back in any subsequent fetch.  The content text for the node is the description presented to the user.
<Departments>
<Department> (collection)
The <Departments> node contains individual <Department> nodes, each with an “id” which should is blank.  The content text for the node is the description presented to the user.
<Teams>
<Team> (collection)
The <Teams> node contains individual <Team> nodes, each with an “id” which should be passed back in any subsequent fetch.  The content text for the node is the description presented to the user.

Note:  All Naming Conventions have a singular and a plural convention, for example:

NamingAccount Singular convention to be used in areas of the application where the “Account” is referred to in the singular context (e.g. in the “Account” record)
NamingAccounts Plural convention to be used in areas of the application where the “Accounts” are referred to in the plural or multiple context (e.g. in the Home screen or “Accounts” list screen)

Example of a valid return:

In this example below the user has a different naming convention for Account & Accounts (called Client & Clients) and a different naming convention for Resource & Resources (called Employee & Employees).

<?xml version="1.0"?>
<TrackerRMS>
    <WebAPI>
        <RequestStatus>
            <ReturnCode>0</ReturnCode>
            <ReturnDescription>Success</ReturnDescription>
            <ReturnRecordCount>16</ReturnRecordCount>
        </RequestStatus>
        <GetNamingConvention_Return>
            <NamingConventions>
                <NamingConvention tag=”NamingActivity”>Activity</NamingConvention>
                <NamingConvention tag=”NamingActivities”>Activities</NamingConvention>
                <NamingConvention tag=”NamingAccount”>Client</NamingConvention>
                <NamingConvention tag=”NamingAccounts”>Clients</NamingConvention>
                <NamingConvention tag=”NamingContact”>Contact</NamingConvention>
                <NamingConvention tag=”NamingContacts”>Contacts</NamingConvention>
                <NamingConvention tag=”NamingLead”>Lead</NamingConvention>
                <NamingConvention tag=”NamingLeads”>Leads</NamingConvention>
                <NamingConvention tag=”NamingOpportunity”>Opportunity</NamingConvention>
                <NamingConvention tag=”NamingOpportunities”>Opportunities</NamingConvention>
                <NamingConvention tag=”NamingProject”>Project</NamingConvention>
                <NamingConvention tag=”NamingProjects”>Projects</NamingConvention>
                <NamingConvention tag=”NamingResource”>Employee</NamingConvention>
                <NamingConvention tag=”NamingResources”>Employees</NamingConvention>
                <NamingConvention tag=”NamingTicket”>Ticket</NamingConvention>
                <NamingConvention tag=”NamingTickets”>Tickets</NamingConvention>
            </NamingConventions>
            <StatusTypeConventions>
                <LeadStatuses>
                    <LeadStatus tag=”1”>Open</LeadStatus>
                    <LeadStatus tag=”2”>Closed</LeadStatus>
                </LeadStatuses>
                <OpportunityStatuses>
                    <OpportunityStatus tag=”1”>Initial Meeting</OpportunityStatus>
                    <OpportunityStatus tag=”2”>Proposal</OpportunityStatus>
                    <OpportunityStatus tag=”3”>Won</OpportunityStatus>
                    <OpportunityStatus tag=”4”>Lost</OpportunityStatus>
                </OpportunityStatuses>
                <ProjectStatuses>
                    <ProjectStatus tag=”1”>Active</ProjectStatus>
                    <ProjectStatus tag=”2”>Completed</ProjectStatus>
                </ProjectStatuses>
                <ResourceStatuses>
                    <ResourceStatus tag=”1”>Applied</ResourceStatus>
                    <ResourceStatus tag=”2”>Working</ResourceStatus>
                    <ResourceStatus tag=”3”>Leaver</ResourceStatus>
                </ResourceStatuses>
                <TicketTypes>
                    <TicketType tag=”Bug”>Bug</TicketType>
                    <TicketType tag=”Feature Request”>Feature Request</TicketType>
                    <TicketType tag=”Service Change”>Service Change</TicketType>
                </TicketTypes>
                <Departments>
                    <Department id=””>Sales</Department>
                    <Department id=””>Support</Department>
                </Departments>
                <Teams>
                    <Team id=”1”>1st Line Support</Team>
                    <Team id=”2”>2nd Line Support</Team>
                </Teams>
            </StatusTypeConventions>
        </GetNamingConvention_Return>
    </WebAPI>
</TrackerRMS>