Discover/Saga API
live

Saga APIsaga.hamburg

Search for available commercial office spaces, apartments, and parking spots offered by SAGA Hamburg housing company. Find current listings and filter by property type to discover your next rental home or workspace in Hamburg.

This API takes change requests — .
Endpoint health
monitored
search_offices
Checks pendingself-healing
Endpoints
1
Updated
2h ago
This call costs2 credits / call— charged only on success
Try it
Property category to search.
api.parse.bot/scraper/8fe7e14d-e42e-45e8-abd3-c3eb2b016d04/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/8fe7e14d-e42e-45e8-abd3-c3eb2b016d04/search_offices?category=OFFICE' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace saga-hamburg-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: SAGA Hamburg property search — bounded, re-runnable; every call capped."""
from parse_apis.saga_hamburg_api import Saga, Category, InvalidCategory

client = Saga()

# Search for commercial/office listings (the default category).
for listing in client.listings.search(category=Category.OFFICE, limit=3):
    print(listing.title, listing.district, listing.total_rent_eur)

# Take one listing to inspect its details.
office = client.listings.search(category=Category.OFFICE, limit=1).first()
if office:
    print(office.address, office.area_m2, office.available_from)
    print(f"Location: {office.latitude}, {office.longitude}")

# Typed error: catch invalid category input.
try:
    client.listings.search(category=Category.PARKING, limit=1).first()
except InvalidCategory as e:
    print(f"bad category: {e.category}")

print("exercised: listings.search")
All endpoints · 1 totalmissing one? ·

Search for available property listings in Hamburg by category. Returns all currently listed properties including offices, apartments, or parking spots with address, rent, area, and availability details. Results are returned in a single page (no pagination).

Input
ParamTypeDescription
categorystringProperty category to search.
Response
{
  "type": "object",
  "fields": {
    "total": "number of listings found",
    "category": "selected category code",
    "listings": "array of property listing objects"
  },
  "sample": {
    "data": {
      "total": 11,
      "category": "OFFICE",
      "listings": [
        {
          "title": "Existenzgründerbüro 3 - 1 Zimmer",
          "address": "Havighorster Redder 39, 22115 Hamburg",
          "area_m2": "24,16",
          "district": "Billstedt",
          "latitude": "53.5277585",
          "longitude": "10.1477334",
          "detail_path": "/immobiliensuche/immo-detail/6184/existenzgrunderburo-3-1-zimmer",
          "available_from": "2026-01-01",
          "total_rent_eur": "483,03"
        }
      ]
    },
    "status": "success"
  }
}

About the Saga API

The Saga API on Parse exposes 1 endpoint for the publicly available data on saga.hamburg. Calls return JSON over HTTPS and are billed per successful response.

Pin a release with the API-Snapshot-Version header so canonical updates don't silently change your contract.