# Homify — Wrapped API

> **You are on:** `https://api.beta.paywithlocus.com/api` | [llms.txt](https://beta.paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Discover and explore professional interior designers and architects by searching their profiles, viewing their completed projects, reading client reviews, and browsing design inspiration photos from Homify's curated collection. Access room design categories, magazine articles, DIY guides, and detailed project information to find inspiration and connect with design professionals.

**Category:** Business Directories | **Website:** [homify.com/](https://homify.com/) | **Docs:** [parse.bot/marketplace/deebe501-b363-47b0-b842-aff06770d8c2/homify-com-api](https://parse.bot/marketplace/deebe501-b363-47b0-b842-aff06770d8c2/homify-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.beta.paywithlocus.com/api/wrapped/credits/homify/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get diy guides

List DIY guides with step-by-step instructions, difficulty levels, and cost estimates. Returns paginated project results with full details including steps, materials, and author information.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | string | No | Page number for pagination. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-diy-guides \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<string>"}'
```

### Get magazine article detail

Get full content of a magazine article including title and content sections (text paragraphs and photos). The url_path is obtainable from get_magazine_articles results via the url field.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url_path` | string | Yes | Article URL path (e.g. /ideabooks/9929571/la-camera-da-letto-perfetta-per-un-gamer). Obtainable from get_magazine_articles results via url field. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-magazine-article-detail \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url_path":"<string>"}'
```

### Get magazine articles

List magazine articles with title, excerpt, author, date, and image. Returns paginated results ordered by recency.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | string | No | Page number for pagination. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-magazine-articles \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<string>"}'
```

### Get professional profile

Get the full profile page data of a professional, including JSON-LD structured data and professional info extracted from the page. The url_path is obtainable from search_professionals results via the resourcePath field.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url_path` | string | Yes | Professional URL path (e.g. /professionals/7150862/jb-movers-los-angeles). Obtainable from search_professionals results via resourcePath field. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-professional-profile \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url_path":"<string>"}'
```

### Get professional projects

Get the list of projects for a specific professional. Returns project titles, URLs, and thumbnail images. The /projects suffix is appended automatically to the url_path.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url_path` | string | Yes | Professional URL path (e.g. /professionals/7150862/jb-movers-los-angeles). The /projects suffix is appended automatically. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-professional-projects \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url_path":"<string>"}'
```

### Get professional reviews

Get reviews for a specific professional. Returns an array of reviews with author, body, rating, and date. Returns an empty array if the professional has no reviews.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url_path` | string | Yes | Professional URL path (e.g. /professionals/7150862/jb-movers-los-angeles). The /reviews suffix is appended automatically. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-professional-reviews \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url_path":"<string>"}'
```

### Get project details

Get full details of a project including photos, description, style, and metadata. Project URLs are available from get_professional_projects results via the url field.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `url_path` | string | Yes | Project URL path (e.g. /projects/657639/jb-movers-los-angeles). Obtainable from get_professional_projects results via url field. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-project-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"url_path":"<string>"}'
```

### Get room categories

Get room and style categories for browsing photos. Returns hierarchical room categories (some with sub-items) and style categories, each with IDs usable in search_rooms_photos.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/get-room-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### List professional categories

List all available professional categories grouped by type (e.g. Filter by Type, Handyman, Products for the Home, Construction & Renovation). Each category includes an ID usable in search_professionals.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/list-professional-categories \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### Search professionals

Search for professionals on homify.com with optional query, category, and country filters. Returns paginated results including professional details such as name, city, category, review stats, and sample photos. Use list_professional_categories to discover valid category_id values.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `category_id` | string | No | Professional category ID to filter by (from list_professional_categories). |
| `country` | string | No | Country code for filtering professionals (e.g. US, DE, GB). |
| `page` | string | No | Page number for pagination. |
| `query` | string | No | Search query keyword to filter professionals. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/search-professionals \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"category_id":"<string>","country":"<string>","page":"<string>","query":"<string>"}'
```

### Search rooms photos

Search for rooms and inspiration photos on homify.com. Returns paginated photo results with image URLs and metadata. Use get_room_categories to discover valid room_id and style_id values.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | string | No | Page number for pagination. |
| `query` | string | No | Search query keyword. |
| `room_id` | string | No | Room category ID (from get_room_categories). |
| `style_id` | string | No | Style category ID (from get_room_categories). |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/search-rooms-photos \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<string>","query":"<string>","room_id":"<string>","style_id":"<string>"}'
```

### Search site

Search across professionals and rooms simultaneously. Combines results from both the professionals and rooms APIs into a single response for a unified search experience.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search query keyword. |

```bash
curl -X POST https://api.beta.paywithlocus.com/api/wrapped/credits/homify/search-site \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://beta.paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://beta.paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://beta.paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://beta.paywithlocus.com/agent/index.md): every Locus agent page.