VTS 360 [OSCRE]
Introduction
This is the central repository for information on exporting executed lease data from your deal pipeline in VTS to your accounting system. On this page, you will find a sample of our XML formatting; a list of elements with description; and tutorials to help you get started with an API integration.
To start using the VTS 360 [OSCRE] API, the API consumer must have an API key and an API secret to authenticate requests. VTS will provide these credentials to authorized API consumers. If you would like to test whether your credentials are valid, please refer to the Authentication section.
Additional Plugin Requirements
In order to use this API with Yardi, client must install plugin 5.0 and do initial setup in Yardi system with help of Yardi account rep.
Requests
The API can be accessed by sending an HTTP request to https://api.vts.com/api/oscre/v1/send_lease_abstract with the Authorization header described in the Authentication section.
curl -u <API_KEY>:<API_SECRET> "https://api.vts.com/api/oscre/v1/send_lease_abstract"
curl -u <API_KEY>:<API_SECRET> "https://sandbox.vts.com/api/oscre/v1/send_lease_abstract"
Make sure to replace <API_KEY> and <API_SECRET> with your API key and API Secret, respectively.
The response will specify how many total pages there are. By default the XML will return with only the first page. You can specify the page number as follows:
curl -u <API_KEY>:<API_SECRET> "https://api.vts.com/api/oscre/v1/send_lease_abstract?page=N"
curl -u <API_KEY>:<API_SECRET> "https://sandbox.vts.com/api/oscre/v1/send_lease_abstract?page=N"
N specifies the page number.
If necessary, you can also choose to query by specific property or deal IDs.
This will return only the information for only the property specified on a single page.
curl -u <API_KEY>:<API_SECRET> "https://api.vts.com/api/oscre/v1/send_lease_abstract?property_ids[]=123&property_ids[]=456"
curl -u <API_KEY>:<API_SECRET> "https://api.vts.com/api/oscre/v1/send_lease_abstract?deal_ids[]=7&deal_ids[]=8&deal_ids[]=9"
curl -u <API_KEY>:<API_SECRET> "https://api.vts.com/api/oscre/v1/send_lease_abstract?deal_stages[]=lease_executed&deal_types[]=new"
Request Parameters
The following parameters can be used to request smaller amounts of data.
All of the below parameters are options, none are required.
The API will only include lease abstract records that have associated terms.
Parameter | Type/Format/Enums | Description |
---|---|---|
date | MM/DD/YYYY YYYY-MM-DD | Returns only deals that were last modified after this date |
property_ids[] | numeric | Returns lease abstract data for records of the specified VTS property id(s); can be an array |
deal_ids[] | numeric | Returns lease abstract data for records of the specified VTS deal id(s); can be an array |
deal_stages[] | string dead_deal idle inquiry lease_executed lease_out legal loi proposal preview prospect touring | Returns lease abstract data for records in the specified VTS deal stage(s); can be an array |
deal_types[] | string new renewal extension expansion termination modification sublease license_agreement storage short_term_lease other relocation rent_review break | Returns lease abstract data for records of the specified VTS deal type(s); can be an array |
charge_units | string $/sf/yr $/sf/mo $/yr $/mo | Returns charge amounts in the given units |
page_size | numeric | Returns the number of lease abstracts specified with the maximum of 10 per page |
page | numeric | Returns lease abstract data on provided page number; if not specified, defaults to 1 |
Status Codes
The following codes can be used to troubleshoot errors you encounter when making an API request.
Code | Description |
---|---|
200 | When blank, either no deals in the lease executed stage (when no parameters used) or deals that meet your request parameters |
200 | When populated, data that meets your request criteria |
401 | Unauthorized credentials, check your API Key and Secret |
403 | Forbidden wrong data, check your Request URL |
404 | Invalid request, check your Request URL |
500 | Internal Server Error on VTS side, our engineering teams have been notified. If you have not been contacted, please reach out to [email protected] |
Elements
LeaseAbstract
Node | Type/Mappings | Description | Example |
---|---|---|---|
TenantDBAName | string | The reported VTS Tenant name | Amazon, Inc. |
TransactionTimestamp DateTime | datetime | Date the deal entered lease executed stage in VTS | 2020-04-18T10:20:30Z |
TypeCode | integer | Mapping of VTS lease type to OSCRE standardized code | 90 |
StatusCode | integer Active: 10 Pending: 20 Holdover: 30 Expired: 40 Inactive: 50 Terminated: 60 | Mapping of deal status to OSCRE standardized code Note: Deal status not supported in VTS; all records hardcoded to pending, '20' | 20 |
StageCode | integer | Mapping of VTS deal stage to OSCRE standardized code | 40 |
Probability | integer | Likelihood of particular deal being executed (0-100) | 80 |
Term Description | string | Notes associated with with the deal | Sync up with team about this proposal |
Reference
Nested under LeaseAbstract
Node | Type | Description | Example |
---|---|---|---|
ID | integer | Unique identifier of the Deal ID in VTS | 12345 |
AllocatedBy | string | Hardcoded to 'VTS' | VTS |
LeaseContractReference
Nested under LeaseAbstract
Node | Type | Description | Example |
---|---|---|---|
ID | integer | Unique identifier of the Proposal ID in VTS | 12345 |
AllocatedBy | string | Hardcoded to 'VTS' | VTS |
MasterLeaseReference
Nested under LeaseAbstract
Node | Type/Enums/Mappings | Description |
---|---|---|
ID | string | Source identifier of the previous/parent lease record (for renewals, etc.) as set by inbound accounting system integration |
AllocatedBy | string | Source system of originating lease identifier |
Categorization
Nested under LeaseAbstract
Provides mapped VTS text values supplementary to OSCRE standardized codes
Node | Type | Description |
---|---|---|
Type | string | Text based identification of category type |
Category | string | Text based identification of category details |
AllocatedBy | string | Hardcoded to 'VTS' |
Option
Nested under LeaseAbstract
Node | Type | Description | Example |
---|---|---|---|
Description | string | Details of option specifying conditions, rates, etc. | Tenant has right depending on actions of tenant in adjacent suite |
EffectiveDate | date | Date option takes effect | 2019-09-01 |
OptionTypeCode | integer | Mapping of VTS option type to OSCRE standardized code | 50 |
OptionByCode | integer | Mapping of the VTS rights holder to OSCRE standardized code | 20 |
EarliestNoticeDate | date | Earliest date tenant can provide notice for exercising an option | 2019-08-01 |
LatestNoticeDate | date | Latest date tenant can provide notice for exercising an option | 2019-08-31 |
LeaseTermNumeric | integer | Length of time option is in effect | 24 |
TermFrequencyCode | integer | Mapping of term length unit to OSCRE standard codes; all records hardcoded as monthly, '60' | 60 |
Charge
Nested under LeaseAbstract
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
ChargeDescription | string | VTS rent type category | Base Rent |
ChargeAmountBasisCode | integer | Mapping of charge unit of measure to OSCRE standardized code | 10 |
ChargeFrequencyCode | integer | Mapping of charge frequency to OSCRE standardized code | 60 |
ChargeType | integer | Mapping of VTS rent type to OSCRE standardized code | 150 |
Schedule
Nested under Charge
Node | Type | Description | Example |
---|---|---|---|
StartDate | date | Date the charge goes into effect | 2019-08-01 |
EndDate | date | Date the charge is no longer in effect | 2019-08-01 |
ChargeAmount
Nested under Charge
Node | Type | Description | Example |
---|---|---|---|
CurrencyCode | string | Mapping of charge currency to OSCRE standardized code | USD |
Amount | numeric | Amount owed by tenant for specific charge | 187.5 |
LeaseChargeAreaMeasure
Nested under Charge
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
Amount | integer | Area measurement for which the charge applies to; used for calculating charge total | 1500 |
UnitOfMeasurementCode | integer | Mapping of units of measure to OSCRE standardized codes | 10 |
SecurityDeposit
Nested under LeaseAbstract
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
SecurityDepositTypeCode | integer | Type of security/tenant risk associated to lease; defaults to 0 | 0 |
SecurityDepositAmount
Nested under SecurityDeposit
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
CurrencyCode | string | Mapping of charge currency to OSCRE standardized code | USD |
Amount | numeric | Amount owed by tenant for specific deposit | 2000.0 |
LeaseDate
Nested under LeaseAbstract
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
Name | string | Informs if the date in nodes is for lease executed, commencement, possession, or expiration | Lease Commencement Date |
EventOrRightTypeCode | integer | Mapping of event type to OSCRE standardized code | 100 |
Description | string | Informs if the date in nodes is for lease executed, commencement, possession, or expiration | Lease Commencement Date |
Date | date | Date of lease event based on code/name | 2019-08-20 |
Term
Nested under LeaseAbstract
Node | Type | Description | Example |
---|---|---|---|
Months | integer | Length of lease | 24 |
Building
Nested under LeaseAbstract
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
Name | string | Building name | The Shoppes at VTS |
Description | string | Building description | Class A office space with several amenities such as rooftop terrace and in building gym. |
StatusCode | integer future: 10 active: 20 ready for disposal: 30 disposed Of: 40 inactive: 50 | Mapping of VTS property status to OSCRE standardized code Note: Building status not supported in VTS; all records hardcoded to active status, '20' | 20 |
TypeCode | string Office/Industrial: '11‑27 25 11' Office/Retail: '11‑27 25 19' Office/Retail/Industrial: '11‑27 25 23' Office: '11‑27 38 00' | Mapping of VTS property type to OSCRE standardized codes | 11-27 25 19 |
Reference
Nested under building
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
ID | string | Source identifier of building/property as set by VTS or inbound accounting system integration | 123456 |
AllocatedBy | string | Source system of building/property identifier | VTS |
Address
Nested under building
Node | Type | Description | Example |
---|---|---|---|
CityName | string | City where building is located | New York |
CountrySubentityName | string | State where building is located | NEW YORK |
CountrySubentityCode | string | OSCRE standard codes for state/country building location | US-NY |
Zone | numeric | Building postal code | 10018 |
Country | string | Two letter abbreviation for country where building is located | US |
AddressLine | string | Street address where building is located | 119 W 40th St |
Unit
Nested under building
Node | Type | Description | Example |
---|---|---|---|
UnitNumber | string | Name, number or identification of unit/suite | A100 |
Reference
Nested under unit
Node | Type/Enums | Description |
---|---|---|
ID | string | Source identifier of unit/suite as set by VTS or inbound accounting system integration |
AllocatedBy | string | Source system of building/property identifier |
AreaMeasurement
Nested under unit
Node | Type/Enums/Mappings | Description | Example |
---|---|---|---|
Amount | integer | Total area of unit | 2000 |
UnitOfMeasurementCode | integer | Mapping of units of measure to OSCRE standardized codes | 10 |
OSCRE Standard Codes & Mappings
Lease Type
VTS Lease Structure | OSCRE Lease Type Name | OSCRE Lease Type Code |
---|---|---|
n/a | Other | 0 |
full service | Full Service Gross | 90 |
modified gross | Modified Gross | 100 |
triple net | NetNetNet | 110 |
n/a | Absolute Net | 120 |
Deal Stage
Note: Both loi & proposal mapped to OSCRE code '70'
VTS Deal Stage Name | OSCRE Deal Stage Name | OSCRE Stage Code |
---|---|---|
dead_deal | Dead | 10 |
idle | Idle | 20 |
initial_inquiry | Initial Inquiry | 30 |
lease_executed | Lease Executed | 40 |
lease_out | Lease Out | 50 |
legal | Legal | 60 |
loi proposal | Letter of Intent.Proposal | 70 |
preview | Preview | 80 |
tenants_in_the_market | Tenants in the market | 90 |
tour | Tour | 100 |
Option Type
*Note:** Relocations use role_type data for mapping to OSCRE code '90' or '100'
VTS Option Type | OSCRE Option Type Name | OSCRE Option Type Code |
---|---|---|
break | Break | 10 |
purchase | Purchase | 20 |
renewal | Renew | 30 |
contraction | Contraction | 40 |
expansion | Expansion | 50 |
rofr | Right of first refusal | 60 |
rofo | Right of first offer | 70 |
rights to terminate | Termination | 80 |
relocation | Landlord Right to Relocate | 90 |
relocation | Tenant Right to Relocate | 100 |
rofn | First negotiation | 140 |
audit rights cap on rates co-tenancy exclusive use generator rights go dark kick out landlord & tenant act 1954 make good must lease other parking radius rent review set off rights signage special provisions storage sublease use | Other | 0 |
n/a | Additional space Holdover Must take space First negotiation Right of Second Refusal | 110 120 130 140 150 |
Option By
*Note:** OSCRE code '30' - 'Either' is not supported. The 'Option By' is supported by 'Termination', 'Co-Tenancy', and 'Contraction' rights objects in VTS.
VTS Rights Holder/Option By | OSCRE Option By Type Name | OSCRE Option By Code |
---|---|---|
Landlord | Landlord | 10 |
Tenant | Tenant | 20 |
Mutual | Both | 40 |
Charge Type
VTS Charge Type Name | OSCRE Charge Type Name | OSCRE Charge Type Code |
---|---|---|
Base Rent | Base Rent Other | 0 |
Operational Expense | Expense Recovery | 150 |
Free Rent | Free Rent | 160 |
Other | Other Rent | 170 |
Real Estate Tax | Tax Recovery | 230 |
N/A | Increases Hotel Rooms Revenue Base Rent Industrial Base Rent Office Base Rent Retail Ground Rent Insurance Claim Income Insurance Recovery Late Fees Marketing Retail Fund Management Fee Miscellaneous Income Admin and Other Fees Other Reimbursement Percentage Rent Parking Rent Storage Rent Telecommunications Rent Security Deposit TI Reimbursement Termination Fees Utilities Reimbursement | 10 20 30 40 50 60 70 80 90 100 110 120 130 140 180 190 200 210 220 240 250 260 |
Sample Response
<SendLeaseAbstractResponse>
<TotalPages>1</TotalPages>
<CurrentPage>1</CurrentPage>
<SendLeaseAbstract>
<LeaseAbstract>
<Reference>
<ID>123456</ID>
<AllocatedBy>VTS</AllocatedBy>
</Reference>
<LeaseContractReference>
<ID>345678</ID>
<AllocatedBy>VTS</AllocatedBy>
</LeaseContractReference>
<MasterLeaseReference/>
<TenantDBAName>Sample Tenant</TenantDBAName>
<TransactionTimestampDateTime>2020-02-19T22:59:35Z</TransactionTimestampDateTime>
<TypeCode>90</TypeCode>
<StatusCode>20</StatusCode>
<StageCode>40</StageCode>
<Probability>85</Probability>
<TermDescription>Sample Description</TermDescription>
<Categorization>
<Type>VTS Deal Stage</Type>
<Category>lease_executed</Category>
<AllocatedBy>VTS</AllocatedBy>
</Categorization>
<Categorization>
<Type>VTS Deal Type</Type>
<Category>new</Category>
<AllocatedBy>VTS</AllocatedBy>
</Categorization>
<Option>
<Description>Just in case</Description>
<EffectiveDate>2019-09-02</EffectiveDate>
<OptionTypeCode>80</OptionTypeCode>
<EarliestNoticeDate>2020-06-01</EarliestNoticeDate>
<LatestNoticeDate>2020-06-30</LatestNoticeDate>
<LeaseTermNumeric/>
<TermFrequencyCode/>
</Option>
<Option>
<Description>TEST Matt 3</Description>
<EffectiveDate>2019-09-01</EffectiveDate>
<OptionTypeCode>50</OptionTypeCode>
<EarliestNoticeDate>2019-08-01</EarliestNoticeDate>
<LatestNoticeDate>2019-08-31</LatestNoticeDate>
<LeaseTermNumeric/>
<TermFrequencyCode/>
</Option>
<Charge>
<ChargeDescription>Base Rent</ChargeDescription>
<Schedule>
<StartDate>2019-08-01</StartDate>
<EndDate>2020-07-31</EndDate>
</Schedule>
<ChargeAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>3125.0</Amount>
</ChargeAmount>
<ChargeAmountBasisCode>10</ChargeAmountBasisCode>
<ChargeFrequencyCode>60</ChargeFrequencyCode>
<ChargeType>0</ChargeType>
<ChargeDay>1</ChargeDay>
<LeaseChargeAreaMeasure>
<Amount>1500</Amount>
<UnitOfMeasurementCode>10</UnitOfMeasurementCode>
</LeaseChargeAreaMeasure>
</Charge>
<Charge>
<ChargeDescription>Base Rent</ChargeDescription>
<Schedule>
<StartDate>2020-08-01</StartDate>
<EndDate>2021-07-31</EndDate>
</Schedule>
<ChargeAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>3187.5</Amount>
</ChargeAmount>
<ChargeAmountBasisCode>10</ChargeAmountBasisCode>
<ChargeFrequencyCode>60</ChargeFrequencyCode>
<ChargeType>0</ChargeType>
<ChargeDay>1</ChargeDay>
<LeaseChargeAreaMeasure>
<Amount>1500</Amount>
<UnitOfMeasurementCode>10</UnitOfMeasurementCode>
</LeaseChargeAreaMeasure>
</Charge>
<Charge>
<ChargeDescription>Free Rent</ChargeDescription>
<Schedule>
<StartDate>2019-08-01</StartDate>
<EndDate>2019-10-31</EndDate>
</Schedule>
<ChargeAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>-3312.5</Amount>
</ChargeAmount>
<ChargeAmountBasisCode>10</ChargeAmountBasisCode>
<ChargeFrequencyCode>60</ChargeFrequencyCode>
<ChargeType>160</ChargeType>
<ChargeDay>1</ChargeDay>
<LeaseChargeAreaMeasure>
<Amount>1500</Amount>
<UnitOfMeasurementCode>10</UnitOfMeasurementCode>
</LeaseChargeAreaMeasure>
</Charge>
<Charge>
<ChargeDescription>Real Estate Tax</ChargeDescription>
<Schedule>
<StartDate>2019-08-01</StartDate>
<EndDate>2021-07-31</EndDate>
</Schedule>
<ChargeAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>187.5</Amount>
</ChargeAmount>
<ChargeAmountBasisCode>10</ChargeAmountBasisCode>
<ChargeFrequencyCode>60</ChargeFrequencyCode>
<ChargeType>230</ChargeType>
<ChargeDay>1</ChargeDay>
<LeaseChargeAreaMeasure>
<Amount>1500</Amount>
<UnitOfMeasurementCode>10</UnitOfMeasurementCode>
</LeaseChargeAreaMeasure>
</Charge>
<Charge>
<ChargeDescription>Other</ChargeDescription>
<Schedule>
<StartDate>2019-08-01</StartDate>
<EndDate>2021-07-31</EndDate>
</Schedule>
<ChargeAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>100.0</Amount>
</ChargeAmount>
<ChargeAmountBasisCode>10</ChargeAmountBasisCode>
<ChargeFrequencyCode>60</ChargeFrequencyCode>
<ChargeType>170</ChargeType>
<ChargeDay>1</ChargeDay>
<LeaseChargeAreaMeasure>
<Amount>1500</Amount>
<UnitOfMeasurementCode>10</UnitOfMeasurementCode>
</LeaseChargeAreaMeasure>
</Charge>
<SecurityDeposit>
<SecurityDepositTypeCode>0</SecurityDepositTypeCode>
<SecurityDepositAmount>
<CurrencyCode>USD</CurrencyCode>
<Amount>20000.0</Amount>
</SecurityDepositAmount>
</SecurityDeposit>
<LeaseDate>
<Name>Lease Commencement Date</Name>
<EventOrRightTypeCode>80</EventOrRightTypeCode>
<Description>Lease Commencement Date</Description>
<Date>2019-08-01</Date>
</LeaseDate>
<LeaseDate>
<Name>Lease Expiration Date</Name>
<EventOrRightTypeCode>90</EventOrRightTypeCode>
<Description>Lease Expiration Date</Description>
<Date>2021-07-31</Date>
</LeaseDate>
<LeaseDate>
<Name>Lease Execution Date</Name>
<EventOrRightTypeCode>100</EventOrRightTypeCode>
<Description>Lease Execution Date</Description>
<Date>2019-08-20</Date>
</LeaseDate>
<LeaseDate>
<Name>Possession Date</Name>
<EventOrRightTypeCode>110</EventOrRightTypeCode>
<Description>Possession Date</Description>
<Date>2019-08-22</Date>
</LeaseDate>
<Term>
<Months>24</Months>
</Term>
<Building>
<Name></Name>
<Reference>
<ID>232423</ID>
<AllocatedBy>VTS</AllocatedBy>
</Reference>
<Reference>
<AllocatedBy/>
<ID/>
</Reference>
<Description></Description>
<Address>
<CityName>New York</CityName>
<CountrySubentityName>NEW YORK</CountrySubentityName>
<CountrySubentityCode>US-NY</CountrySubentityCode>
<Zone>10018</Zone>
<Country>US</Country>
<AddressLine>119 W 40th St</AddressLine>
</Address>
<Unit>
<UnitNumber>test</UnitNumber>
<Reference>
<ID>3161448</ID>
<AllocatedBy>VTS</AllocatedBy>
</Reference>
<Reference>
<AllocatedBy/>
<ID/>
</Reference>
<AreaMeasurement>
<Amount>2000</Amount>
<UnitOfMeasurementCode>10</UnitOfMeasurementCode>
</AreaMeasurement>
</Unit>
<StatusCode>20</StatusCode>
<TypeCode/>
</Building>
</LeaseAbstract>
</SendLeaseAbstract>
</SendLeaseAbstractResponse>
This document is proprietary and confidential. No part of this document may be disclosed in any manner to a third party without the prior written consent of View the Space Inc.
Updated almost 2 years ago