VTS Tenant Contacts API
The Tenant Contacts API from VTS — 3 operation(s) for tenant contacts.
The Tenant Contacts API from VTS — 3 operation(s) for tenant contacts.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/vts-tenant-contacts-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: VTS Lease Account Admin Tenant Contacts API
version: v1
description: VTS Lease REST API — the commercial real estate leasing, asset management, and portfolio data surface of the VTS platform. Resources include assets, spaces, leases, deals, deal terms, lease terms, financials, budgets, tenants, buildings, listings, and the Leasing Availability API. Harvested verbatim from the VTS developer portal (readme.vts.com) per-operation OpenAPI fragments.
contact:
name: VTS API Support
url: https://readme.vts.com/
termsOfService: https://www.vts.com/services-terms
servers:
- url: https://api.vts.com
- url: https://sandbox.vts.com
description: Sandbox
security:
- basic_auth: []
tags:
- name: Tenant Contacts
paths:
/api/v1/tenant_contacts:
get:
summary: Fetches Tenant Contacts for a Specific Account
tags:
- Tenant Contacts
security:
- basic_auth: []
parameters:
- name: filter[lease_id]
in: query
required: false
schema:
type: integer
- name: page[size]
in: query
required: false
schema:
type: integer
- name: page[before]
in: query
required: false
schema:
type: string
- name: page[after]
in: query
required: false
schema:
type: string
- name: filter[updated_since]
in: query
schema:
type: string
format: date-time
required: false
description: Only display records that have been modified after the given date/timestamp. Should be in `YYYY-MM-DD HH:MM:SS` (ISO8601) format. (Hours, minutes, and seconds are optional.)
example: '2021-03-15'
responses:
'200':
description: Returns List of Tenant Contacts
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
example: tenant_contacts
id:
type: string
example: '1'
attributes:
type: object
properties:
first_name:
type: string
example: John
description: First name of the contact
last_name:
type: string
example: Doe
description: Last name of the contact
phone:
type:
- string
- 'null'
example: '1234567890'
description: Phone number of the contact
phone_extension:
type:
- string
- 'null'
example: '1234'
description: Phone extension of the contact
email:
type: string
example: johndoe@example.com
description: Email of the contact
company_name:
type:
- string
- 'null'
example: VTS
description: Name of the company the contact belongs to
title:
type:
- string
- 'null'
example: Broker
description: The title of the contact
created_at:
type: string
format: date-time
description: The timestamp when this tenant contact was created
updated_at:
type: string
format: date-time
description: The timestamp when this tenant contact was last updated
phone_type:
type:
- string
- 'null'
description: The type of phone number
type:
type:
- string
- 'null'
example: tenant
enum:
- tenant
- tenant_rep
- broker
- personal
- vendor
- colleague
- partner
description: The type of tenant contact
role:
type:
- string
- 'null'
example: admin
enum:
- c_suite
- leasing
- facilities_operations
- admin
- construction
- sustainability
description: The role of the tenant contact
is_decision_maker:
type: boolean
description: Whether the contact is a decision maker
note:
type:
- string
- 'null'
description: A note about the contact
relationships:
type: object
properties:
tenant:
type: object
properties:
data:
type:
- object
- 'null'
properties:
id:
type: string
example: '12345'
type:
type: string
enum:
- tenants
example: tenants
'403':
description: API not authorized for use
content:
application/json:
schema:
$ref: '#/components/schemas/errors_object'
operationId: get_api-v1-tenant-contacts
/api/v1/tenant_contacts/{id}:
get:
summary: Retrieves specific tenant contacts
description: Contains the tenant contact from your account
tags:
- Tenant Contacts
security:
- basic_auth: []
parameters:
- name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: returns requested account tenant contact if it exists
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
type:
type: string
example: tenant_contacts
id:
type: string
example: '1'
attributes:
type: object
properties:
first_name:
type: string
example: John
description: First name of the contact
last_name:
type: string
example: Doe
description: Last name of the contact
phone:
type:
- string
- 'null'
example: '1234567890'
description: Phone number of the contact
phone_extension:
type:
- string
- 'null'
example: '1234'
description: Phone extension of the contact
email:
type: string
example: johndoe@example.com
description: Email of the contact
company_name:
type:
- string
- 'null'
example: VTS
description: Name of the company the contact belongs to
title:
type:
- string
- 'null'
example: Broker
description: The title of the contact
created_at:
type: string
format: date-time
description: The timestamp when this tenant contact was created
updated_at:
type: string
format: date-time
description: The timestamp when this tenant contact was last updated
phone_type:
type:
- string
- 'null'
description: The type of phone number
type:
type:
- string
- 'null'
example: tenant
enum:
- tenant
- tenant_rep
- broker
- personal
- vendor
- colleague
- partner
description: The type of tenant contact
role:
type:
- string
- 'null'
example: admin
enum:
- c_suite
- leasing
- facilities_operations
- admin
- construction
- sustainability
description: The role of the tenant contact
is_decision_maker:
type: boolean
description: Whether the contact is a decision maker
note:
type:
- string
- 'null'
description: A note about the contact
relationships:
type: object
properties:
tenant:
type: object
properties:
data:
type:
- object
- 'null'
properties:
id:
type: string
example: '12345'
type:
type: string
enum:
- tenants
example: tenants
'403':
description: API not authorized for use
content:
application/json:
schema:
$ref: '#/components/schemas/errors_object'
'404':
description: Requested tenant contact does not exist
content:
application/json:
schema:
$ref: '#/components/schemas/errors_object'
operationId: get_api-v1-tenant-contacts-id
/api/v1/tenants/{tenant_id}/contacts:
get:
summary: Fetches tenant contacts
tags:
- Tenant Contacts
security:
- basic_auth: []
parameters:
- name: tenant_id
in: path
required: true
schema:
type: string
- name: filter[lease_id]
in: query
required: false
schema:
type: string
- name: page[size]
in: query
required: false
schema:
type: integer
- name: page[before]
in: query
required: false
schema:
type: string
- name: page[after]
in: query
required: false
schema:
type: string
- name: filter[updated_since]
in: query
schema:
type: string
format: date-time
required: false
description: Only display records that have been modified after the given date/timestamp. Should be in `YYYY-MM-DD HH:MM:SS` (ISO8601) format. (Hours, minutes, and seconds are optional.)
example: '2021-03-15'
responses:
'200':
description: Returns list of contacts for the tenant
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
type: object
properties:
type:
type: string
example: tenant_contacts
id:
type: string
example: '1'
attributes:
type: object
properties:
first_name:
type: string
example: John
description: First name of the contact
last_name:
type: string
example: Doe
description: Last name of the contact
phone:
type:
- string
- 'null'
example: '1234567890'
description: Phone number of the contact
phone_extension:
type:
- string
- 'null'
example: '1234'
description: Phone extension of the contact
email:
type: string
example: johndoe@example.com
description: Email of the contact
company_name:
type:
- string
- 'null'
example: VTS
description: Name of the company the contact belongs to
title:
type:
- string
- 'null'
example: Broker
description: The title of the contact
created_at:
type: string
format: date-time
description: The timestamp when this tenant contact was created
updated_at:
type: string
format: date-time
description: The timestamp when this tenant contact was last updated
phone_type:
type:
- string
- 'null'
description: The type of phone number
type:
type:
- string
- 'null'
example: tenant
enum:
- tenant
- tenant_rep
- broker
- personal
- vendor
- colleague
- partner
description: The type of tenant contact
role:
type:
- string
- 'null'
example: admin
enum:
- c_suite
- leasing
- facilities_operations
- admin
- construction
- sustainability
description: The role of the tenant contact
is_decision_maker:
type: boolean
description: Whether the contact is a decision maker
note:
type:
- string
- 'null'
description: A note about the contact
relationships:
type: object
properties:
tenant:
type: object
properties:
data:
type:
- object
- 'null'
properties:
id:
type: string
example: '12345'
type:
type: string
enum:
- tenants
example: tenants
'403':
description: API not authorized for use
content:
application/json:
schema:
$ref: '#/components/schemas/errors_object'
'404':
description: Referenced tenant not found
content:
application/json:
schema:
$ref: '#/components/schemas/errors_object'
operationId: get_api-v1-tenants-tenant-id-contacts
components:
schemas:
errors_object:
type: object
properties:
errors:
type: array
items:
type: object
properties:
detail:
type:
- string
- 'null'
securitySchemes:
basic_auth:
type: http
scheme: basic
oauth2:
type: oauth2
description: OAuth 2.0 Authorization Code flow with PKCE (VTS Activate / OIDC).
flows:
authorizationCode:
authorizationUrl: https://sandbox.vts.com/oauth/authorize
tokenUrl: https://sandbox.vts.com/oauth/token
refreshUrl: https://sandbox.vts.com/oauth/token
scopes:
read_write: Read and write access
openid: OpenID Connect
profile: Profile claims
email: Email claim
x-apis-json:
generated: '2026-07-21'
method: searched
source: https://readme.vts.com/reference (per-operation OpenAPI fragments, harvested & merged)