swathapi-com Property API

The Property API from swathapi-com — 1 operation(s) for property.

Operations 1

GET /v1/property Look up one property record by address, lat+lng, or parcel_id (2 credits) #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • 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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/swathapi-com:swathapi-com-property-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

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 Specification

swathapi-com-property-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Swath Property API
  version: '1.0'
  description: 'Verified severe-weather intelligence. Swath detects hail storms from live NEXRAD/MRMS radar and damaging-wind events from measured NWS storm reports, builds verified damage swath polygons, and joins them against parcel data to answer: which properties were hit, and how hard. Authentication: every /v1 endpoint takes `Authorization: Bearer sk_...`. Self-serve keys via POST /v1/signup (free tier: 2 trial credits, 60 requests/min — paid plans from $35/mo). Credit costs per successful call: Swath Report (GET /v1/swaths/{id}/properties) = 1 credit per property returned plus 25 credits per record fetched fresh from the parcel vendor, 10-credit minimum; report quote (GET /v1/swaths/{id}/properties/quote) = 1 credit; property lookup (GET /v1/property) = 2 credits; billing endpoints = 0; everything else = 1 credit. Failed requests are never billed. Paid plans: developer (40,000 credits/mo) and scale (600,000 credits/mo) via POST /v1/billing/checkout.'
servers:
- url: https://swathapi.com
security:
- ApiKeyAuth: []
tags:
- name: Property
paths:
  /v1/property:
    get:
      operationId: lookup_property
      summary: Look up one property record by address, lat+lng, or parcel_id (2 credits)
      description: 'Provide exactly one of: address, lat AND lng, or parcel_id. Costs 2 credits. On the free plan only cached records are returned (a cache miss is a 404 explaining that live vendor coverage requires a paid plan).'
      parameters:
      - name: address
        in: query
        required: false
        schema:
          type: string
        description: Street address, e.g. "1801 N Pearl St, Dallas, TX"
      - name: lat
        in: query
        required: false
        schema:
          type: number
        description: Latitude (use with lng)
      - name: lng
        in: query
        required: false
        schema:
          type: number
        description: Longitude (use with lat)
      - name: parcel_id
        in: query
        required: false
        schema:
          type: string
        description: County parcel id
      responses:
        '200':
          description: Property record
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Property'
        '400':
          description: Missing/invalid lookup parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: 'Missing, invalid, or revoked API key. Fix: pass Authorization: Bearer sk_... (get a key at /v1/signup).'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '402':
          description: 'Monthly credit limit reached (code credits_exhausted). Fix: upgrade via POST /v1/billing/checkout or wait for the monthly reset.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: 'No property record found (on free plan: no cached record)'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Per-minute rate limit for the plan exceeded (code rate_limited). Retry after a short wait.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      tags:
      - Property
components:
  schemas:
    Error:
      type: object
      required:
      - error
      properties:
        error:
          type: object
          required:
          - code
          - message
          properties:
            code:
              type: string
              description: Machine-readable error code, e.g. invalid_request, unauthorized, credits_exhausted, rate_limited, not_found, account_exists, billing_not_configured
            message:
              type: string
            used:
              type: number
              description: Credits used this month (present on credits_exhausted)
            plan:
              type: string
              description: Current plan (present on credits_exhausted)
    Property:
      type: object
      properties:
        id:
          type: string
          description: Property id (prop_...)
        parcel_id:
          type:
          - string
          - 'null'
        address:
          type: string
        city:
          type:
          - string
          - 'null'
        state:
          type:
          - string
          - 'null'
        zip:
          type:
          - string
          - 'null'
        lat:
          type:
          - number
          - 'null'
        lng:
          type:
          - number
          - 'null'
        year_built:
          type:
          - integer
          - 'null'
        sqft:
          type:
          - number
          - 'null'
        roof_material:
          type:
          - string
          - 'null'
          description: Reserved — not populated yet, always null.
        last_roof_permit:
          type:
          - string
          - 'null'
        roof_age_est:
          type:
          - number
          - 'null'
        roof_age_source:
          type:
          - string
          - 'null'
        owner_occupied:
          type:
          - boolean
          - 'null'
        assessed_value:
          type:
          - number
          - 'null'
        vendor:
          type: string
          description: Data source label
        fetched_at:
          type: string
          format: date-time
        cache:
          type: string
          enum:
          - hit
          - miss
          description: Whether this record came from cache or a live vendor fetch
  securitySchemes:
    ApiKeyAuth:
      type: http
      scheme: bearer
      description: 'Swath API key, e.g. Authorization: Bearer sk_live_... Get one at POST /v1/signup or https://swathapi.com/signup'