The following methods are provided in the Enterprise or Partner WSDL as generic core API calls that allow you primarily to perform CRUD actions on standard and custom Salesforce objects (also referred to as "data setup"). Refer to Salesforce Developer documentation for complete information on calling these methods. The examples provided on this page will aid you in performing CRUD actions and querying information from the Salesforce database to use in Apttus API calls. 

Retrieving the Server URL and Session Id (Login)

All API calls to your organization require you to authenticate with a valid Session Id. 

Method: login()

Request: Pass the username and password for the user providing authentication.

Example Request (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:partner.soap.sforce.com">
   <soapenv:Header>
   </soapenv:Header>
   <soapenv:Body>
      <urn:login>
         <urn:username>username</urn:username>
         <urn:password>password</urn:password>
      </urn:login>
   </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the serverURL and session Id.

Example Response (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <soapenv:Body>
      <loginResponse>
         <result>
            <serverUrl>serverURL</serverUrl>
            <sessionId>sessionId</sessionId>
         </result>
      </loginResponse>
   </soapenv:Body>
</soapenv:Envelope>
XML

Retrieving an Opportunity

Method: query()

Request: Pass the session Id and Opportunity Name.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>session Id</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:query>
            <urn:queryString>select id from opportunity where name='opportunityName'</urn:queryString>
        </urn:query>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Opportunity Id and Size (indicates number of Ids)

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:sf="urn:sobject.enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>4973</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <queryResponse>
            <result>
                <done>true</done>
                <queryLocator xsi:nil="true"/>
                <records xsi:type="sf:Opportunity">
                    <sf:Id>006Z000000Gr9ODIAZ</sf:Id>
                </records>
                <size>1</size>
            </result>
        </queryResponse>
    </soapenv:Body>
</soapenv:Envelope>

XML

Creating a Price List

Method: create()

Request: Pass the session Id and Price List Name.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com"
    xmlns:urn1="urn:sobject.enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>session Id</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:create>
            <urn:sObjects xsi:type="Apttus_Config2__PriceList__c"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <Name>Price List Name</Name>
            </urn:sObjects>
        </urn:create>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Price List Id with status = 'true' if the Price List was successfully created.

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>4983</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <createResponse>
            <result>
                <id>a1DZ0000002i9IWMAY</id>
                <success>true</success>
            </result>
        </createResponse>
    </soapenv:Body>
</soapenv:Envelope>
XML

Retrieving a Price List

Method: query()

Request: Pass the session Id and Price List Name.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:query>
            <urn:queryString>select Id from Apttus_Config2__PriceList__c where 
         name='priceListName'
         </urn:queryString>
        </urn:query>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Price List Id.

Example Response (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sf="urn:sobject.partner.soap.sforce.com">
   <soapenv:Header>
      <LimitInfoHeader>
         <limitInfo>
            <current>637</current>
            <limit>5000000</limit>
            <type>API REQUESTS</type>
         </limitInfo>
      </LimitInfoHeader>
   </soapenv:Header>
   <soapenv:Body>
      <queryResponse>
         <result xsi:type="QueryResult">
            <done>true</done>
            <queryLocator xsi:nil="true"/>
            <records xsi:type="sf:sObject">
               <sf:type>Apttus_Config2__PriceList__c</sf:type>
               <sf:Id>a1DZ0000002mg5nMAA</sf:Id>
            </records>
            <size>1</size>
         </result>
      </queryResponse>
   </soapenv:Body>
</soapenv:Envelope>
XML

Creating a Product Category

Method: create()

Request: Pass the session IdCategory Name, and Category Label.

Example Request (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:enterprise.soap.sforce.com" xmlns:urn1="urn:sobject.enterprise.soap.sforce.com">
   <soapenv:Header>
      <urn:SessionHeader>
         <urn:sessionId>session Id</urn:sessionId>
      </urn:SessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <urn:create>
         <urn:sObjects xsi:type="Apttus_Config2__ClassificationName__c" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
           <Name>Category Name</Name>
           <Apttus_Config2__HierarchyLabel__c>Category Label</Apttus_Config2__HierarchyLabel__c>
         </urn:sObjects>
      </urn:create>
   </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Category Id with status = 'true' if the Category was successfully created.

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>5011</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <createResponse>
            <result>
                <id>a0oZ0000002u94bIAA</id>
                <success>true</success>
            </result>
        </createResponse>
    </soapenv:Body>
</soapenv:Envelope>undefined</soapenv:Body>undefined</soapenv:Envelope>
XML

Retrieving a Category

Method: query()

Request: Pass the session Id and Category Name.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:query>
            <urn:queryString>select Id, Name from Apttus_Config2__ClassificationName__c where 
         name='Category Name'
         </urn:queryString>
        </urn:query>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Category IdCategory Name, and Size (indicates number of Ids).

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:sf="urn:sobject.enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>5017</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <queryResponse>
            <result>
                <done>true</done>
                <queryLocator xsi:nil="true"/>
                <records xsi:type="sf:Apttus_Config2__ClassificationName__c">
                    <sf:Id>a0oe0000005l37UAAQ</sf:Id>
                    <sf:Name>AutoQuoteOfferings</sf:Name>
                </records>
                <size>1</size>
            </result>
        </queryResponse>
    </soapenv:Body>
</soapenv:Envelope>undefined</soapenv:Body>undefined</soapenv:Envelope>undefined</soapenv:Envelope>
XML

Creating a Standalone Product

Method: create()

Request: Pass the session IdProduct Name, and Configuration Type.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com"
    xmlns:urn1="urn:sobject.enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:create>
            <urn:sObjects xsi:type="Product2"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <Name>${#Project#createStandloneProductName}</Name>
                <Apttus_Config2__ConfigurationType__c>Standalone</Apttus_Config2__ConfigurationType__c>
            </urn:sObjects>
        </urn:create>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Product Id with status = 'true' if the Product was successfully created.

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>5033</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <createResponse>
            <result>
                <id>01tZ0000004ypoaIAA</id>
                <success>true</success>
            </result>
        </createResponse>
    </soapenv:Body>
</soapenv:Envelope>
XML

Retrieving a Standalone Product

Method: query()

Request: Pass the session Id and Product Name.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:query>
            <urn:queryString>select Id, Name from Product2 where name='Standalone Product Name'</urn:queryString>
        </urn:query>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Standalone Product IdProduct Name, and Size (indicates the number of Ids).

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:partner.soap.sforce.com"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:sf="urn:sobject.partner.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>638</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <queryResponse>
            <result xsi:type="QueryResult">
                <done>true</done>
                <queryLocator xsi:nil="true"/>
                <records xsi:type="sf:sObject">
                    <sf:type>Product2</sf:type>
                    <sf:Id>01tZ0000004lUXeIAM</sf:Id>
                    <sf:Name>Auto_API_StandaloneProduct3</sf:Name>
                </records>
                <size>1</size>
            </result>
        </queryResponse>
    </soapenv:Body>
</soapenv:Envelope>
XML

Creating a Bundle Product

Method: create()

Request: Pass the session IdProduct Name, and Configuration Type.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com"
    xmlns:urn1="urn:sobject.enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:create>
            <urn:sObjects xsi:type="Product2"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <Name>Bundle Product Name</Name>
                <Apttus_Config2__ConfigurationType__c>Bundle</Apttus_Config2__ConfigurationType__c>
            </urn:sObjects>
        </urn:create>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Product Id with status = 'true' if the Bundle Product was successfully created.

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>5033</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <createResponse>
            <result>
                <id>01tZ0000004yrtyaIAA</id>
                <success>true</success>
            </result>
        </createResponse>
    </soapenv:Body>
</soapenv:Envelope>
XML

Retrieving a Bundle

Method: query()

Request: Pass the session Id and Product Name.

Example Request (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:partner.soap.sforce.com">
   <soapenv:Header>
      <urn:SessionHeader>
         <urn:sessionId>00DZ000000NAEIA!ASAAQHmIRqgn4R9Oi1yQjWTIVk4UZmsDe_.eK0Z9z6qLij7Tu.L_Yo8dRA_p8OmhKMeRs4uzCZTadIgQ9fEbDKciXEQYRyaA</urn:sessionId>
      </urn:SessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <urn:query>
            <urn:queryString>select Id, Name from Product2 where name='Bundle Product Name'
         </urn:queryString>
      </urn:query>
   </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Bundle Id and Product Name, and Size (indicates the number of Ids).

Example Response (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sf="urn:sobject.partner.soap.sforce.com">
   <soapenv:Header>
      <LimitInfoHeader>
         <limitInfo>
            <current>643</current>
            <limit>5000000</limit>
            <type>API REQUESTS</type>
         </limitInfo>
      </LimitInfoHeader>
   </soapenv:Header>
   <soapenv:Body>
      <queryResponse>
         <result xsi:type="QueryResult">
            <done>true</done>
            <queryLocator xsi:nil="true"/>
            <records xsi:type="sf:sObject">
               <sf:type>Product2</sf:type>
               <sf:Id>01tZ0000004lUXtIAM</sf:Id>
               <sf:Name>Auto_API_BundleProduct1</sf:Name>
            </records>
            <size>1</size>
         </result>
      </queryResponse>
   </soapenv:Body>
</soapenv:Envelope>
XML

Creating an Option Product

Method: create()

Request: Pass the session IdProduct Name, and Configuration Type.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com"
    xmlns:urn1="urn:sobject.enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:create>
            <urn:sObjects xsi:type="Product2"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
                <Name>Option Product Name</Name>
                <Apttus_Config2__ConfigurationType__c>Option</Apttus_Config2__ConfigurationType__c>
            </urn:sObjects>
        </urn:create>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Product Id with status = 'true' if the Option Product was successfully created.

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>5033</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <createResponse>
            <result>
                <id>01tZ0008984yrterIAA</id>
                <success>true</success>
            </result>
        </createResponse>
    </soapenv:Body>
</soapenv:Envelope>
XML

Retrieving an Option

Method: query()

Request: Pass the session Id and Product Name.

Example Request (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:partner.soap.sforce.com">
   <soapenv:Header>
      <urn:SessionHeader>
         <urn:sessionId>00DZ000000NAEIA!ASAAQHmIRqgn4R9Oi1yQjWTIVk4UZmsDe_.eK0Z9z6qLij7Tu.L_Yo8dRA_p8OmhKMeRs4uzCZTadIgQ9fEbDKciXEQYRyaA</urn:sessionId>
      </urn:SessionHeader>
   </soapenv:Header>
   <soapenv:Body>
      <urn:query>
            <urn:queryString>select Id, Name from Product2 where name='Option Product Name'
         </urn:queryString>
      </urn:query>
   </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Option IdProduct Name, and Size (indicates the number of Ids).

Example Response (click to expand)

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns="urn:partner.soap.sforce.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:sf="urn:sobject.partner.soap.sforce.com">
   <soapenv:Header>
      <LimitInfoHeader>
         <limitInfo>
            <current>648</current>
            <limit>5000000</limit>
            <type>API REQUESTS</type>
         </limitInfo>
      </LimitInfoHeader>
   </soapenv:Header>
   <soapenv:Body>
      <queryResponse>
         <result xsi:type="QueryResult">
            <done>true</done>
            <queryLocator xsi:nil="true"/>
            <records xsi:type="sf:sObject">
               <sf:type>Product2</sf:type>
               <sf:Id>01tZ0000004lUYNIA2</sf:Id>
               <sf:Name>Auto_API_OptionProduct2</sf:Name>
            </records>
            <size>1</size>
         </result>
      </queryResponse>
   </soapenv:Body>
</soapenv:Envelope>
XML

Retrieving Component Id for a Product, Bundle, or Option

Method: query()

Request: Pass the session Id and Product Id.

Example Request (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:urn="urn:enterprise.soap.sforce.com">
    <soapenv:Header>
        <urn:SessionHeader>
            <urn:sessionId>${#Project#SessionID}</urn:sessionId>
        </urn:SessionHeader>
    </soapenv:Header>
    <soapenv:Body>
        <urn:query>
            <urn:queryString>select Id from Apttus_Config2__ProductOptionComponent__c where 
         Apttus_Config2__ComponentProductId__c = 'Product Id'</urn:queryString>
        </urn:query>
    </soapenv:Body>
</soapenv:Envelope>
XML

Response: Returns the Component Product Id.

Example Response (click to expand)

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="urn:partner.soap.sforce.com"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:sf="urn:sobject.partner.soap.sforce.com">
    <soapenv:Header>
        <LimitInfoHeader>
            <limitInfo>
                <current>649</current>
                <limit>5000000</limit>
                <type>API REQUESTS</type>
            </limitInfo>
        </LimitInfoHeader>
    </soapenv:Header>
    <soapenv:Body>
        <queryResponse>
            <result xsi:type="QueryResult">
                <done>true</done>
                <queryLocator xsi:nil="true"/>
                <records xsi:type="sf:sObject">
                    <sf:type>Apttus_Config2__ProductOptionComponent__c</sf:type>
                    <sf:Id>a1YZ0000003pII9MAM</sf:Id>
                </records>
                <size>1</size>
            </result>
        </queryResponse>
    </soapenv:Body>
</soapenv:Envelope>
XML