Reference for https://budget.lis.virginia.gov/BudgetPortalWebService/Budget.Bills.5.ListOfDetailsByYearSessionBillNumberTypePartItem/{SESSIONYEAR}/{SESSIONTYPE}/{BILLNUMBER}/{BILLTYPE}/{BILLPART}/{ITEMNUMBER}/

This service returns the details of an Item associated with a particular Year, Session, Bill Number, Bill Type, Part and Expense Item Number

Url: https://budget.lis.virginia.gov/BudgetPortalWebService/Budget.Bills.5.ListOfDetailsByYearSessionBillNumberTypePartItem/{SESSIONYEAR}/{SESSIONTYPE}/{BILLNUMBER}/{BILLTYPE}/{BILLPART}/{ITEMNUMBER}/

HTTP Method: GET

Message direction Format Body
Request N/A The Request body is empty.
Response Xml Example,Schema
Response Json Example

The following is an example response Xml body:

<ItemDetailsWebService xmlns="http://schemas.datacontract.org/2004/07/">
  <SecretariatName>String content</SecretariatName>
  <SecretariatShortName>String content</SecretariatShortName>
  <ResponsibleAgencyName>String content</ResponsibleAgencyName>
  <ResponsibleAgencyShortName>String content</ResponsibleAgencyShortName>
  <AgencyName>String content</AgencyName>
  <AgencyNameAbbrev>String content</AgencyNameAbbrev>
  <AgencyShortName>String content</AgencyShortName>
  <ItemNumber>String content</ItemNumber>
  <ProgramName>String content</ProgramName>
  <AmendedProgramName>String content</AmendedProgramName>
  <AmendedProgramCode>String content</AmendedProgramCode>
  <NotSetOutItem>true</NotSetOutItem>
  <OmittedItem>true</OmittedItem>
  <IsVetoed>true</IsVetoed>
  <Governor>String content</Governor>
  <VetoDate>String content</VetoDate>
  <CustomVetoLabel>String content</CustomVetoLabel>
  <SumSufficientEstimated>true</SumSufficientEstimated>
  <AmendedSumSufficientEstimated>true</AmendedSumSufficientEstimated>
  <BudgetRound>String content</BudgetRound>
  <BY1>String content</BY1>
  <BY2>String content</BY2>
  <FY1>String content</FY1>
  <FY2>String content</FY2>
  <AmendedFY1>String content</AmendedFY1>
  <AmendedFY2>String content</AmendedFY2>
  <Amendments>String content</Amendments>
  <SubProgramValues>
    <ItemSubProgramWebService>
      <SubProgramName>String content</SubProgramName>
      <SubProgramCode>String content</SubProgramCode>
      <AmendedSubProgramName>String content</AmendedSubProgramName>
      <AmendedSubProgramCode>String content</AmendedSubProgramCode>
      <FY1>String content</FY1>
      <FY2>String content</FY2>
      <AmendedFY1>String content</AmendedFY1>
      <AmendedFY2>String content</AmendedFY2>
      <SumSufficient>true</SumSufficient>
      <AmendedSumSufficient>true</AmendedSumSufficient>
    </ItemSubProgramWebService>
    <ItemSubProgramWebService>
      <SubProgramName>String content</SubProgramName>
      <SubProgramCode>String content</SubProgramCode>
      <AmendedSubProgramName>String content</AmendedSubProgramName>
      <AmendedSubProgramCode>String content</AmendedSubProgramCode>
      <FY1>String content</FY1>
      <FY2>String content</FY2>
      <AmendedFY1>String content</AmendedFY1>
      <AmendedFY2>String content</AmendedFY2>
      <SumSufficient>true</SumSufficient>
      <AmendedSumSufficient>true</AmendedSumSufficient>
    </ItemSubProgramWebService>
  </SubProgramValues>
  <FundSourceValues>
    <ItemFundSourceWebService>
      <FundSourceName>String content</FundSourceName>
      <FundSourceCode>String content</FundSourceCode>
      <FY1>String content</FY1>
      <FY2>String content</FY2>
      <AmendedFY1>String content</AmendedFY1>
      <AmendedFY2>String content</AmendedFY2>
      <SumSufficient>true</SumSufficient>
      <AmendedSumSufficient>true</AmendedSumSufficient>
    </ItemFundSourceWebService>
    <ItemFundSourceWebService>
      <FundSourceName>String content</FundSourceName>
      <FundSourceCode>String content</FundSourceCode>
      <FY1>String content</FY1>
      <FY2>String content</FY2>
      <AmendedFY1>String content</AmendedFY1>
      <AmendedFY2>String content</AmendedFY2>
      <SumSufficient>true</SumSufficient>
      <AmendedSumSufficient>true</AmendedSumSufficient>
    </ItemFundSourceWebService>
  </FundSourceValues>
  <TextValues>
    <ItemText>
      <CustomVetoLabel>String content</CustomVetoLabel>
      <IsVetoed>true</IsVetoed>
      <Order>String content</Order>
      <Text>String content</Text>
      <VetoDate>String content</VetoDate>
    </ItemText>
    <ItemText>
      <CustomVetoLabel>String content</CustomVetoLabel>
      <IsVetoed>true</IsVetoed>
      <Order>String content</Order>
      <Text>String content</Text>
      <VetoDate>String content</VetoDate>
    </ItemText>
  </TextValues>
</ItemDetailsWebService>

The following is an example response Json body:

{
	"SecretariatName":"String content",
	"SecretariatShortName":"String content",
	"ResponsibleAgencyName":"String content",
	"ResponsibleAgencyShortName":"String content",
	"AgencyName":"String content",
	"AgencyNameAbbrev":"String content",
	"AgencyShortName":"String content",
	"ItemNumber":"String content",
	"ProgramName":"String content",
	"AmendedProgramName":"String content",
	"AmendedProgramCode":"String content",
	"NotSetOutItem":true,
	"OmittedItem":true,
	"IsVetoed":true,
	"Governor":"String content",
	"VetoDate":"String content",
	"CustomVetoLabel":"String content",
	"SumSufficientEstimated":true,
	"AmendedSumSufficientEstimated":true,
	"BudgetRound":"String content",
	"BY1":"String content",
	"BY2":"String content",
	"FY1":"String content",
	"FY2":"String content",
	"AmendedFY1":"String content",
	"AmendedFY2":"String content",
	"Amendments":"String content",
	"SubProgramValues":[{
		"SubProgramName":"String content",
		"SubProgramCode":"String content",
		"AmendedSubProgramName":"String content",
		"AmendedSubProgramCode":"String content",
		"FY1":"String content",
		"FY2":"String content",
		"AmendedFY1":"String content",
		"AmendedFY2":"String content",
		"SumSufficient":true,
		"AmendedSumSufficient":true
	}],
	"FundSourceValues":[{
		"FundSourceName":"String content",
		"FundSourceCode":"String content",
		"FY1":"String content",
		"FY2":"String content",
		"AmendedFY1":"String content",
		"AmendedFY2":"String content",
		"SumSufficient":true,
		"AmendedSumSufficient":true
	}],
	"TextValues":[{
		"CustomVetoLabel":"String content",
		"IsVetoed":true,
		"Order":"String content",
		"Text":"String content",
		"VetoDate":"String content"
	}]
}

The following is the response Xml Schema:

<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:complexType name="ItemDetailsWebService">
    <xs:sequence>
      <xs:element minOccurs="0" name="SecretariatName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SecretariatShortName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ResponsibleAgencyName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ResponsibleAgencyShortName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AgencyName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AgencyNameAbbrev" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AgencyShortName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ItemNumber" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="ProgramName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedProgramName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedProgramCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="NotSetOutItem" type="xs:boolean" />
      <xs:element minOccurs="0" name="OmittedItem" type="xs:boolean" />
      <xs:element minOccurs="0" name="IsVetoed" type="xs:boolean" />
      <xs:element minOccurs="0" name="Governor" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VetoDate" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="CustomVetoLabel" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SumSufficientEstimated" type="xs:boolean" />
      <xs:element minOccurs="0" name="AmendedSumSufficientEstimated" type="xs:boolean" />
      <xs:element minOccurs="0" name="BudgetRound" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="BY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="BY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedFY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedFY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Amendments" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SubProgramValues" nillable="true" type="tns:ArrayOfItemSubProgramWebService" />
      <xs:element minOccurs="0" name="FundSourceValues" nillable="true" type="tns:ArrayOfItemFundSourceWebService" />
      <xs:element minOccurs="0" name="TextValues" nillable="true" type="tns:ArrayOfItemText" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ItemDetailsWebService" nillable="true" type="tns:ItemDetailsWebService" />
  <xs:complexType name="ArrayOfItemSubProgramWebService">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ItemSubProgramWebService" nillable="true" type="tns:ItemSubProgramWebService" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfItemSubProgramWebService" nillable="true" type="tns:ArrayOfItemSubProgramWebService" />
  <xs:complexType name="ItemSubProgramWebService">
    <xs:sequence>
      <xs:element minOccurs="0" name="SubProgramName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SubProgramCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedSubProgramName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedSubProgramCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedFY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedFY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SumSufficient" type="xs:boolean" />
      <xs:element minOccurs="0" name="AmendedSumSufficient" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ItemSubProgramWebService" nillable="true" type="tns:ItemSubProgramWebService" />
  <xs:complexType name="ArrayOfItemFundSourceWebService">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ItemFundSourceWebService" nillable="true" type="tns:ItemFundSourceWebService" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfItemFundSourceWebService" nillable="true" type="tns:ArrayOfItemFundSourceWebService" />
  <xs:complexType name="ItemFundSourceWebService">
    <xs:sequence>
      <xs:element minOccurs="0" name="FundSourceName" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FundSourceCode" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="FY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedFY1" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="AmendedFY2" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="SumSufficient" type="xs:boolean" />
      <xs:element minOccurs="0" name="AmendedSumSufficient" type="xs:boolean" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ItemFundSourceWebService" nillable="true" type="tns:ItemFundSourceWebService" />
  <xs:complexType name="ArrayOfItemText">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ItemText" nillable="true" type="tns:ItemText" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfItemText" nillable="true" type="tns:ArrayOfItemText" />
  <xs:complexType name="ItemText">
    <xs:sequence>
      <xs:element minOccurs="0" name="CustomVetoLabel" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="IsVetoed" type="xs:boolean" />
      <xs:element minOccurs="0" name="Order" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="Text" nillable="true" type="xs:string" />
      <xs:element minOccurs="0" name="VetoDate" nillable="true" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ItemText" nillable="true" type="tns:ItemText" />
</xs:schema>

Additional response Xml Schemas:

<xs:schema xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:element name="anyType" nillable="true" type="xs:anyType" />
  <xs:element name="anyURI" nillable="true" type="xs:anyURI" />
  <xs:element name="base64Binary" nillable="true" type="xs:base64Binary" />
  <xs:element name="boolean" nillable="true" type="xs:boolean" />
  <xs:element name="byte" nillable="true" type="xs:byte" />
  <xs:element name="dateTime" nillable="true" type="xs:dateTime" />
  <xs:element name="decimal" nillable="true" type="xs:decimal" />
  <xs:element name="double" nillable="true" type="xs:double" />
  <xs:element name="float" nillable="true" type="xs:float" />
  <xs:element name="int" nillable="true" type="xs:int" />
  <xs:element name="long" nillable="true" type="xs:long" />
  <xs:element name="QName" nillable="true" type="xs:QName" />
  <xs:element name="short" nillable="true" type="xs:short" />
  <xs:element name="string" nillable="true" type="xs:string" />
  <xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte" />
  <xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt" />
  <xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong" />
  <xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort" />
  <xs:element name="char" nillable="true" type="tns:char" />
  <xs:simpleType name="char">
    <xs:restriction base="xs:int" />
  </xs:simpleType>
  <xs:element name="duration" nillable="true" type="tns:duration" />
  <xs:simpleType name="duration">
    <xs:restriction base="xs:duration">
      <xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?" />
      <xs:minInclusive value="-P10675199DT2H48M5.4775808S" />
      <xs:maxInclusive value="P10675199DT2H48M5.4775807S" />
    </xs:restriction>
  </xs:simpleType>
  <xs:element name="guid" nillable="true" type="tns:guid" />
  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>
  <xs:attribute name="FactoryType" type="xs:QName" />
  <xs:attribute name="Id" type="xs:ID" />
  <xs:attribute name="Ref" type="xs:IDREF" />
</xs:schema>

<tns:schema targetNamespace="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://www.w3.org/2001/XMLSchema">
  <tns:element name="schema">
    <tns:complexType />
  </tns:element>
</tns:schema>