> ## Documentation Index
> Fetch the complete documentation index at: https://docs.watahub.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Filter Properties

> Filter the portfolio with the same query language as saved custom filters.



## OpenAPI

````yaml /openapi/application.json post /api/v1/accounts/{account_id}/properties/filter
openapi: 3.1.0
info:
  title: API de Yampi
  description: >-
    API de cuenta de Yampi: chats, inventario, negocios, contratos, tesorería y
    Livia. Autenticación con el header `api_access_token`.
  version: 1.2.0
  termsOfService: https://yampi.ai/terms/
  contact:
    email: hola@yampi.ai
  license:
    name: MIT License
    url: https://opensource.org/licenses/MIT
servers:
  - url: https://app.yampi.ai
    description: Producción
security: []
tags:
  - name: Agents
    description: Agent management APIs
  - name: Canned Responses
    description: Pre-defined responses for common queries
  - name: Contacts
    description: Contact management APIs
  - name: Contact Labels
    description: Manage contact labels
  - name: Conversation Assignments
    description: Manage conversation assignments
  - name: Conversation Labels
    description: Manage conversation labels
  - name: Conversations
    description: Conversation management APIs
  - name: Custom Attributes
    description: Custom fields for contacts and conversations
  - name: Custom Filters
    description: Saved filters for conversations
  - name: Inboxes
    description: Communication channels setup
  - name: Integrations
    description: Third-party integrations
  - name: Messages
    description: Message management APIs
  - name: Profile
    description: User profile APIs
  - name: Reports
    description: Analytics and reporting APIs
  - name: Teams
    description: Team management APIs
  - name: Webhooks
    description: Event notification webhooks
  - name: Automation Rule
    description: Workflow automation rules
  - name: Help Center
    description: Knowledge base management
  - name: Account
    description: Current account profile and settings
  - name: Audit Logs
    description: Account audit log
  - name: Properties
    description: Property portfolio APIs
  - name: Companies
    description: Company CRM APIs
  - name: Opportunities
    description: Opportunity CRM APIs
  - name: Opportunity Reminders
    description: Reminders on opportunities
  - name: Contract Templates
    description: Contract template library
  - name: Contract Submissions
    description: Contract sending and tracking
  - name: Contract Imports
    description: Import signed contracts into the account
  - name: Livia
    description: Asistentes de Livia
  - name: Livia Tareas
    description: Tareas one-shot de Livia
  - name: SLA Policies
    description: SLA policy management
  - name: Applied SLAs
    description: SLA instances applied to conversations
  - name: SAML Settings
    description: Account SAML SSO settings
  - name: Treasury Subscriptions
    description: Recurring treasury subscriptions
  - name: Treasury Rent Readjustments
    description: Proposed rent raises reviewed before the tenant is notified
  - name: Treasury Payments
    description: Treasury payment recording
  - name: Treasury Adjustments
    description: Debit and credit adjustments
  - name: Treasury Adjustment Concepts
    description: Catálogo de conceptos de la agencia para cargos y descuentos.
  - name: Treasury Rules
    description: Notification, retry, collection and tax rules
  - name: Treasury Dashboard
    description: Treasury dashboard
  - name: Treasury Settings
    description: Treasury account settings
  - name: Treasury Owners
    description: Owner statements
  - name: Treasury Reports
    description: Aging and commission reports
  - name: Livia Documentos
    description: Documentos de conocimiento de Livia
  - name: Livia Escenarios
    description: Escenarios de un asistente de Livia
  - name: Livia Herramientas
    description: Herramientas HTTP de Livia
  - name: Livia Desk
    description: Hilos y mensajes de Livia Desk
  - name: Client Qualifications
    description: >-
      Criterios con los que un asistente califica a un cliente a partir de una
      conversación, y las bandas en las que cae.
  - name: Livia Preferencias
    description: Preferencias de Livia a nivel de cuenta
  - name: Documents
    description: Account document library
  - name: Document Folders
    description: Document library folders
  - name: Calendar Events
    description: Account calendar, availability and booking links
  - name: Agent Tasks
    description: Agent task inbox and lifecycle
  - name: Labels
    description: Account labels
  - name: Notifications
    description: User notifications and notification settings
  - name: Search
    description: Account search and AI search
  - name: Macros
    description: Conversation macros
  - name: Campaigns
    description: Outbound campaigns
  - name: Flow Definitions
    description: Livia flow builder
  - name: Custom Roles
    description: Custom agent roles
  - name: Assignment Policies
    description: Conversation assignment policies
  - name: Requirements
    description: Capture requirements
  - name: Zones
    description: Location zones and cities
  - name: Geocoding
    description: Authenticated geocoding
  - name: Domains
    description: Account custom domains
  - name: Connector Clients
    description: MCP connector client identifiers
  - name: Presigned Contracts
    description: Already-signed contracts uploaded to the account
  - name: Contract Webhooks
    description: Outbound contract webhook URLs
  - name: Contracts Settings
    description: Account contracts settings
  - name: Treasury Collections
    description: Collection steps, notices, agreements and exceptions
  - name: Treasury Guarantees
    description: Rental guarantees and claims
  - name: Treasury E-Invoices
    description: Electronic invoicing
  - name: Treasury Available Contracts
    description: Completed contracts that can seed subscriptions
  - name: Opportunity Pipelines
    description: CRM funnels
  - name: Opportunity Columns
    description: CRM kanban columns
  - name: Opportunity Lose Reasons
    description: CRM lose reasons
  - name: Requirement Quotes
    description: Priced quotes on capture requirements
  - name: Conversation Participants
    description: Agents participating in a conversation
  - name: Conversation Draft Messages
    description: Per-conversation composer drafts
  - name: MCP
    description: Account-scoped MCP JSON-RPC server
  - name: Treasury Bank Batches
    description: Bank payout files and beneficiary account confirmation
  - name: Treasury Bank Statements
    description: Imported bank statements and matching of their lines
  - name: Treasury Third Parties
    description: >-
      Propietarios, administraciones, proveedores y aliados a los que la agencia
      les paga o les cobra.
  - name: Treasury Giros
    description: What each recipient receives, by date and channel
  - name: Contract Drafts
    description: Contracts being written before they are sent
  - name: Contract Reviews
    description: Review rounds, versions and comments on a contract
  - name: Contact Assignment Requests
    description: Requests to be assigned a contact
  - name: Onboarding
    description: Account onboarding details
  - name: Owner Portal Invites
    description: Owner portal invite, eligibility and revoke
  - name: Channel Authorizations
    description: Start OAuth or embedded signup for inbox channels
  - name: CSAT Survey Responses
    description: Account CSAT responses, metrics and review notes
  - name: Dashboard
    description: Account dashboard summary and trends
  - name: Dashboard Apps
    description: Embedded dashboard apps
  - name: Bulk Actions
    description: Bulk conversation and contact actions
  - name: Assignable Agents
    description: Agents assignable across a set of inboxes
  - name: Tracking Pixels
    description: Advertising tracking pixels
  - name: Calls
    description: Account call history
  - name: WhatsApp Calls
    description: WhatsApp voice calls
  - name: WhatsApp Groups
    description: WhatsApp Cloud group management on an inbox
paths:
  /api/v1/accounts/{account_id}/properties/filter:
    parameters:
      - $ref: '#/components/parameters/account_id'
    post:
      tags:
        - Properties
      summary: Filter Properties
      description: >-
        Filter the portfolio with the same query language as saved custom
        filters.
      operationId: filterProperties
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
              properties:
                allowed_property_types:
                  type: array
                  items:
                    type: string
                  description: Solo inmuebles de estos tipos de propiedad.
                leasable:
                  type: boolean
                  description: >-
                    Solo inmuebles que la cuenta ofrece en arriendo (`rent` o
                    `both`) y en los que un arriendo nuevo no sería rechazado.
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/property_list_response'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/bad_request_error'
        '404':
          $ref: '#/components/responses/not_found'
        '422':
          $ref: '#/components/responses/unprocessable_entity'
components:
  parameters:
    account_id:
      in: path
      name: account_id
      schema:
        type: integer
      required: true
      description: The numeric ID of the account
  schemas:
    property_list_response:
      type: object
      properties:
        meta:
          type: object
          properties:
            count:
              type: integer
            current_page:
              type: integer
            total_pages:
              type: integer
        payload:
          type: array
          description: 25 properties per page.
          items:
            $ref: '#/components/schemas/property'
    bad_request_error:
      title: data
      type: object
      properties:
        description:
          type: string
        errors:
          type: array
          items:
            $ref: '#/components/schemas/request_error'
    property:
      type: object
      description: >-
        A property as the account's portfolio sees it
        (app/views/api/v1/accounts/properties/_property.json.jbuilder). Fields
        marked "Sensitive" are only present when
        permissions.can_view_sensitive_details is true.
      properties:
        id:
          type: integer
        wasi_id:
          type: string
          nullable: true
          description: >-
            Code of the property in Wasi, when it was imported or synced from
            there.
        registration_number:
          type: string
          nullable: true
          description: Sensitive. Matricula inmobiliaria; globally unique.
        address:
          type: string
          nullable: true
          description: Sensitive.
        address_line_2:
          type: string
          nullable: true
          description: Sensitive.
        latitude:
          type: number
          nullable: true
          description: Sensitive.
        longitude:
          type: number
          nullable: true
          description: Sensitive.
        geocoding_place_id:
          type: string
          nullable: true
          description: Sensitive. Place id returned by the geocoder.
        zip_code:
          type: string
          nullable: true
        zone:
          type: string
          nullable: true
        locality:
          type: string
          nullable: true
        property_type:
          type: string
          nullable: true
        area:
          type: number
          nullable: true
        bedrooms:
          type: integer
          nullable: true
        bathrooms:
          type: integer
          nullable: true
        parking_spaces:
          type: integer
          nullable: true
        admin_fee:
          type: number
          nullable: true
        admin_fee_due_day:
          type: integer
          nullable: true
          minimum: 1
          maximum: 31
          description: Day of the month the administration fee is due.
        stratum:
          type: integer
          nullable: true
          description: Socioeconomic stratum.
        amenities:
          type: string
          nullable: true
          description: Amenities as stored, a JSON-encoded array of strings.
        country_code:
          type: string
          nullable: true
        country_name:
          type: string
          nullable: true
        state_code:
          type: string
          nullable: true
        state_name:
          type: string
          nullable: true
        city_name:
          type: string
          nullable: true
        additional_attributes:
          type: object
          additionalProperties: true
          description: >-
            Physical facts such as built_area, terrain_area, private_area,
            year_built, floor, visits and physical_condition.
        market_status:
          type: string
          nullable: true
          description: Market status derived from the property's canonical labels.
        market_status_label:
          nullable: true
          allOf:
            - $ref: '#/components/schemas/property_label'
        labels:
          type: array
          items:
            $ref: '#/components/schemas/property_label'
        custom_labels:
          type: array
          description: Labels other than the canonical market-status ones.
          items:
            $ref: '#/components/schemas/property_label'
        property_managers:
          type: array
          description: The management of the current account only (zero or one item).
          items:
            type: object
            properties:
              id:
                type: integer
              account_id:
                type: integer
              description:
                type: string
                nullable: true
              display_title:
                type: string
                nullable: true
              internal_id:
                type: string
                nullable: true
                description: >-
                  Internal code of the property in the agency (shown as "Código
                  interno"). Unique per account; blank is stored as null.
              listing_price:
                type: number
                nullable: true
              rental_price:
                type: number
                nullable: true
              currency:
                type: string
                nullable: true
              offer_type:
                type: string
                enum:
                  - rent
                  - sale
                  - both
              publication_titles:
                type: object
                additionalProperties:
                  type: string
                description: >-
                  For a dual listing (offer_type both), the title of each side
                  keyed by offer; empty otherwise.
              previous_offer_type:
                type: string
                nullable: true
                enum:
                  - rent
                  - sale
                  - both
                  - null
              open_to_market:
                type: boolean
                nullable: true
              publicly_shareable:
                type: boolean
              status:
                type: string
                enum:
                  - active
                  - inactive
              internal_photos:
                type: array
                items:
                  type: string
              optimized_photos:
                type: array
                description: >-
                  Signed thumb and large renditions of internal_photos for the
                  gallery.
                items:
                  type: object
                  properties:
                    thumb:
                      type: string
                    large:
                      type: string
              captured_at:
                type: string
                format: date
                nullable: true
              created_at:
                type: string
                format: date-time
              updated_at:
                type: string
                format: date-time
              external_url:
                type: string
                nullable: true
              rental_period:
                type: string
                nullable: true
              portals:
                type: array
                nullable: true
                items:
                  type: string
              additional_attributes:
                type: object
                additionalProperties: true
                description: >-
                  note_entries is only included for viewers with sensitive
                  access.
              mandate_contract_submission_id:
                type: integer
                nullable: true
                description: Sensitive.
              mandate_scope:
                type: string
                nullable: true
                enum:
                  - rent
                  - sale
                  - both
                  - null
                description: Sensitive.
              exclusive:
                type: boolean
                nullable: true
                description: Sensitive.
              revoked_on:
                type: string
                format: date
                nullable: true
                description: Sensitive.
              management_fee:
                type: number
                nullable: true
                description: Sensitive.
              contract_start_date:
                type: string
                format: date
                nullable: true
                description: Sensitive.
              contract_end_date:
                type: string
                format: date
                nullable: true
                description: Sensitive.
              commission_type:
                type: string
                nullable: true
                description: Sensitive.
              sale_management_fee:
                type: number
                nullable: true
                description: >-
                  Sensitive. Recorded for reporting; Treasury does not charge it
                  yet.
              sale_commission_type:
                type: string
                nullable: true
                description: Sensitive.
              guarantee_owner_payment:
                type: boolean
                nullable: true
                description: >-
                  Sensitive. Payment guarantee to the owner agreed in the
                  mandate.
              guarantee_admin_payment:
                type: boolean
                nullable: true
                description: >-
                  Sensitive. Guarantee of the administration fee agreed in the
                  mandate.
              unrecovered_advance_policy:
                type: string
                nullable: true
                enum:
                  - owner
                  - agency
                  - null
                description: Sensitive.
              moratory_interest_beneficiary:
                type: string
                nullable: true
                description: Sensitive.
              notes:
                type: string
                nullable: true
                description: Sensitive.
              responsible_user_id:
                type: integer
                nullable: true
        permissions:
          type: object
          properties:
            can_view:
              type: boolean
            can_reassign_responsible:
              type: boolean
            can_edit:
              type: boolean
            can_edit_registration_number:
              type: boolean
              description: False once another agency manages the property too.
            can_duplicate:
              type: boolean
            can_destroy:
              type: boolean
            can_view_sensitive_details:
              type: boolean
            can_view_contacts:
              type: boolean
            can_view_contracts:
              type: boolean
            can_view_events:
              type: boolean
            can_view_documents:
              type: boolean
              description: Si el miembro puede listar y subir documentos de la propiedad
        active_contract_submission_id:
          type: integer
          nullable: true
          description: Sensitive.
        active_tenant_name:
          type: string
          nullable: true
          description: Sensitive.
        active_tenants_count:
          type: integer
          description: Sensitive.
        active_tenancy_status:
          type: string
          nullable: true
          description: Sensitive.
        linked_contracts_count:
          type: integer
          description: Sensitive.
        has_associated_contract:
          type: boolean
          description: Sensitive.
        closed_deal:
          type: object
          nullable: true
          description: Latest won deal of this account's management.
          properties:
            id:
              type: integer
            title:
              type: string
            opportunity_type:
              type: string
            closed_value:
              type: number
              nullable: true
            expected_value:
              type: number
              nullable: true
            currency:
              type: string
              nullable: true
            closed_at:
              type: string
              format: date-time
              nullable: true
            counterparty:
              $ref: '#/components/schemas/property_person_ref'
            owner:
              $ref: '#/components/schemas/property_person_ref'
            deal_attributions:
              type: array
              description: Sensitive.
              items:
                type: object
                properties:
                  id:
                    type: integer
                  role:
                    type: string
                  share_percentage:
                    type: number
                  user:
                    $ref: '#/components/schemas/property_person_ref'
        agent_profile:
          type: object
          description: >-
            Present only when the current agent has a public profile slug and
            the listing is publicly shareable.
          properties:
            slug:
              type: string
            property_url:
              type: string
            property_share_url:
              type: string
        property_assignments:
          type: array
          description: Sensitive.
          items:
            type: object
            properties:
              id:
                type: integer
              contact_id:
                type: integer
              role:
                type: string
              ownership_percentage:
                type: number
                nullable: true
              lock:
                type: object
                nullable: true
                description: >-
                  The presigned contract person that locks this tenant or
                  co-debtor.
                properties:
                  contract_submission_id:
                    type: integer
                  contract_submitter_id:
                    type: integer
                  pending_change_request_id:
                    type: integer
                    nullable: true
                  pending_change_request_mine:
                    type: boolean
              contact:
                type: object
                properties:
                  id:
                    type: integer
                  name:
                    type: string
                  email:
                    type: string
                    nullable: true
                  phone_number:
                    type: string
                    nullable: true
                    description: Only with full access to the contact.
                  document_type:
                    type: string
                    nullable: true
                    description: Only with full access to the contact.
                  document_number:
                    type: string
                    nullable: true
                    description: Only with full access to the contact.
    request_error:
      type: object
      properties:
        field:
          type: string
        message:
          type: string
        code:
          type: string
    property_label:
      type: object
      properties:
        id:
          type: integer
        title:
          type: string
        color:
          type: string
    property_person_ref:
      type: object
      nullable: true
      properties:
        id:
          type: integer
        name:
          type: string
        thumbnail:
          type: string
          nullable: true
  responses:
    not_found:
      description: Not Found
      content:
        application/json:
          schema:
            type: object
            additionalProperties: true
    unprocessable_entity:
      description: Unprocessable Entity
      content:
        application/json:
          schema:
            type: object
            additionalProperties: true

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.