Skip to content

Agencies

Once the client has registered, he can start to synchronize those properties that require a virtual tour. To add a registered client’s property you must provide a property identifier and some basic data. You can also include other optional data to improve the browsing experience within a virtual tour.

If the request is completed successfully the API will return the Floorfy ​id_floorfy​ identifier of the property which you will need to save and link to the property you have just added.

Below are the URL and the parameters to register a property. The parameters must be sent in a JSON object to the URL indicated in the format shown in the example.

Terminal window
https://api.floorfy.com/api/property/add?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
id_originStringID origin of the property.Required
property_typeIntegerIdentifier of the type of property. Floorfy supports the following property types:
  • 1: House
  • 2: Flat
  • 3: Apartment
  • 4: Duplex
  • 5: Local
  • 6: Nave
  • 7: Office
  • 8: Garage
  • 9: Studio/Loft
  • 10: Penthouse
  • 11: Urban
  • 12: Urbanizable
  • 13: Not urbanizable
  • 14: Parking
  • 15: Storage room
  • 16: Living place
Others: If you need other types of properties please contact Floorfy (info@floorfy.com)
Optional
contract_typeIntegerAd/contract type identifier. Floorfy supports the following ad/contract types:
  • 1: Sale
  • 2: Renting
  • 3: Sold
  • 4: Rented
Others: If you need other types of ads/contracts please contact Floorfy (info@floorfy.com)
Optional
property_statusIntegerIdentifier of the state of the property. A property can have these two types of status:
  • 1: Active
  • 0: Archived
Optional
amountFloatPrice of the property or monthly rent.Optional
titleStringTitle of the property or of the advertisement.Optional
descriptionStringTextual description of the property or of the advertisement. Character limit: 4096.Optional
roomsIntegerNumber of rooms.Optional
bathroomsIntegerNumber of bathrooms.Optional
living_areaFloatTotal square meters of living space.Optional
total_areaFloatTotal square meters of the property.Optional
locationObjectList of location data:
  • city (String): Property city. [Required]
  • address (String): Street of the property.[Optional]
  • province (String): Province where the property is located. [Optional]
  • number (Integer): Number of the property in the street. [Optional]
  • door (Integer): Door number. [Optional]
  • floor (Integer): Floor number. [Optional]
Required
photographerStringEmail of the photographer (Floorfy’s username) that you wish to associate with the property. If there is an associated photographer, the property will only be accessible to this photographer; otherwise, it will be accessible to all the photographers of the agency that owns the property.Optional
time_typeStringbefore for initial visits, after for final visits.Optional
agentIntegerID of the agent to whom the property will be assigned.Optional
year_buildingIntegerProperty construction year.Optional
facilitiesArrayFacilities available for the property:
  • 1: Garage
  • 2: Air conditioning
  • 3: Elevator
  • 4: Pool
  • 5: Gym
  • 6: Heating
  • 7: Television
  • 8: Security
  • 9: Garden
  • 10: Internet
  • 11: Telephone
  • 12: Community Area
  • 13: Adapted
  • 14: Furnished kitchen
  • 15: Storage room
  • 16: Doorman
  • 17: Terrace
  • 18: New housing
  • 19: Physical doorman
  • 20: Automatic doorman
  • 21: Community pool
  • 22: Private pool
  • 23: Community garden
  • 24: Private garden
  • 25: Balcony
  • 26: Parking
  • 27: Individual heating
  • 28: Central heating
  • 29: Built-in wardrobes
  • 30: Furnished
  • 31: Semi-furnished
  • 32: Fire detector
  • 33: Thermal insulation
  • 34: Jacuzzi
  • 35: Pantry
  • 36: Indoor parking
  • 37: Outdoor parking
  • 38: Barbecue
  • 39: Domotized
  • 40: Armored door
  • 41: Laundry room
  • 42: Stairs
  • 43: Lobby
  • 44: Pets allowed
  • 45: Solarium
  • 46: Solar panels
  • 47: Sauna
  • 48: New construction
  • 49: Energy certificate
  • 50: Alarm system
  • 51: Concierge service
  • 52: Certificate of occupancy
Others: If you need other types of properties, please contact Floorfy (info@floorfy.com)
Optional
id_folderIntegerFolder ID where the property will be saved. If not provided, the property will not be assigned to any folder.Optional
id_watermarkIntegerWatermark ID to assign to the property. If an integer ID is provided and it exists, this watermark will be assigned to the property. If null is sent, any custom watermark assigned to the property will be removed, and the property will revert to using the agency’s default generic watermark.Optional
Terminal window
https://api.floorfy.com/api/property/add?tk=a_5723h3278
{
"data": {
"id_origin": "991121",
"property_type": 2,
"contract_type": 1,
"property_status": 1,
"amount": 3132,
"title": "Piso en venta en buen estado con vistas al mar",
"description": "Este piso está situado enfrente del paseo marítimo...",
"rooms": 4,
"bathrooms": 2,
"living_area": 323,
"total_area": 1132,
"location": {
"city": "Hospitalet del Llobregat",
"address": "Rambla generalitat",
"province": "Barcelona",
"number": 32,
"door": 1,
"floor": 4,
},
"photographer": "photographer@floorfy.com",
"time_type": "after",
"agent": 553,
"facilities": [1, 2, 38, 50],
"id_folder": 456,
"id_watermark": 35
}
}

Get details from a specific property

Terminal window
https://api.floorfy.com/api/properties/{id}?tk={tk_agency}
FieldTypeDescription
statusIntegerResult of the request:
0: Success
1: Error
messageStringInformative message about the result of the request.
idStringFloorfy identifier of the property.
tourStringURL of the property.
idFloorfyIntegerFloorfy identifier of the property.
youtube_urlStringURL of the video on YouTube.
video_urlStringURL of the video on Floorfy.
imagesListList of URLs with the flat images of the property.
imgs_watermarkListList of URLs with the flat watermark images of the property.
bounded_floorplanStringURL of the PDF of the bounded floorplan.
scaled_floorplanStringURL of the scaled floorplan PDF.
uploaded_floorplanStringURL of the uploaded floorplan PDF.
scaled_floorplan_imagesArrayArray of scaled floorplan images.
bounded_floorplan_imagesArrayArray of bounded floorplan images.
uploaded_floorplan_imagesArrayArray of uploaded floorplan images.
last_upload_dateDateDate of the last image uploaded to the property.
is_publishedBooleanIndicates if the tour is published.
property_typeIntegerType of the property.
contract_typeIntegerContract type.
amountIntegerCost of the property.
titleStringProperty title.
descriptionStringExplanation of the property.
roomsIntegerNumber of rooms.
bathroomsIntegerNumber of bathrooms.
living_areaIntegerHouse area in square meters.
total_areaIntegerTotal area of the property in square meters.
property_statusIntegerStatus of the property:
1: Property is active
0: Property is archived
versionIntegerProperty version.
locationObjectList of location data:
  • city (String): Property city.
  • address (String): Street of the property.
  • number (Integer): Number of the property in the street.
  • door (Integer): Door number.
  • floor (Integer): Floor number.
extrasObjectList of extra features the property has:
  • photographer (String): Email of the assigned photographer.
id_folderIntegerID of the folder where the property is saved. Can be null.
id_watermarkIntegerWatermark ID assigned to the property. Can be null.
Terminal window
https://api.floorfy.com/api/properties/114?tk=da3d34dew5
{
"status": 0,
"message": "Property exists",
"id": "114",
"tour": "https://floorfy.com/tour/114",
"youtube_url": "https://www.youtube.com/watch?v=ZLTM0wV0rtk",
"video_url": "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.mp4",
"images": {
0: "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.jpg",
1: "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.jpg",
2: "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.jpg"
},
"imgs_watermark": {
0: "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.jpg",
1: "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.jpg",
2: "https://floorfymdpd.s3-eu-west-1.amazonaws.com/path/name.jpg"
},
"bounded_floorplan": "https://floorfymdpd.s3.eu-west-1.amazonaws.com/path/name_acotado.pdf",
"scaled_floorplan": "https://floorfymdpd.s3.eu-west-1.amazonaws.com/path/name.pdf",
"uploaded_floorplan": "https://floorfymdpd.s3.eu-west-1.amazonaws.com/path/name_uploaded.pdf",
"scaled_floorplan_images": [
"https://floorfy-img-local-k.s3-eu-west-1.amazonaws.com/img/properties/2/1701/tourimages/croquis_scaled-65d8a19429576.jpg",
"https://floorfy-img-local-k.s3-eu-west-1.amazonaws.com/img/properties/2/1701/tourimages/croquis_scaled-65d8a195635ac.jpg",
"https://floorfy-img-local-k.s3-eu-west-1.amazonaws.com/img/properties/2/1701/tourimages/croquis_scaled-65d8a19687505.jpg"
],
"bounded_floorplan_images": [
"https://floorfy-img-local-k.s3-eu-west-1.amazonaws.com/img/properties/2/1701/tourimages/croquis_acotated-65d8a194badf5.jpg",
"https://floorfy-img-local-k.s3-eu-west-1.amazonaws.com/img/properties/2/1701/tourimages/croquis_acotated-65d8a1960109c.jpg",
"https://floorfy-img-local-k.s3-eu-west-1.amazonaws.com/img/properties/2/1701/tourimages/croquis_acotated-65d8a19717d01.jpg"
],
"uploaded_floorplan_images": [],
"last_upload_date": "2022-07-27 14:34:28",
"is_published": "true",
"property_type": "2",
"contract_type": "1",
"property_status": "3",
"title": "Piso en venta en buen estado con vistas al mar",
"description": "Este piso está situado enfrente del paseo marítimo...",
"rooms": "4",
"bathrooms": "2",
"living_area": "323",
"total_area": "1132",
"property_status": 1,
"version": 2,
"location": {
"city": "Hospitalet del Llobregat",
"address": "Rambla generalitat",
"number": "32",
"door": "4",
"floor": "2"
},
"extras": {
"photographer": "photographer@floorfy.com"
},
"id_folder": 456,
"id_watermark": 35
}

You can update the data of a property after registration, for example if the price changes or if you want to archive the property. Below is the URL for updating the data of a property. The parameters are the same as those used to register the property, in this case the ​id_origin parameter is the only required parameter. In addition, if the same property has several versions, the version parameter can be added indicating which version to update, if it’s not added, the latest version will be updated.

Terminal window
https://api.floorfy.com/api/property/update?tk={​ tk_agency ​}

This uses the same parameters that are used to create the property, and the additional ones that we show below.

FieldTypeDescriptionRequirement
dataObjectRoot element.Required
deletedBooleantrue to delete the property.Optional
Terminal window
https://api.floorfy.com/api/property/update?tk=a_5723h3278
{
"data": {
"id_origin": "544",
"property_status": 0,
"title": "New title"
}
}

List of the tours that belong to the user owner of the token.

Terminal window
https://api.floorfy.com/api/properties?tk={tk_agency}
FieldTypeDescriptionRequirement
pageIntegerPage (Must be a number greater than 0). Default: 1.Optional
email_userStringEmail of an agency user. If provided, only tours assigned to that user are returned.Optional
Terminal window
https://api.floorfy.com/api/properties?tk=da3d34dew5
{
"data": {
"page": "1",
"email_user": "user@agency.com"
}
}

To include equirectangular (spherical) images to a virtual tour, you must provide a property identifier and some basic information. If the request is completed successfully, the API will return a message like the one in the example. The URL and the parameters to add an image to the property are detailed below. The parameters must be sent in a JSON object to the indicated URL in the format that you will see in the example.

Terminal window
https://api.floorfy.com/api/scene/upload?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
id_originStringID origin property identifier.Required
room_typeStringScene room name.Optional
fileStringValid base64 equirectangular image.Required
Terminal window
https://api.floorfy.com/api/scene/upload?tk=a_5723h3278
{
"data": {
"id_origin": "544",
"room_type": "Living room",
"file": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/ 4gxYSUNDX1BST0ZJTEUAAQEAAAxITGlubwIQAABtbnRyUkdCIFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFjcHJ0AAABUAAAADNkZXNjAAABhAAAAGx3dHB0AAAB8AAAABRia3B0AAACBAAAABRyWFlaAAACGAAAABRnWFlaAAACLAAAABRiWFlaAAACQAAAABRkbW5kAAACVAAAAHBkbWRkAAACxAAAAIh2dWVkAAADTAAAAIZ2aWV3AAAD1AAAACRsdW1pAAAD+AAAABRtZWFzAAAEDAAAACR0ZWNoAAAEMAAAAAxyVFJDAAAEPAAACAxnVFJDAAAEPAAACAxiVFJDAAAEPAAACAx0ZXh0AAAAAENvcHlyaWdodCAoYykgMTk5OCBIZXdsZXR0LVBhY2thcmQgQ29tcGFueQAAZGVzYwAAAAAAAAASc1JHQiBJRUM2MTk2Ni0yLjEAAAAAAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWFlaIAAAAAAAAPNRAAEAAAABFsxYWVogAAAAAAAAAAAAAAAAAAAAAFhZWiAAAAAAAABvogAAOPUAAAOQWFlaIAAAAAAAAGKZAAC3hQAAGNpYWVogAAAAAAAAJKAAAA+EAAC2z2Rlc2MAAAAAAAAAFklFQyBodHRwOi8vd3d3LmllYy5jaAAAAAAAAAAAAAAAFklFQyBodHRwOi8vd3d3LmllYy5jaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAAC5JRUMgNjE5NjYtMi4xIERlZmF1bHQgUkdCIGNvbG91ciBzcGFjZSAtIHNSR0IAAAAAAAAAAAAAAC5JRUMgNjE5NjYtMi4xIERlZmF1bHQgUkdCIGNvbG91ciBzcGFjZSAtIHNSR0IAAAAAAAAAAAAAAAAAAAAAAAAAAAAAZGVzYwAAAAA",
"version": 1
}
}

To include equirectangular (spherical) images to a virtual tour, you must provide a property identifier and some basic information. If the request is completed successfully, the API will return a message like the one in the example. The URL and the parameters to add an image to the property are detailed below. The parameters must be sent in a JSON object to the indicated URL in the format that you will see in the example.

Terminal window
https://api.floorfy.com/api/multiple/scene/upload?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
id_originStringID origin property identifier.Required
filesArrayList of strings with image URLs to download.Required
Terminal window
https://api.floorfy.com/api/multiple/scene/upload?tk=a_5723h3278
{
"data": {
"id_origin": "544",
"files": ["https://site.com/imagepath1.jpg", "https://site.com/imagepath2.jpg"],
}
}

When the images are uploaded to the virtual tour, we can request the edition services. For this we must provide a property identifier and some basic data. If the request is completed successfully, the API will return a message like the one in the example. The URL and the necessary parameters are detailed below, these must be sent in a JSON object to the indicated URL with the format that you will see in the example.

To request services you must have a payment method and an active subscription associated with your account.

  • Virtual tour: The 360 ​​assembly is FREE, the 3D one costs 15€.
  • Floorplan: The dimensioned and scaled plan of the property costs 15€.
  • Discount: If the 3D assembly + floorplan are requested on the same property, the total price will be 19€.
Terminal window
https://api.floorfy.com/api/services/request?tk={​ tk_agency ​}

It’s required to send at least one of the two parameters.

FieldTypeDescriptionRequirement
dataObjectRoot element.Required
typeStringSelect the assembly type:
  • 3D
  • 360
(If this parameter is not sent, a new assembly will not be carried out on the property).
Optional
floorplanBooleantrue or false to request floorplan. If the parameter is not sent, it will be interpreted as false.Optional
Terminal window
https://api.floorfy.com/api/services/request?tk=a_5723h3278
{
"data": {
"id_origin": "544",
"type": "3D",
"floorplan": false
}
}

At any time you can consult Floorfy through the API if Floorfy has already registered one of its properties or if you want to know if the virtual tour of the property has already been carried out and is available. To do this you must provide us with the id of the property and the API will respond with status 0 and with the id of Floorfy in case the property is already registered at Floorfy.

Terminal window
https://api.floorfy.com/api/property/exists?tk={​ tk_agency }
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
id_originStringID origin of the property.Required
Terminal window
https://api.floorfy.com/api/property/exists?tk=da3d34dew5
{
"data": {
"id_origin": "9191121"
}
}

To open the Floorfy tour editor directly from a property’s file in your system, without requiring the user’s authentication in Floorfy, you can include in the property’s edition file, or anywhere else, an iframe, link or button with the following address:

Terminal window
https://agency.floorfy.com/tour/edit?tk={​ tk_agency }&id={ external_id }

To open the Floorfy tour editor directly from a property’s file in your system, without requiring the user’s authentication in Floorfy, you can include in the property’s edition file, or anywhere else, a link or button with the following address:

Terminal window
https://agency.floorfy.com/tour/edit/{​ id_floorfy ​}?tk={ tk_agency }

Include the id_floorfy that you have obtained in the reply to add a property and add as TK the tk_agency that identifies the agency and that you obtained when you registered the client. If the data is correct the user will enter the Floorfy tour editor with the session open and will be able to start editing the virtual tour.

When the tour is generated it will be accessible through the following URL: https://floorfy.com/tour/{id_floorfy}. If you want to integrate the tour display into your portal, please request the integration guide from ​info@floorfy.com.

The list of tours published using pagination will be available to Floorfy through the API. For this it will only be necessary to send a number that refers to the desired page. Each page has a limit of 3000 properties.

Terminal window
https://api.floorfy.com/api/published/ready?tk={​ tk_agency }
FieldTypeDescriptionRequirement
pageIntegerPage (Must be a number greater than 0). Default: 1.Optional
Terminal window
https://api.floorfy.com/api/published/ready?tk=da3d34dew5
{
"data": {
"page": "1"
}
}

In addition to the main user of the agency, an account can have other users who can access the account and manage the content of the properties.

The limit of agents that each account can have is established in the subscription plan. Once the agent is created, he will receive an email to activate his account.

The URL and parameters to register an agent are detailed below. The parameters must be sent in a JSON object to the indicated URL with the format that you will see in the example.

Terminal window
https://api.floorfy.com/api/agent/add?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
emailStringAgent email.Required
nameStringAgent name.Optional
surnameStringAgent surname.Optional
phoneStringAgent contact telephone number.Optional
list_all_propertiesBooleanWhether the agent can see all properties or only those assigned to them. Default: true.Optional
is_read_onlyBooleanWhether the agent has read-only permissions. If true, the agent can only view properties but cannot modify them. Default: false.Optional
foldersArray of IntegersArray of folder IDs to assign to the agent. The agent will only have access to properties within these folders (and their subfolders). If not provided, defaults to empty array (agent has no folder restrictions).Optional
Terminal window
https://api.floorfy.com/api/agent/add?tk=p_as889h2e829jo
{
"data": {
"email": "agent1@floorfy.com",
"name": "John",
"surname": "Smith",
"phone": "938237283",
"list_all_properties": true,
"is_read_only": false,
"folders": [1, 2, 3]
}
}

This endpoint allows you to update an existing user’s information. The user must belong to the authenticated agency. The email address serves as the identifier to locate the agent and cannot be modified.

Only the email field is required to identify the agent. All other fields are optional. If a field is provided, it will be updated. If a field is omitted, the current value is preserved.

Important: When updating folders, the provided array completely replaces the agent’s current folder assignments. To remove all folder assignments, send an empty array [].

The URL and parameters to update an agent are detailed below. The parameters must be sent in a JSON object to the indicated URL with the format shown in the example.

Terminal window
https://api.floorfy.com/api/agent/update?tk={ tk_agency }
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
emailStringAgent email.Required
nameStringAgent name.Optional
surnameStringAgent surname.Optional
phoneStringAgent contact telephone number.Optional
list_all_propertiesBooleanWhether the agent can see all properties or only those assigned to them. Default: true.Optional
is_read_onlyBooleanWhether the agent has read-only permissions. If true, the agent can only view properties but cannot modify them. Only updates if provided.Optional
foldersArray of IntegersArray of folder IDs to assign to the agent. Replaces all current folder assignments. To remove all folders, send an empty array []. Only updates if provided.Optional
Terminal window
https://api.floorfy.com/api/agent/update?tk=p_as889h2e829jo
{
"data": {
"email": "agent1@floorfy.com",
"name": "John",
"surname": "Smith",
"phone": "938237283",
"list_all_properties": true,
"is_read_only": true,
"folders": [5, 6]
}
}

You can update only specific fields. Fields not included in the request will remain unchanged:

Request:

{
"data": {
"email": "agent1@floorfy.com",
"name": "John Updated",
"is_read_only": true
}
}

In this example, only name and is_read_only will be updated. All other fields (surname, phone, list_all_properties, folders) will remain as they were.

Retrieves agent information by email address within the authenticated user’s agency.

Terminal window
https://api.floorfy.com/api/agent/get?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
dataObjectRoot element.Required
emailStringEmail address of the agent to retrieve.Required
Terminal window
https://api.floorfy.com/api/agent/get?tk=da3d34dew5
{
"data": {
"email": "agent@floorfy.com"
}
}

Retrieves all agents from the authenticated user’s agency.

Terminal window
https://api.floorfy.com/api/agent/list?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
None-No parameters required.-
Terminal window
https://api.floorfy.com/api/agent/list?tk=da3d34dew5
{
"data": {}
}

To open a Floorfy videocall directly from your system, without requiring user authentication in Floorfy, you can include an iframe, link or button with the following address in the property’s edit tab, or elsewhere:

Terminal window
# Example with external_id
https://agency.floorfy.com/api/videocall?tk={ tk_agency }&id_ext={ external_id }
Terminal window
# Example with floorfy_id
https://agency.floorfy.com/api/videocall?tk={ tk_agency }&id_floorfy={ floorfy_id }
Terminal window
# Example with url_tour
https://agency.floorfy.com/api/videocall?tk={ tk_agency }&url_tour={ url_tour }

There are three ways to access a video call:

  • Using your property identifier: external_id
  • Using our property identifier: floorfy_id
  • Using the URL of the virtual tour: url_tour

The tk_agency that identifies the owning agency must also be added as tk. If the data is correct, the user will enter the video call with the session open.

You can consult Floorfy through the API if you are doing an open house of the property at this moment.

To do so, you will only need to send the Floorfy ID of the property.

Terminal window
https://api.floorfy.com/api/oh/inprogress?tk={​ tk_partner }
FieldTypeDescriptionRequirement
idIntegerFloorfy ID associated with the property.Required
Terminal window
https://api.floorfy.com/api/oh/inprogress?tk=​da3d34dew5
{
"data": {
"id": "138"
}
}

The contacts made by visitors during an open house can be consulted with Floorfy through the API.

For this it will only be necessary to send the Floorfy identifier of the property.

Terminal window
https://api.floorfy.com/api/oh/contacts?tk={​ tk_agency }
FieldTypeDescriptionRequirement
idIntegerOpen House Identifier.Required
Terminal window
https://api.floorfy.com/api/oh/contacts?tk=da3d34dew5
{
"data": {
"id": "138"
}
}

The list of rooms, with their respective areas grouped by floors. To obtain the list, simply send the id_origin of a property.

Terminal window
https://api.floorfy.com/api/floorplan/get/room/area?tk={​ tk_agency }
FieldTypeDescriptionRequirement
id_originStringID origin of the property.Required
Terminal window
https://api.floorfy.com/api/floorplan/get/room/area?tk=da3d34dew5
{
"data": {
"id_origin": "9191121"
}
}

To create a new property folder, you must provide a name and optionally a parent folder ID. The API will return the ID of the created folder.

Terminal window
https://api.floorfy.com/api/folder/create?tk={ tk_agency }
FieldTypeDescriptionRequirement
dataObjectRoot elementRequired
nameStringName of the folderRequired
id_parentIntegerID of the parent folder. If not provided, the folder will be created as rootOptional
Terminal window
https://api.floorfy.com/api/folder/create?tk=a_5723h3278
{
"data": {
"name": "Main folder",
"id_parent": 123
}
}

To update an existing folder, you must provide the ID of the folder to be modified and at least one of the update parameters (name or parent folder).

Terminal window
https://api.floorfy.com/api/folder/update?tk={ tk_agency }
FieldTypeDescriptionRequirement
dataObjectRoot elementRequired
id_folderIntegerID of the folder to be updatedRequired
nameStringNew name of the folderOptional*
id_parentIntegerNew ID of the parent folder. If null is sent, the parent relationship is removedOptional*
Terminal window
https://api.floorfy.com/api/folder/update?tk=a_5723h3278
{
"data": {
"id_folder": 456,
"name": "New folder name",
"id_parent": 789
}
}

To delete a folder and all its subfolders, you must provide the ID of the folder to be deleted. When a folder is deleted, all its subfolders will also be removed. The properties inside the deleted folders will be left without an assigned folder.

Terminal window
https://api.floorfy.com/api/folder/delete?tk={ tk_agency }
FieldTypeDescriptionRequirement
dataObjectRoot elementRequired
id_folderIntegerID of the folder to deleteRequired
Terminal window
https://api.floorfy.com/api/folder/delete?tk=a_5723h3278
{
"data": {
"id_folder": 456
}
}

To list folders, you can provide the ID of a parent folder to filter results and retrieve only its subfolders. If no parent folder is specified, all folders belonging to the user will be returned. Each folder in the response includes its ID, name, parent folder reference, and the number of tours it contains.

Terminal window
https://api.floorfy.com/api/folder/list?tk={ tk_agency }
FieldTypeDescriptionRequirement
dataObjectRoot elementRequired
id_parentIntegerFilter folders by parent folder ID. If omitted, returns all user folders.Optional
Terminal window
https://api.floorfy.com/api/folder/list?tk=a_5723h3278
{
"data": {
"id_parent": 24
}
}

Returns key metrics for a property including total visits, unique visitors, average viewing time, and number of Open Houses. This data is aggregated from the property’s visit history.

Terminal window
https://api.floorfy.com/api/analytics/summary?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
id_originstringOrigin identifier of the property to analyze.Required
Terminal window
https://api.floorfy.com/api/analytics/summary?tk=a_5723h3278
{
"data": {
"id_origin": "9191121"
}
}

Returns the geographical distribution of property visitors, showing which countries and regions the visitors are coming from. This helps track the property’s international reach.

Terminal window
https://api.floorfy.com/api/analytics/locations?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
id_originstringOrigin identifier of the property to analyze.Required
Terminal window
https://api.floorfy.com/api/analytics/locations?tk=a_5723h3278
{
"data": {
"id_origin": "9191121"
}
}

Returns a paginated list of all visits to the property. Each visit entry includes the source website, viewing duration, visitor’s location, and exact visit time. Use this to analyze individual visitor behavior.

Terminal window
https://api.floorfy.com/api/analytics/visits?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
id_originstringOrigin identifier of the property to analyze.Required
pagestringPage number for pagination (minimum value: 1).Required
limitstringNumber of items per page (minimum: 1, maximum: 100).Required
Terminal window
https://api.floorfy.com/api/analytics/visits?tk=a_5723h3278
{
"data": {
"id_origin": "9191121",
"page": "1",
"limit": "20"
}
}

Uploads a new watermark image and optionally sets it as active. The watermark can be used for different types of content (tour, photo, video, floorplan, scene). Only one watermark can be active per type.

Terminal window
https://api.floorfy.com/api/watermark/upload?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
typestringType of watermark. Must be one of: tour, photo, video, floorplan, scene.Required
watermarkstringBase64 encoded image data.Required
activebooleanWhether to set this watermark as active.Required
Terminal window
https://api.floorfy.com/api/watermark/upload?tk=a_5723h3278
{
"data": {
"type": "tour",
"watermark": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGNgYAAAAAMAASsJTYQAAAAASUVORK5CYII=",
"active": true
}
}

Returns a list of all watermarks for the authenticated user, including their type, active status, and URLs.

Terminal window
https://api.floorfy.com/api/watermark/list?tk={​ tk_agency ​}
FieldTypeDescriptionRequirement
typestringType of watermark. Must be one of: tour, photo, video, floorplan, scene.Required
watermarkstringBase64 encoded image data .Required
activebooleanWhether to set this watermark as active.Required
Terminal window
https://api.floorfy.com/api/watermark/list?tk=a_5723h3278
{
"status": true,
"data": [
{
"id": 42,
"type": "tour",
"active": true,
"url": "https://cdn.example.com/img/user/123/wt_abc123.jpg"
},
{
"id": 43,
"type": "photo",
"active": false,
"url": "https://cdn.example.com/img/user/123/wt_def456.jpg"
}
]
}