Portfolio Export [Legacy]

❗️

This Portfolio Export API endpoint is deprecated.

11/2021 update:
While there are currently no plans to sunset this API endpoint, no new features will be added to this endpoint as of 11/2021. Please use our next-gen APIs at https://readme.vts.com/reference.

Introduction

This is the central repository for information on exporting data for your office parks, properties, spaces, leases, and terms from VTS. 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 Portfolio Export 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.

Requests

To start the export of a portfolio the API can be accessed by sending an HTTP request to https://app.vts.com/api/portfolio/v1/portfolio_exports with the Authorization header described in the Authentication section (also shown below)

curl -u <API Key>:<API Secret> -X POST https://app.vts.com/api/portfolio/v1/portfolio_exports
curl -u <API Key>:<API Secret> -X POST https://sandbox.vts.com/api/portfolio/v1/portfolio_exports
📘

Make sure to replace <API Key> and <API Secret> with your API key and API Secret, respectively.

The above command returns XML structured like this:

<PortfolioExport>
  <status>submitted</status>
  <jobid>12345</jobid>
</PortfolioExport>

Node

Type

Definition

status

string

Status of the portfolio export that was created:

submitted - waiting to be processed
processing - currently being processed
completed - finished and successful
failed - there was an error with the export

jobid

string

unique identifier of the portfolio export, used to check the export’s status and retrieve data

Portfolio Export Status

To check the status of a portfolio export, use GET to see the results:

curl -u <API Key>:<API Secret> https://api.vts.com/api/portfolio/v1/portfolio_exports/<jobid>
📘

Remember — Replace <API Key>, <API Secret> and <jobid> with actual values

The XML response should be as follows:

<PortfolioExport>
    <jobid>12345</jobid>
    <status>completed</status>
</PortfolioExport>

Portfolio Export Data

To view the data of a completed portfolio export once its status is "completed", run the below command. A sample of the response can be found at the end of this page.

🚧

You may only view the data of a portfolio export once it is complete.

curl -u <API Key>:<API Secret> https://api.vts.com/api/portfolio/v1/portfolio_exports/<jobid>/data
curl -u <API Key>:<API Secret> https://sandbox.vts.com/api/portfolio/v1/portfolio_exports/<jobid>/data

Status Codes

The VTS API uses the following status and error codes:

Status

Description

200

Success – The request was successful

202

Accepted – The request was accepted and will be processed

401

Unauthorized - incorrect credentials

403

Forbidden – API Key and/or API Secret is missing or incorrect

404

Not Found – The specified resource could not be found

500

Internal Server Error – We had a problem with our server and have been notified. Try again later

Portfolio Export Data Elements

Office Parks

Node

Type

Description

Name

Text

Name of the Office Park

SourceID

Text

SourceID of the Office Park

Properties

Array

An array of the Properties' sourceids that exist under this Office Park

Properties

Node

Type

Description

Id

Integer

VTS assigned unique ID for that building

ClientCompanyId

Integer

VTS assigned client company ID for that building

ClientCompanyName

String

Client Company that this building belongs to.

Address

Array of XML string nodes

String nodes that break down the address of this property into City, State, Street, PostalCode, and Country

BuildingClass

String

Class of the building

CreatedDate

DateTime

VTS generated creation time of this property object in the database

UpdatedAt

DateTime

VTS generated timestamp of when the property was last updated (either by a user or by system background jobs)

Fund

String

What fund this building belongs to

Description

Text

Description of the building

HasOffice

Boolean

Whether or not this building has Office-type space. User generated.

HasRetail

Boolean

Whether or not this building has Retail-type space. User generated

HasIndustrial

Boolean

Whether or not this building has Industrial-type space. User generated.

LeasingCompany

String

User-generated string for the company responsible for leasing this building.

ManagingCompany

String

User-generated string for the company responsible for managing this building

Number of floors

Integer

User-generated field for how many floors this building has.

Owner

String

User-generated field for the owner of this building

RBA

Integer

User-generated field for the rentable building area

Submarket

String

User-assigned field for the submarket of this building.

Market

String

User-assigned field for the market of this building.

VacantArea

String

VTS-generated amount for how much area there is vacant in the building, based on the RBA of your building less the sum of the occupied spaces' areas.

Removed

Boolean

Whether or not this building is removed from the VTS app.

Floors

XML Array

XML array of the floor objects in VTS. See below.

Spaces

XML Array

XML array of the space objects (and their leases) in VTS. See below.

Floors

Node

Type

Description

FloorName

String

The name of the floor as appears on the stacking plan

FloorPosition

Integer

The order of the floor as it appears on the stacking plan

RentableArea

Integer

The total area of the floorplate as it appears on the stacking plan

Spaces

Node

Type

Description

AvailabilityDate

Date

When the space is available

AvailabilityType

Enum

One of either:

  • immediate
  • arranged
  • specified
  • not available

Description

Text

Description of the space

FloorComposition

Enum

One of either:

  • partial
  • entire

InternalNotes

Text

Internal notes on the space

ListingDate

Date

User-generated for when the space was listed on

MaximumContiguous

Integer

Maximum contiguous area of this suite

MinimumDivisible

Integer

Minimum divisible area of this suite

PriceIsNegotiable

Boolean

Whether or not the price is negotiable

Removed

Boolean

Whether or not this suite is removed

RentalPayType

Enum

What unit the marketed rent is being listed at

RentalRateMax

Decimal

Max rental rate it is being listed as

RentalRateMin

Decimal

Minimum rental rate it is being listed as

RemeasuredSpaceAvailable

Integer

Remeasured space available

SourceID

String

System-generated sourceID for this suite

Suite

String

Name of the space

TransactionType

Enum

Whether this space is for:

  • sale
  • lease

VacantOnDate

Date

The user-generated date for when this suite is vacant

MarketRent

Decimal

User-generated field to memorialize the comparable market rent for this suite.

CreatedAt

DateTime

System-generated datetime for when this space as created

UpdatedAt

DateTime

System-generated datetime for when this space was last updated. Includes user updates as well as system background jobs.

TokenizedID

String

Unique tokenized string slug for this space

PublicFlag

Boolean

Whether or not this space's marketing page is listed on the VTS marketing page

SpaceType

Enum

The type of space this is. Options are:

  • Amenities
  • Education
  • Flex
  • Industrial / Warehouse
  • Lab
  • Leisure
  • Manufacturing
  • Medical Office
  • Office
  • Other
  • Parking
  • Residential
  • Restaurant
  • Retail
  • Rooftop
  • Storage
  • Telecom

Lease

XML Array

The current in-place Lease on this space.

Leases

Node

Type

Description

LeaseExpirationDate

Date

When the Lease will expire

LeaseCommencementDate

Date

When the Lease commenced

ExecutionDate

Date

When the Lease was executed

LeaseTerm

Integer

How many months the lease is for (user generated)

LeaseStructure

Enum

Structure of the lease.

  • Triple Net
  • Full Service Gross
  • Modified Gross

SourceId

String

Client system-generated sourceId of the lease.

Industry

Enum

The industry of the lease. See Industry section under Import API for full list

CreatedAt

DateTime

System-generated datetime for when the Lease was created

UpdatedAt

DateTime

System-generaated datetime for when the Lease was last updated (either by user or by system background jobs)

Rights

XML Array

XML Array of <Right> nodes. See below.

LeaseDealTerms

XML Array

XML Array of <LeaseDealTerm> nodes. See below.

Tenant

XML Nodes

XML node of the VTS-ID and Company name of the actual tenant on this lease.

ID

String

VTS generated identification number for the specific lease

Rights

Node

Type

Description

Type

Enum

The type of Right this Lease has. One of:

  • audit rights
  • break
  • cap on rates
  • contraction
  • co-tenancy
  • exclusive
  • exclusive use
  • expansion
  • generator rights
  • go dark
  • kick out
  • landlord & tenant act 1954
  • make good
  • must lease
  • other
  • parking
  • purchase
  • radius
  • relocation
  • renewal
  • rent review
  • rights to terminate
  • rofn
  • rofo
  • rofr
  • set off rights
  • signage
  • special provisions
  • storage
  • sublease
  • use

Description

Text

Description set on the Right

EffectiveDate

Date

When the Right is effective

NoticeStartDate

Date

First day notice can be given (if applicable)

NoticeEndDate

Date

Last day notice can be given (if applicable)

RoleType

Enum

One of either tenant or landlord. Only applicable for certain rights.

Fee

Integer

Fee that must be paid. Typically only applicable for terminations

RateType

Enum

One of

  • % of FMV
  • $/sf

RateNote

String

Note on the Rate

MinSqFt

Integer

Minimum square footage. Applicable for certain Rights.

MaxSqFt

Integer

Maximum square footage. Applicable for certain Rights.

TenantImprovement

Decimal

Tenant Improvement on the Right. Typically applicable for Expansion.

ExpansionEndDate

Date

Last date for Expansion

Targets

XML array

Node describing which target spaces/floors/properties this right can target. Typically targeting is done by Object SourceID.

LeaseDealTerms

Node

Type

Description

RentableArea

Integer

Area of the space that the individual lease deal term covers

SecurityDeposit

Decimal

Amount of Security deposit on that lease deal term

NEROverride

Decimal

Overriden NER of the Lease Deal Term

MiscDescription

Text

Description on that lease deal term

SourceID

String

Identifier used by VTS for integrated data

IsMonthToMonth

Boolean

Whether or not this lease term is in a month to month status

MoveOutDate

Date

The move out date for this lease

Retail

XML Array

XML Array with Retail-specific fields for retail lease terms

BaseRents

XML Array

XML Array of all BaseRents as part of this lease term

FreeRents

XML Array

XML Array of all FreeRents as part of this lease term

OpExs

XML Array

XML Array of all OpExs as part of this lease term

RealEstateTaxes

XML Array

XML Array of all RealEstateTaxes as part of this lease term

OtherRevenues

XML Array

XML Array of all OtherRevenue as part of this lease term

Individual <BaseRent> nodes

Node

Type

Description

StartDate

Date

Starting date of the rent schedule

EndDate

Date

Ending date of the rent schedule

Amount

Decimal

Amount of rent for that period

Units

string

What unit the amount of rent is in.

FreeRent

Node

Type

Description

StartDate

Date

Starting date of the free rent

EndDate

Date

Ending date of the free rent

Amount

Decimal

Amount of free rent

Units

string

What unit the amount of free rent is in.

FreeRentType

string

Type of free rent. Either gross or net

OpEx

Node

Type

Description

StartDate

Date

Starting date of the expense period

EndDate

Date

Ending date of the expense period

Amount

decimal

Amount of the Operational Expense

Units

string

What unit the amount of rent is in.

RealEstateTax

Sample Response

<?xml version="1.0" encoding="UTF-8"?>
<PortfolioExport>
    <jobid>7967180d445af95d</jobid>
    <PortfolioData>
        <OfficeParks>
            <OfficePark>
                <Name>Parkside Terrace</Name>
                <SourceID/>
                <CreatedDate>2014-03-13T01:01:56Z</CreatedDate>
                <Properties>
                    <SourceId>ABC123</SourceId>
                    <SourceId>XYZ456</SourceId>
                    <SourceId>...</SourceId>
                </Properties>
            </OfficePark>
            <OfficePark>
                ...
            </OfficePark>

        </OfficeParks>
        <Properties>
            
            <Property>
                <Id>15483</Id>
                <ClientCompanyID>23</ClientCompanyID>
                <ClientCompanyName>VTS Sales Demo Account</ClientCompanyName>
                <SourceID>ABC123</SourceID>
                <Name>Parkside Place</Name>
                <Address>
                    <City>Dallas</City>
                    <State>TX</State>
                    <Street1>1717 Main Street</Street1>
                    <PostalCode>75201</PostalCode>
                    <Country>United States</Country>
                </Address>
                <BuildingClass>A</BuildingClass>
                <CreatedDate>2016-02-05T13:22:33Z</CreatedDate>
                <UpdatedAt>2017-06-14T14:42:02Z</UpdatedAt>
                <Fund/>
                <Description>Parkside is the ultimate location for both work and play.</Description>
                <HasOffice>true</HasOffice>
                <HasRetail>false</HasRetail>
                <HasIndustrial>false</HasIndustrial>
                <LeasingCompany/>
                <ManagingCompany>LPC Realty Advisors</ManagingCompany>
                <NumberOfFloors>15</NumberOfFloors>
                <Owner/>
                <RBA>198000</RBA>
                <Submarket/>
                <Market>south</Market>
                <VacantArea>78665</VacantArea>
                <LeaseRollArea>69236</LeaseRollArea>
                <SpaceAvailable>13810</SpaceAvailable>
                <OfficeParkID/>
                <YearBuilt>1984</YearBuilt>
                <TokenizedID>parkside-place-1717-main-street</TokenizedID>
                <LeasingActivityEnabled>true</LeasingActivityEnabled>
                <OccupiedSquareFeet>119335</OccupiedSquareFeet>
                <VacancyRate>0</VacancyRate>
                <Removed>false</Removed>
                <Floors>
                    <Floor>
                        <FloorName>1</FloorName>
                        <FloorPosition>1</FloorPosition>
                        <RentableArea>16500</RentableArea>
                    </Floor>
                    <Floor>
                        <FloorName>2</FloorName>
                        <FloorPosition>2</FloorPosition>
                        <RentableArea>16500</RentableArea>
                    </Floor>
                    
                    <Floor>
                        ...
                    </Floor>

                </Floors>
                <Spaces>
                    
                    <Space>
                        <AvailabilityDate>2017-01-01</AvailabilityDate>
                        <AvailabilityType>immediate</AvailabilityType>
                        <Description>Generic office space</Description>
                        <FloorComposition>partial</FloorComposition>
                        <FloorName>2</FloorName>
                        <FloorPosition>2</FloorPosition>
                        <InternalNotes>Needs renovation</InternalNotes>
                        <ListingDate>2017-01-01</ListingDate>
                        <MaximumContiguous>10000</MaximumContiguous>
                        <MinimumDivisible>5000</MinimumDivisible>
                        <OccupancyStatus>vacant</OccupancyStatus>
                        <PriceIsNegotiable>false</PriceIsNegotiable>
                        <Removed>false</Removed>
                        <RentalPayType>psf_year</RentalPayType>
                        <RentalRateMax>17.5</RentalRateMax>
                        <RentalRateMin>16.5</RentalRateMin>
                        <RemeasuredSpaceAvailable>9000</RemeasuredSpaceAvailable>
                        <SourceID>ABC123~201B</SourceID>
                        <SpaceAvailable>9668</SpaceAvailable>
                        <SpaceCondition>pre-existing</SpaceCondition>
                        <Suite>201B</Suite>
                        <TransactionType>lease</TransactionType>
                        <VacantOnDate>2016-12-31</VacantOnDate>
                        <MarketRent>17.0</MarketRent>
                        <CreatedAt>2016-02-05T14:03:42Z</CreatedAt>
                        <UpdatedAt>2016-05-16T08:31:06Z</UpdatedAt>
                        <TokenizedID>parkside-place-1717-main-street-2nd-floor-unit-201B-aa189423ae</TokenizedID>
                        <PublicFlag>false</PublicFlag>
                        <SpaceType>office</SpaceType>
                        <Lease>
                            <LeaseExpirationDate>2027-08-31</LeaseExpirationDate>
                            <LeaseCommencementDate>2017-03-01</LeaseCommencementDate>
                            <ExecutionDate>2017-01-31</ExecutionDate>
                            <LeaseTerm>126</LeaseTerm>
                            <LeaseStructure>triple net</LeaseStructure>
                            <SourceID/>
                            <Industry>retail</Industry>
                            <CreatedAt>2017-02-17T19:20:38Z</CreatedAt>
                            <UpdatedAt>2017-02-17T19:20:38Z</UpdatedAt>
                            <Rights>
                                <Right>
                                    <Type>rofr</Type>
                                    <Description>This is a right of first refusal</Description>
                                    <EffectiveDate>2016-01-01</EffectiveDate>
                                    <NoticeStartDate>2017-01-01</NoticeStartDate>
                                    <NoticeEndDate>2017-03-01</NoticeEndDate>
                                    <RoleType/>
                                    <Fee/>
                                    <Term/>
                                    <RateType>fixed</RateType>
                                    <RateNote/>
                                    <MinSqFt/>
                                    <MaxSqFt/>
                                    <TenantImprovement/>
                                    <ExpansionEndDate/>
                                    <Targets>
                                        <Target_Properties>
                                            <Target_Property>
                                                <TargetSourceID>XYZ456</TargetSourceID>
                                                <EntireBuilding>false</EntireBuilding>
                                                <Target_Floors/>
                                                <Target_Spaces>
                                                    <TargetSourceID>XYZ456~552A</TargetSourceID>
                                                </Target_Spaces>
                                            </Target_Property>
                                        </Target_Properties>
                                    </Targets>
                                </Right>
                                
                                <Right>
                                    ...
                                </Right>

                            </Rights>
                            <LeaseDealTerms>
                                <LeaseDealTerm>
                                    <RentableArea>9668</RentableArea>
                                    <SecurityDeposit/>
                                    <NEROverride/>
                                    <MiscDescription/>
                                    <SourceID/>
                                    <Retail>
                                        <AnnualSalesGrowthRate/>
                                        <PercentRate/>
                                        <EstimatedSales/>
                                        <UnnaturalBreakpoint/>
                                    </Retail>
                                    <BaseRents>
                                        <BaseRent>
                                            <StartDate>2017-03-01</StartDate>
                                            <EndDate>2018-02-28</EndDate>
                                            <Amount>20947.33</Amount>
                                            <Units>month</Units>
                                        </BaseRent>
                                        <BaseRent>
                                            <StartDate>2018-03-01</StartDate>
                                            <EndDate>2019-02-28</EndDate>
                                            <Amount>21954.42</Amount>
                                            <Units>month</Units>
                                        </BaseRent>
                                        <BaseRent>
                                            <StartDate>2019-03-01</StartDate>
                                            <EndDate>2020-02-29</EndDate>
                                            <Amount>22961.5</Amount>
                                            <Units>month</Units>
                                        </BaseRent>
                                        <BaseRent>
                                            ...
                                        </BaseRent>
                                    </BaseRents>
                                    <FreeRents>
                                        <FreeRent>
                                            <StartDate>2017-03-01</StartDate>
                                            <EndDate>2017-08-31</EndDate>
                                            <Amount>-26587.0</Amount>
                                            <Units>month</Units>
                                            <FreeRentType>net</FreeRentType>
                                            <Percentage>100.0</Percentage>
                                        </FreeRent>
                                        <FreeRent>
                                            ...
                                        </FreeRent>
                                    </FreeRents>
                                    <OpExs>
                                        <OpEx>
                                            <StartDate>2017-03-01</StartDate>
                                            <EndDate>2027-08-31</EndDate>
                                            <Amount>-1611.33</Amount>
                                            <Units>month</Units>
                                            <LeaseType/>
                                            <Description/>
                                        </OpEx>
                                    </OpExs>
                                    <RealEstateTaxes>
                                        <RealEstateTax>
                                            <StartDate>2017-03-01</StartDate>
                                            <EndDate>2027-08-31</EndDate>
                                            <Amount>-4028.33</Amount>
                                            <Units>month</Units>
                                            <LeaseType/>
                                            <Description/>
                                        </RealEstateTax>
                                    </RealEstateTaxes>
                                    <OtherRevenues/>
                                </LeaseDealTerm>
                            </LeaseDealTerms>
                            <Tenant>
                                <Id>408320</Id>
                                <CompanyName>Amazon, Inc</CompanyName>
                            </Tenant>
                        </Lease>
                    </Space>
                    
                    <Space>
                        ...
                    </Space>
                </Spaces>
            </Property>
            

            <Property>
                ...
            </Property>
        </Properties>
    </PortfolioData>
</PortfolioExport>

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.


Interested in using our Next-Generation API Suite? Request Access by emailing [email protected]