Rentberry Applications API

Applications

Operations 17

POST /v{version}/applicant/proof-income Upload a new applicant attachment. #
POST /v{version}/applicant/proof-income/{id} Update an existing applicant attachment. #
DELETE /v{version}/applicant/proof-income/{id} Delete an applicant attachment. #
GET /v{version}/applicant/proof-income/download/{id} Download an applicant attachment file. #
GET /v{version}/applicant Retrieve the last active applicant for the authenticated user. #
POST /v{version}/applicant Create a new applicant record. #
PUT /v{version}/applicant/{id} Submit the applicant for review. #
POST /v{version}/applicant/{id} Edit an existing applicant. #
GET /v{version}/applicant/list Retrieve list of applicants. #
GET /v{version}/apartment/apply/{id} Get application details #
POST /v{version}/apartment/apply/{id} Edit application #
DELETE /v{version}/apartment/apply/{id} Decline or withdraw application #
GET /v{version}/apartment/apply/apartment/{id} Get applications for a specific listing #
GET /v{version}/apartment/apply Get applications sent by authenticated user #
POST /v{version}/apartment/apply Create a new application #
POST /v{version}/apartment/apply/confirm/{id} Confirm application (DEPRECATED) #
PUT /v{version}/apartment/apply/accept/{id} Accept application #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/rentberry-applications-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

rentberry-applications-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Rentberry Applications API
  description: Renting Done Right. Finally.
  version: 4
servers:
- url: https://api.rentberry.com/
  description: Base URL declared by the provider in apis.yml (roadmap#122).
tags:
- name: Applications
  description: Applications
paths:
  /v{version}/applicant/proof-income:
    post:
      tags:
      - Applications
      summary: Upload a new applicant attachment.
      description: Available since API version 1. Requires ROLE_USER.
      operationId: post_api_v1_applicant_attachment_create
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicantAttachmentType'
      responses:
        '201':
          description: Attachment uploaded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicantAttachment'
        '400':
          description: Validation failed.
      security:
      - XAuthToken: []
  /v{version}/applicant/proof-income/{id}:
    post:
      tags:
      - Applications
      summary: Update an existing applicant attachment.
      description: Available since API version 1. Requires ROLE_USER and ownership of the attachment.
      operationId: post_api_v1_applicant_attachment_edit
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      - name: id
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicantAttachmentType'
      responses:
        '200':
          description: Attachment updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplicantAttachment'
        '400':
          description: Validation failed.
        '403':
          description: Forbidden
      security:
      - XAuthToken: []
    delete:
      tags:
      - Applications
      summary: Delete an applicant attachment.
      description: Available since API version 1. Requires ROLE_USER and ownership of the attachment.
      operationId: delete_api_v1_applicant_attachment_delete
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      - name: id
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '204':
          description: Attachment deleted.
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - XAuthToken: []
  /v{version}/applicant/proof-income/download/{id}:
    get:
      tags:
      - Applications
      summary: Download an applicant attachment file.
      description: Available since API version 1. Requires ROLE_USER and ownership of the attachment.
      operationId: get_api_v1_applicant_attachment_download
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      - name: id
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: File download.
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
      security:
      - XAuthToken: []
  /v{version}/applicant:
    get:
      tags:
      - Applications
      summary: Retrieve the last active applicant for the authenticated user.
      description: Available since API version 1. Requires ROLE_USER.
      operationId: get_api_v1_applicant_last
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: Applicant data.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Applicant'
        '404':
          description: Applicant not found.
      security:
      - XAuthToken: []
    post:
      tags:
      - Applications
      summary: Create a new applicant record.
      description: Available since API version 1. Requires ROLE_USER.
      operationId: post_api_v1_applicant_create
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicantFormType'
      responses:
        '200':
          description: Applicant created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Applicant'
        '400':
          description: Validation failed or bad request.
        '403':
          description: Phone not verified.
        '409':
          description: Application already has an applicant.
      security:
      - XAuthToken: []
  /v{version}/applicant/{id}:
    put:
      tags:
      - Applications
      summary: Submit the applicant for review.
      description: Available since API version 1. Requires ROLE_USER and ownership of the applicant.
      operationId: put_api_v1_applicant_submit
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      - name: id
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: Applicant submitted successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Applicant'
        '403':
          description: Not owner of applicant.
        '409':
          description: Application is withdrawn or declined.
      security:
      - XAuthToken: []
    post:
      tags:
      - Applications
      summary: Edit an existing applicant.
      description: Available since API version 1. Requires ROLE_USER and ownership of the applicant.
      operationId: post_api_v1_applicant_edit
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      - name: id
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApplicantFormType'
      responses:
        '200':
          description: Applicant updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Applicant'
        '400':
          description: Validation failed.
        '403':
          description: Phone not verified or not owner of applicant.
        '409':
          description: Application is withdrawn.
      security:
      - XAuthToken: []
  /v{version}/applicant/list:
    get:
      tags:
      - Applications
      summary: Retrieve list of applicants.
      description: Available since API version 1. Requires ROLE_USER.
      operationId: get_api_v1_get_applicants_list
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: List of applicants.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Applicant'
        '401':
          description: Unauthorized
      security:
      - XAuthToken: []
  /v{version}/apartment/apply/{id}:
    get:
      tags:
      - Applications
      summary: Get application details
      description: Available since API version 1. Returns detailed information about a specific application, including pricing status, notifications, and competitive data.
      operationId: get_api_v1_apartment_apply_get
      parameters:
      - name: id
        in: path
        description: Application ID
        required: true
        schema:
          type: integer
          pattern: \d+
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: Application details retrieved successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApplyResponse'
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '403':
          description: Forbidden - User does not have permission to view this application
        '404':
          description: Application not found
      security:
      - XAuthToken: []
    post:
      tags:
      - Applications
      summary: Edit application
      description: Available since API version 1. Modifies an existing application, updating price, deposit, and other details.
      operationId: post_api_v1_apartment_apply_edit
      parameters:
      - name: id
        in: path
        description: Application ID
        required: true
        schema:
          type: integer
          pattern: \d+
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              properties:
                price:
                  description: Updated monthly rental price offer
                  type: number
                  format: float
                deposit:
                  description: Updated security deposit offer
                  type: number
                  format: float
                moveIn:
                  description: Updated desired move-in date
                  type: string
                  format: date
                comment:
                  description: Updated comment
                  type: string
              type: object
      responses:
        '200':
          description: Application updated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListingApplication'
        '400':
          description: Bad request - Validation failed
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '403':
          description: Forbidden - User does not own this application
        '404':
          description: Application not found
        '1004':
          description: Cannot edit application that has already been accepted by homeowner
      security:
      - XAuthToken: []
    delete:
      tags:
      - Applications
      summary: Decline or withdraw application
      description: Available since API version 1. Declines an application (if called by listing owner) or withdraws it (if called by applicant).
      operationId: delete_api_v1_apartment_apply_decline
      parameters:
      - name: id
        in: path
        description: Application ID
        required: true
        schema:
          type: integer
          pattern: \d+
      - name: declinedReason
        in: query
        description: Reason for declining (only used when listing owner declines)
        schema:
          type: string
          default: homeownerDecision
          enum:
          - homeownerDecision
          - otherCandidate
          - notRentedYet
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: Application declined or withdrawn successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListingApplication'
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '403':
          description: Forbidden - User does not have permission to decline/withdraw this application
        '404':
          description: Application not found
      security:
      - XAuthToken: []
  /v{version}/apartment/apply/apartment/{id}:
    get:
      tags:
      - Applications
      summary: Get applications for a specific listing
      description: Available since API version 1. Returns applications received for a specific listing owned by the authenticated user.
      operationId: get_api_v1_apartment_apply_by_apartment
      parameters:
      - name: id
        in: path
        description: Listing ID
        required: true
        schema:
          type: integer
      - name: active
        in: query
        description: Filter by active status (true = active applications, false = all applications)
        schema:
          type: boolean
          default: true
      - name: limit
        in: query
        description: Number of items per page
        schema:
          type: integer
          default: 9
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: List of applications for the listing
          content:
            application/json:
              schema:
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ListingApplication'
                  pagination:
                    type: object
                  counters:
                    description: DEPRECATED - Notification counters for the listing
                    properties:
                      applications:
                        description: Count of applications with notifications
                        type: integer
                      expiredNotifications:
                        description: Count of unread expired property notifications
                        type: integer
                    type: object
                type: object
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '403':
          description: Forbidden - User does not own this listing
        '404':
          description: Listing not found
      security:
      - XAuthToken: []
  /v{version}/apartment/apply:
    get:
      tags:
      - Applications
      summary: Get applications sent by authenticated user
      description: Available since API version 1. Returns a list of applications submitted by the authenticated user.
      operationId: get_api_v1_apartment_apply_list
      parameters:
      - name: deleted
        in: query
        description: Filter by deleted status (0 = active applications, 1 = deleted applications)
        schema:
          type: integer
          default: 0
          enum:
          - 0
          - 1
      - name: limit
        in: query
        description: Number of items per page
        schema:
          type: integer
          default: 9
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: List of sent applications with notification data and status information
          content:
            application/json:
              schema:
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ApplyResponse'
                  pagination:
                    type: object
                type: object
        '401':
          description: Unauthorized - Missing or invalid authentication token
      security:
      - XAuthToken: []
    post:
      tags:
      - Applications
      summary: Create a new application
      description: Available since API version 1. Creates a new application for a listing.
      operationId: post_api_v1_apartment_apply_add
      parameters:
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              required:
              - listing
              - price
              - deposit
              - moveIn
              properties:
                listing:
                  description: Listing ID
                  type: integer
                price:
                  description: Offered monthly rental price
                  type: number
                  format: float
                deposit:
                  description: Offered security deposit
                  type: number
                  format: float
                moveIn:
                  description: Desired move-in date (YYYY-MM-DD)
                  type: string
                  format: date
                comment:
                  description: Optional comment for the application
                  type: string
                roommates:
                  description: Optional list of roommates
                  type: array
                  items:
                    type: object
              type: object
      responses:
        '200':
          description: Application created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListingApplication'
        '400':
          description: Bad request - Validation failed
          content:
            application/json:
              schema:
                type: object
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '1001':
          description: Listing already rented
        '1002':
          description: Listing not applicable for applications
        '1003':
          description: Cannot apply to your own listing
      security:
      - XAuthToken: []
  /v{version}/apartment/apply/confirm/{id}:
    post:
      tags:
      - Applications
      summary: Confirm application (DEPRECATED)
      description: Available since API version 1. DEPRECATED - Used only for mobile apps. Confirms an application by setting necessary confirmation flags.
      operationId: post_api_v1_apartment_apply_confirm
      parameters:
      - name: id
        in: path
        description: Application ID
        required: true
        schema:
          type: integer
          pattern: \d+
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      requestBody:
        required: true
        content:
          application/json:
            schema:
              properties:
                confirm:
                  description: Confirmation flag
                  type: boolean
              type: object
      responses:
        '200':
          description: Application confirmed successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListingApplication'
        '400':
          description: Bad request - Validation failed
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '403':
          description: Forbidden - User does not own this application
        '404':
          description: Application not found
      deprecated: true
      security:
      - XAuthToken: []
  /v{version}/apartment/apply/accept/{id}:
    put:
      tags:
      - Applications
      summary: Accept application
      description: Available since API version 1. Accepts an application, creating a rental agreement and marking the listing as rented.
      operationId: put_api_v1_apartment_apply_accept
      parameters:
      - name: id
        in: path
        description: Application ID
        required: true
        schema:
          type: integer
          pattern: \d+
      - name: version
        in: path
        required: true
        schema:
          type: string
          pattern: \d+
      responses:
        '200':
          description: Application accepted successfully, rental created
          content:
            application/json:
              schema:
                description: Rental object created from the application
                type: object
        '401':
          description: Unauthorized - Missing or invalid authentication token
        '403':
          description: Forbidden - User does not have permission to accept this application
        '404':
          description: Application not found
        '1005':
          description: Listing already rented
      security:
      - XAuthToken: []
components:
  schemas:
    RentalPaymentUnit:
      properties:
        paymentAmount:
          type: string
        id:
          type: integer
        type:
          type: string
        amount:
          type: string
      type: object
    User:
      required:
      - nameFirst
      - nameLast
      - username
      - phone
      - birthday
      properties:
        hasPassword:
          type: boolean
        phoneCountryCode:
          type: string
        id:
          type: integer
        nameFirst:
          type: string
          maxLength: 255
          minLength: 2
        nameMiddle:
          type: string
          maxLength: 255
          minLength: 1
        nameLast:
          type: string
          maxLength: 255
          minLength: 2
        company:
          $ref: '#/components/schemas/Company'
        companyName:
          type: string
          maxLength: 255
          minLength: 1
        username:
          type: string
          maxLength: 255
          minLength: 1
        profilePictureThumbs:
          type: string
        phone:
          type: string
          maxLength: 15
          minLength: 7
        birthday:
          type: string
          format: date-time
        bio:
          type: string
          maxLength: 1500
        oauthProviders:
          type: array
          items:
            $ref: '#/components/schemas/UserOauthProvider'
        address:
          $ref: '#/components/schemas/UserAddress'
        creditScore:
          $ref: '#/components/schemas/UserCreditScore'
        criminalReport:
          $ref: '#/components/schemas/UserCriminalReport'
        stripeCustomer:
          $ref: '#/components/schemas/UserStripeCustomer'
        active:
          type: boolean
          default: true
        fromNotBerryForbiddenCountry:
          type: boolean
          default: false
        verified:
          type: boolean
          default: false
        emailVerified:
          type: boolean
          default: false
        phoneVerified:
          type: boolean
          default: false
        registered:
          type: boolean
          default: true
        emailNotVerifiedAfter:
          type: string
          format: date-time
        lastActiveAt:
          type: string
          format: date-time
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
        statusType:
          type: string
          default: regular
          enum:
          - regular
          - premium
          - premium_pending
          - vip
          - vip_pending
        authToken:
          type: string
        rentalHistory:
          type: array
          items:
            $ref: '#/components/schemas/UserRentalHistory'
        deleted:
          type: boolean
          default: false
        rentalPaymentAccount:
          $ref: '#/components/schemas/RentalPaymentAccount'
        newsletterSubscription:
          type: boolean
          default: false
        premiumPartner:
          type: boolean
          default: false
        locale:
          type: string
          default: en_US
          enum:
          - en_US
          - es_ES
        currency:
          type: string
        lengthUnit:
          type: string
          enum:
          - m
          - ft
        isRaiUser:
          type: boolean
          default: false
      type: object
    Company:
      properties:
        id:
          type: integer
        name:
          type: string
          maxLength: 255
          minLength: 1
        phone:
          type: integer
          maxLength: 15
          minLength: 7
        website:
          type: string
          maxLength: 255
          minLength: 1
        logoThumbs:
          type: string
        email:
          type: string
          maxLength: 255
          minLength: 1
        city:
          type: string
          maxLength: 255
          minLength: 1
        countryCode:
          type: string
          maxLength: 2
          minLength: 2
        provider:
          type: string
        externalId:
          type: string
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      type: object
    Rental:
      properties:
        listing:
          $ref: '#/components/schemas/Listing'
        apartmentId:
          title: for iOs compatibility.
          type: integer
        latestPayment:
          $ref: '#/components/schemas/RentalPayment'
        activeSubscription:
          $ref: '#/components/schemas/RentalSubscription'
        id:
          type: integer
        application:
          $ref: '#/components/schemas/ListingApplication'
        moveIn:
          type: string
          format: date-time
        moveOut:
          type: string
          format: date-time
        firstPaymentDate:
          type: string
          format: date-time
        monthlyRentAmount:
          type: string
          maximum: 9999999
          minimum: 1
        monthlyDueDate:
          type: integer
        tenantFirstName:
          type: string
        tenantLastName:
          type: string
        tenantEmail:
          type: string
        address:
          type: string
        unit:
          type: string
        homeowner:
          $ref: '#/components/schemas/User'
        tenant:
          $ref: '#/components/schemas/User'
        status:
          type: string
          default: pending
        isChargeable:
          type: boolean
          default: false
        documents:
          type: array
          items:
            $ref: '#/components/schemas/UserDocument'
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      type: object
    State:
      properties:
        id:
          type: integer
        shortName:
          type:
          - string
          - 'null'
          default: null
          maxLength: 200
          minLength: 1
        name:
          type:
          - string
          - 'null'
          default: null
          maxLength: 255
          minLength: 1
        description:
          type: string
      type: object
    Bounds:
      properties:
        northeast:
          $ref: '#/components/schemas/Coordinates'
        southwest:
          $ref: '#/components/schemas/Coordinates'
      type: object
    ApplicantReference:
      required:
      - name
      - relationship
      - phone
      properties:
        id:
          type: integer
        applicant:
          $ref: '#/components/schemas/Applicant'
        name:
          type: string
          maxLength: 255
          minLength: 1
        relationship:
          type: string
          maxLength: 255
          minLength: 1
        email:
          type: string
        phone:
          type: integer
          maxLength: 15
          minLength: 7
      type: object
    VirtualTour:
      required:
      - url
      properties:
        id:
          type: integer
        url:
          type: string
        isMain:
          type: boolean
          default: false
        duration:
          type: integer
        thumbnailUrl:
          type: string
        publishedAt:
          type: string
          format: date-time
      type: object
    ApplicantAttachmentsType:
      required:
      - id
      properties:
        id:
          type: integer
      type: object
    UserOauthProvider:
      properties:
        id:
          type: integer
        provider:
          type: string
        providerId:
          type: string
        connectId:
          type: string
        nameFirst:
          type: string
        nameLast:
          type: string
        pictureUrl:
          type: string
        appId:
          type: string
      type: object
    ListingApplication:
      properties:
        deposit:
          type: string
          minimum: 0
        accepted:
          title: for iOs compatibility.
          type: boolean
        declined:
          title: for iOs compatibility.
          type: boolean
        expired:
          title: for iOs compatibility.
          type: boolean
        deleted:
          title: for iOs compatibility.
          type: boolean
        id:
          type: integer
        listing:
          $ref: '#/components/schemas/Listing'
        price:
          type: string
          minimum: 1
        term:
          type: integer
        moveIn:
          type: string
          format: date-time
        rental:
          $ref: '#/components/schemas/Rental'
        applicants:
          type: array
          items:
            $ref: '#/components/schemas/Applicant'
        declinedReason:
          type: string
          maxLength: 255
          minLength: 1
        new:
          type: boolean
          default: true
        showNotification:
          type: boolean
          default: false
        status:
          type: string
          default: draft
        notes:
          type: string
          maxLength: 1000
          minLength: 1
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
      type: object
    ListingPicture:
      required:
      - id
      properties:
        id:
          type: integer
        imageThumbs:
          type: string
        order:
          type: integer
        type:
          type: string
          default: picture
      type: object
    Country:
      properties:
        shortCode:
          title: 'ISO 3166-1 alpha-2

            Use in geocoding responses from Google.'
          type: string
        longCode:
          title: ISO 3166-1 alpha-3.
          type: string
        name:
          type: string
        phone:
          type: string
      type: object
    Listing:
      required:
      - name
      - type
      - description
      - externalKey
      properties:
        openHousesEnabled:
          type: boolean
        leadUrl:
          type: boolean
        price:
          type: number
          format: float
        priceTerm:
          type: string
        user:
          $ref: '#/components/schemas/User'
        active:
          type: boolean
        rented:
          type: boolean
        providerType:
          type: string
        editedByUser:
          title: legacy.
          type: boolean
        expired:
          type: boolean
        promoted:
          type: boolean
        currency:
          type: string
        company:
          $ref: '#/components/schemas/Company'
        expireAt:
          type: integer
        listingStatus:
          type: string
        hasVirtualTour:
          type: boolean
        originalPrice:
          $ref: '#/components/schemas/Price'
        rooms:
          title: legacy.
          type: integer
        traffic:
          title: legacy.
          type: integer
        rentDuration:
          title: legacy.
          type: integer
        unitNumber:
          title: legacy.
          type: string
        levelId:
          title: legacy.
          type: integer
        shapeId:
          title: legacy.
          type: string
        panoramaId:
          title: legacy.
          type: string
        occupant:
          title: legacy.
          type: string
        id:
          type: integer
        apartmentPictures:
          type: array
  

# --- truncated at 32 KB (63 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/rentberry/refs/heads/main/openapi/rentberry-applications-api-openapi.yml