Skip to content

Hartman vREIT XXI, Inc.: filings

Every Hartman vREIT XXI, Inc. annual and quarterly report in the SEC record with the published financial measures it tagged, 29 filings, each linked to its SEC index.

Filings with published measures

Each page shows what one filing reported, as tagged in that filing, with the periods it covered. Later filings can restate a value; the company overview shows the latest-filed value per period.

FormFiledFiscal periodMeasuresFactsSEC accession
10-K2025-08-22fiscal FY 202231640001654948-25-000019
10-Q2022-11-14fiscal Q3 202229880001654948-22-000033
10-Q2022-08-23fiscal Q2 202229880001654948-22-000021
10-Q2022-05-16fiscal Q1 202229620001654948-22-000014
10-K2022-03-30fiscal FY 202132660001654948-22-000008
10-Q2021-11-12fiscal Q3 202129880001654948-21-000043
10-Q2021-08-16fiscal Q2 202129880001654948-21-000033
10-Q2021-05-13fiscal Q1 202126560001654948-21-000022
10-K2021-03-31fiscal FY 202028580001654948-21-000009
10-Q2020-11-12fiscal Q3 202025780001654948-20-000080
10-Q2020-08-14fiscal Q2 202025780001654948-20-000071
10-Q2020-06-08fiscal Q1 202026680001654948-20-000044
10-K/A2020-05-11fiscal FY 201928710001654948-20-000032
10-K/A2020-05-05fiscal FY 201928710001654948-20-000029
10-K2020-04-30fiscal FY 201928710001654948-20-000021
10-Q2019-11-14fiscal Q3 201925730001654948-19-000062
10-Q2019-08-15fiscal Q2 201925730001654948-19-000044
10-Q2019-05-15fiscal Q1 201925550001654948-19-000032
10-K2019-04-16fiscal FY 201827560001654948-19-000025
10-Q2018-11-16fiscal Q3 201825680001654948-18-000052
10-Q2018-08-20fiscal Q2 201825690001654948-18-000036
10-Q2018-05-15fiscal Q1 201825510001654948-18-000027
10-K2018-04-06fiscal FY 201719350001654948-18-000020
10-K2018-04-02fiscal FY 201719350001654948-18-000018
10-Q2018-04-02fiscal Q3 201717320001654948-18-000014
10-Q2017-11-14fiscal Q3 201718330001654948-17-000061
10-Q2017-08-15fiscal Q2 201718310001654948-17-000046
10-Q2017-05-19fiscal Q1 201717230001446687-17-000036
10-K2017-03-31fiscal FY 201612180001654948-17-000023

1 further filing tags fewer than eight published concepts and has no page.

Inspect the source

Entity
Hartman vREIT XXI, Inc. / CIK 0001654948
Captured
2026-09-21T17:23:00.100Z
SEC response SHA-256
2ca0a11d97ab92aeda5052efd81a55a919d098af29d06fc00b6b9c175cde9c36

Current SEC company facts · Download the original response snapshot (gzip) · Download the selected JSON

Every published concept a filing tagged, with the periods it covered, as reported in that filing at capture time. Forms 10-K, 10-K/A, 10-Q, 10-Q/A, 20-F, 20-F/A, 40-F, 40-F/A. A filing page needs at least 8 published concepts. Later filings can restate these values; the company history pages show the latest-filed value per period.

Public company accounting reference, not market prices, returns, an investment recommendation, or ALPHAC performance. Validate a separately constructed return series with the validation API; accounting values are not returns.

Use this in research

A financial period ends before its results become public. Use the filing date as a minimum availability boundary, inspect amendments, and retain the original filing vintage when testing historical signals. This latest-filed selection can contain information unavailable at the time.

These pages do not supply prices, total-return histories, corporate-action adjustments or a tradable universe. Build those inputs separately before evaluating a strategy. A profitable backtest can still reflect selection bias or costs that were left out.

Research methodology · Execution and cost assumptions · Check backtest overfitting

Build with the open-source tools

Use these accounting records as inspectable inputs. When you have constructed a return series, the validation tools can help test its statistical evidence and preserve the result with its limitations.

Read the published dataset with Python
import json
from urllib.request import urlopen

with urlopen("https://canlicapital.com/company-data/0001654948.json") as response:
    record = json.load(response)
print(record["fetched_at"])
print(record["policy"])
for concept in record["concepts"]:
    print(concept["tag"], next(iter(concept["observations"])))