VRPlatformVRPlatform
Partner

/partner/billing

List property-manager teams billed by the authenticated partner for one month in a regional partition. status is effective after applying team and billing-partner subscription state, and capabilities.activate explains whether the team can be activated. Completed months use the latest durable listing fact strictly before the next month and carry the last known fact forward when no mutation occurred during the selected month. Facts preserve the historical listing count, billing-partner assignment, team name, and data region after team deletion. Current months use live active-listing counts. Live non-GL counts use calculated listing status, while GL counts use ownership-period deactivation. Filters run before deterministic sorting, totals, and pagination. Select the partition with x-data-region.

Required scope: teams:read

GET
/partner/billing
X-API-Key<token>

API key provided in dashboard

In: header

Query Parameters

month*string

Month string in format YYYY-MM.

Match^\d{4}-\d{2}$
Formatvrp-month
search?string

Filter by team or company name

status?string
Value in"active" | "inactive" | "onboarding"
partnerId?string
Match^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$
Formatuuid
product?string
Value in"vrtrust" | "vrintegrations"
billingPlan?string
Length1 <= length
sort?string

Sort field; prefix with - for descending order

Default"-created"
Value in"name" | "-name" | "created" | "-created" | "partnerName" | "-partnerName" | "product" | "-product" | "activeListings" | "-activeListings" | "billingPlan" | "-billingPlan"
limit?integer
Default100
Range1 <= value <= 250
page?integer
Range1 <= value <= 9007199254740991
offset?integer
Range0 <= value <= 9007199254740991

Header Parameters

x-data-region?string

Selects the regional data partition for this regional collection read. It does not change the authenticated team context.

Value in"ap" | "crunchy" | "eu" | "hostaway" | "us"

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.vrplatform.app/partner/billing?month=2024-01"
{
  "data": [
    {
      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
      "name": "string",
      "dataRegion": "ap",
      "logo": "string",
      "status": "active",
      "capabilities": {
        "activate": {
          "enabled": true,
          "disabledReasons": [
            "teamBillingSubscriptionInactive"
          ]
        }
      },
      "type": "propertyManager",
      "isOnboarding": true,
      "isBillable": true,
      "isGeneralLedger": true,
      "partner": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "name": "string"
      },
      "billingPartner": {
        "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
        "name": "string"
      },
      "billingCustomerId": "string",
      "billingSubscriptionStatus": "string",
      "intercomId": "string",
      "billingPlan": "string",
      "migratedFromTenantId": "cc45f885-c973-4e0e-8e0d-b63cf61a5091",
      "createdAt": "2024-01-15T12:30:00.000+00:00",
      "cancelledAt": "2024-01-15T12:30:00.000+00:00",
      "activeListings": 9007199254740991
    }
  ],
  "pagination": {
    "limit": 100,
    "page": 1,
    "total": 0,
    "totalPage": 0,
    "nextPage": 0
  }
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "MISDIRECTED_REQUEST",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": {
    "teamId": "a4ede8ba-7c0a-4485-8763-cbd9b282fbec",
    "dataRegion": "ap",
    "apiBaseUrl": "http://example.com"
  }
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}
{
  "code": "AUDIT_CURSOR_EXPIRED",
  "message": "string",
  "links": {
    "docs": "string",
    "schema": "string"
  },
  "issues": [
    {
      "message": "string",
      "path": [
        "string"
      ],
      "schema": "string"
    }
  ],
  "retryable": true,
  "context": null
}