Home‎ > ‎Developer's Guide‎ > ‎REST Web Service API‎ > ‎

4.6 Plans API

4.6.1. Retrieve Plan and Contract Charges:

Given a id or a contractCode, this returns the XML graph for the Plan (ContractOffering). The graph also includes the Charges (ContractCharges) as well as its child PricingTier objects.



GET /rest/plan/[id]?format=xml
GET /rest/plan? format=xml&contractCode=[code]

4.6.2. Retrieve Plan List:

Gets a list of all Plans for the current Organization 
The 'excludeCharges' switch will list the plans without the ContractCharges.



GET /rest/plans?format=xml&offset=[n]&max=[m]
GET /rest/plans?excludeCharges=1

<list>
  <contractOffering id="2">
    <startDate />
    <contractCharges>
      <contractCharge id="1">
        <accountingCode>YR-AV-SP-2008</accountingCode>
        <position>1</position>
        <isPrepaid>false</isPrepaid>
        <isPenalty>false</isPenalty>
        <pricingTiers>
          <pricingTier id="1">
            <unitsTo>10.00</unitsTo>
            <percent />
            <isOverage>false</isOverage>
            <contractCharge id="1" />
            <lastUpdated>2010-08-06</lastUpdated>
            <currency id="USD" />
            <price>150.95</price>
            <dateCreated>2010-08-06</dateCreated>
            <unitsFrom>1.00</unitsFrom>
          </pricingTier>
          <pricingTier id="2">
            <unitsTo>50.00</unitsTo>
            <percent />
            <isOverage>false</isOverage>
            <contractCharge id="1" />
            <lastUpdated>2010-08-06</lastUpdated>
            <currency id="USD" />
            <price>120.95</price>
            <dateCreated>2010-08-06</dateCreated>
            <unitsFrom>11.00</unitsFrom>
          </pricingTier>
          <pricingTier id="3">
            <unitsTo>99999.00</unitsTo>
            <percent />
            <isOverage>false</isOverage>
            <contractCharge id="1" />
            <lastUpdated>2010-08-06</lastUpdated>
            <currency id="USD" />
            <price>90.95</price>
            <dateCreated>2010-08-06</dateCreated>
            <unitsFrom>51.00</unitsFrom>
          </pricingTier>
        </pricingTiers>
        <isProrated>false</isProrated>
        <unitOfMeasure>Seats</unitOfMeasure>
        <priceCode>YR-RECUR</priceCode>
        <invoiceText>Annual license fee</invoiceText>
        <lastUpdated>2010-08-06</lastUpdated>
        <pricingType>TieredPricing</pricingType>
        <standardQuantity />
        <isTax>false</isTax>
        <maxQuantity />
        <taxCodes />
        <isMandatory>false</isMandatory>
        <isSeparateInvoice>false</isSeparateInvoice>
        <dateCreated>2010-08-06</dateCreated>
        <chargeType>RecurringCharge</chargeType>
        <notes />
        <minQuantity>1.0</minQuantity>
      </contractCharge>
    </contractCharges>
    <dueDateValue>1</dueDateValue>
    <invoiceText>Annual subscription - Anti Virus and Spam Bundle</invoiceText>
    <lastUpdated>2010-08-06</lastUpdated>
    <endDate />
    <billingPeriod>Yearly</billingPeriod>
    <name>Anti Virus & Spam protection - annual bundle</name>
    <isAutoRenew>false</isAutoRenew>
    <dateCreated>2010-08-06</dateCreated>
    <notes>Max savings with this option</notes>
    <productOffering id="3" />
    <contractCode>B-Yr-AV-SP</contractCode>
    <dueDateUnits>Months</dueDateUnits>
    <billingAlignment>StartDate</billingAlignment>
  </contractOffering>
  <contractOffering id="3">
    <startDate>2010-08-06</startDate>
    <contractCharges>
      <contractCharge id="6">
        <accountingCode>MO-AV-2008</accountingCode>
        <position>1</position>
        <isPrepaid>false</isPrepaid>
        <isPenalty>false</isPenalty>
        <pricingTiers>
          <pricingTier id="14">
            <unitsTo />
            <percent />
            <isOverage>false</isOverage>
            <contractCharge id="6" />
            <lastUpdated>2010-08-06</lastUpdated>
            <currency id="USD" />
            <price>75.00</price>
            <dateCreated>2010-08-06</dateCreated>
            <unitsFrom />
          </pricingTier>
        </pricingTiers>
        <isProrated>false</isProrated>
        <unitOfMeasure />
        <priceCode>SNGL-SETUP</priceCode>
        <invoiceText>Setup fee</invoiceText>
        <lastUpdated>2010-08-06</lastUpdated>
        <pricingType>FixedPricing</pricingType>
        <standardQuantity />
        <isTax>false</isTax>
        <maxQuantity />
        <taxCodes />
        <isMandatory>false</isMandatory>
        <isSeparateInvoice>false</isSeparateInvoice>
        <dateCreated>2010-08-06</dateCreated>
        <chargeType>OneTimeCharge</chargeType>
        <notes>Setup Fee</notes>
        <minQuantity />
      </contractCharge>
    </contractCharges>
    <dueDateValue>1</dueDateValue>
    <invoiceText>Anti Virus protection - monthly subscription</invoiceText>
    <lastUpdated>2010-08-06</lastUpdated>
    <endDate>2011-08-06</endDate>
    <billingPeriod>Monthly</billingPeriod>
    <name>Anti Virus protection - monthly</name>
    <isAutoRenew>false</isAutoRenew>
    <dateCreated>2010-08-06</dateCreated>
    <notes>Pay monthly for Anti Virus</notes>
    <productOffering id="1" />
    <contractCode>Mo-AV</contractCode>
    <dueDateUnits>Months</dueDateUnits>
    <billingAlignment>StartDate</billingAlignment>
  </contractOffering>
</list>


Note: Plans cannot be created or updated via the API. Please use the GUI to perform these actions.

References:

  [1] http://www.codeproject.com/KB/architecture/RESTWebServicesPart2.aspx
  [2] http://en.wikipedia.org/wiki/Representational_State_Transfer
  [3] http://www.ibm.com/developerworks/library/j-grails09168/

Comments