# Rafid Property Compare API

> Rafid Property Compare API is a paid API for AI agents from api.rafidsystem.com, paid per call via x402, $0.03/call, status unknown (last checked 2026-10-10).

Compares 2–20 properties side-by-side by computing gross yield, net yield, payback period, and ranking them by net return

## Facts

- Endpoint: POST https://api.rafidsystem.com/api/v1/x402/property/compare?utm_source=zero.xyz
- Price: $0.03/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-10
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/rafid-property-compare-api-fb128e2a
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_5xRZ3wcFrKT7wihcBgijK

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability rafid-property-compare-api-fb128e2a -d '<json body>'
```

Example prompt: Compare these two properties for me: Property A is worth 85,000 OMR with 7,200 OMR annual rent and no maintenance costs, and Property B is worth 100,000 OMR with 7,000 OMR annual rent and no maintenance costs — which one gives a better net yield?

## When to prefer this

Use this endpoint when an agent needs to objectively rank or compare multiple real estate investment options by financial return metrics (yield, payback) rather than qualitative features. It is ideal when the user has concrete property values and rental figures and needs a structured, sorted output. Prefer this over a generic calculator when you need simultaneous multi-property comparison with ranked output in a single API call.

## Known failure modes

- Fewer than 2 properties supplied — minimum array size is 2
- Missing required fields (propertyValue, annualRent, name) on any property object — returns validation error
- Property value of 0 or below — fails minimum constraint
- Both 'maintenance' and 'maintenanceCost' supplied simultaneously — ambiguous legacy alias conflict
- More than 20 properties in array — exceeds maxItems limit
- Payment failure or insufficient USDC balance — 402 Payment Required before computation runs

## How this service works

Rafid Agent API provides structured intelligence and paid APIs for AI agents across property, company and risk, supplier, finance, document, website, automotive, logistics, recruitment, trading, voice, video and business-planning workflows.

## Output

Returns an array of enriched property objects each containing gross yield %, net yield %, payback years, annual net income, effective annual rent, and annual operating costs, plus a top-level array listing the property names sorted from highest to lowest net yield.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "properties": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "propertyValue",
     "annualRent",
     "name"
    ],
    "properties": {
     "name": {
      "type": "string",
      "maxLength": 120,
      "minLength": 1
     },
     "annualRent": {
      "type": "number",
      "maximum": 1000000000000,
      "minimum": 0
     },
     "maintenance": {
      "type": "number",
      "maximum": 1000000000000,
      "minimum": 0,
      "description": "Legacy alias for maintenanceCost; supply only one"
     },
     "propertyValue": {
      "type": "number",
      "maximum": 1000000000000,
      "minimum": 0.01
     },
     "serviceCharge": {
      "type": "number",
      "maximum": 1000000000000,
      "minimum": 0
     },
     "vacancyRatePct": {
      "type": "number",
      "maximum": 100,
      "minimum": 0
     },
     "maintenanceCost": {
      "type": "number",
      "maximum": 1000000000000,
      "minimum": 0
     },
     "otherAnnualCosts": {
      "type": "number",
      "maximum": 1000000000000,
      "minimum": 0
     }
    },
    "additionalProperties": false
   },
   "maxItems": 20,
   "minItems": 2
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "properties": [
   {
    "name": "A",
    "note": "Calculations only; excludes financing, taxes, transaction fees and capital appreciation.",
    "currency": "OMR",
    "netYield": 8.47,
    "annualRent": 7200,
    "grossYield": 8.47,
    "netYieldPct": 8.47,
    "paybackYears": 11.81,
    "grossYieldPct": 8.47,
    "propertyValue": 85000,
    "annualNetIncome": 7200,
    "grossAnnualIncome": 7200,
    "annualOperatingCost": 0,
    "effectiveAnnualRent": 7200,
    "annualOperatingCosts": 0
   },
   {
    "name": "B",
    "note": "Calculations only; excludes financing, taxes, transaction fees and capital appreciation.",
    "currency": "OMR",
    "netYield": 7,
    "annualRent": 7000,
    "grossYield": 7,
    "netYieldPct": 7,
    "paybackYears": 14.29,
    "grossYieldPct": 7,
    "propertyValue": 100000,
    "annualNetIncome": 7000,
    "grossAnnualIncome": 7000,
    "annualOperatingCost": 0,
    "effectiveAnnualRent": 7000,
    "annualOperatingCosts": 0
   }
  ],
  "sortedByNetYield": [
   "A",
   "B"
  ]
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/rafid-property-compare-api-fb128e2a/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.rafidsystem.com](https://www.zero.xyz/host/api.rafidsystem.com/llms.txt)
