# JamesEdition feed

> Send your listings to JamesEdition and bring its enquiries into your CRM as leads.

JamesEdition is a global marketplace for luxury homes. Sending your listings there is included for every agency on Fondaro: tick JamesEdition on a listing and it goes out in the next collection. Separately, an admin can connect a JamesEdition API token so enquiries from JamesEdition arrive in the CRM as leads.

## Set it up

1. Choose the listings. In the dashboard, tick **JamesEdition** on a listing's **Portals** tab, or send `PUT /properties/:id/publications` with `jamesedition` in `portals` (see [Portal feeds](https://www.fondaro.com/docs/api/properties/portal-feeds.md#choose-a-listings-portals)). There is no feed URL to create or hand over.
2. Wait for a collection. JamesEdition fetches the shared Fondaro feed three times a day, at about 00:11, 08:11 and 16:11 UTC.
3. Optional: bring enquiries in. An admin pastes the agency's JamesEdition API token in **Settings › Integrations › JamesEdition**, or calls the credential route below.

A listing goes out while it is `active`, selected for JamesEdition, of a type JamesEdition takes, and has at least 2 photos (JamesEdition will not publish fewer; the listing shows `no_images` until it has them). Its publication status stops at `in_feed`, because the feed is shared by every agency and a fetch cannot be tied to yours.

The shared feed uses JamesEdition's current format (Multi Office 4.4), so there is nothing for you to change. What carries over:

- **Price.** A listing with no price or no currency goes out as price on request.
- **Reference.** The listing's Fondaro reference (`FDR-…`) is sent as JamesEdition's MLS number, so it appears on enquiries.
- **Amenities.** Pool, sea view, garage, terrace, garden, furnished, air conditioning, lift, beachfront, frontline golf (as golf view), panoramic views and gated complex.
- **Languages.** The languages spoken by your branding are sent as language codes.

| Fondaro type | JamesEdition type |
|---|---|
| `apartment`, `condominium`, `studio` | Apartment |
| `penthouse` | Penthouse |
| `house_detached`, `house_semi_detached`, `house_terraced`, `multi_family_home` | House |
| `townhouse` | Townhouse |
| `land_residential`, `land_commercial`, `land_agricultural`, `land_other` | Land |
| `office`, `retail`, `commercial_other`, `industrial_warehouse`, `industrial_other`, `hospitality`, `other` | Not sent |

## Bring JamesEdition enquiries into the CRM

These routes take a signed-in admin session.

### `PUT /integrations/credentials/james_edition/api_token`

Saves the token, checks it, and starts a first sync in the background.

```bash
curl -X PUT https://api.fondaro.com/integrations/credentials/james_edition/api_token \
  -H "Authorization: Bearer $SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"value":"<your JamesEdition API token>"}'
```

```json
{
  "success": true,
  "connection": { "status": "connected", "checkedAt": "2026-10-02T10:00:00.000Z" }
}
```

After that, Fondaro checks JamesEdition for new enquiries every 15 minutes and creates a lead for each one it has not seen.

### `POST /integrations/credentials/james_edition/sync`

Syncs now. Needs a plan (`402` with `subscription_required` otherwise).

```json
{ "fetched": 12, "created": 3, "skippedDuplicates": 9, "errors": [] }
```

`DELETE /integrations/credentials/james_edition/api_token` disconnects, and `POST /integrations/credentials/james_edition/test` checks the saved token again.

Source: https://www.fondaro.com/docs/api/properties/jamesedition-feed
