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

# The project's viewing report

> The last 14 days of the development and its units: the bookings, how many came, how many want to come back, how many offers, and a row per consultant, without client names. Only for whoever runs the project.



## OpenAPI

````yaml en/openapi.json GET /account/projects/{project}/viewing-report
openapi: 3.1.2
info:
  title: Housera API
  version: 1.0.0
  description: >-
    Publish and manage real estate listings on Housera from your CRM or your own
    application, under the same rules as the form on the Housera portal.
servers:
  - url: https://staging.housera.ro/api/v1
    description: 'Sandbox (staging): test data, same rules as production.'
  - url: https://housera.ro/api/v1
    description: 'Production: the real listings on housera.ro.'
security:
  - bearer: []
tags:
  - name: Your listings
  - name: Photos
  - name: Events
  - name: Vocabulary
  - name: Connect with Housera
  - name: Client requests
  - name: The company and its team
  - name: Marketing mandates
  - name: Viewings
  - name: Projects
  - name: Partnerships
  - name: API key
  - name: Statistics
paths:
  /account/projects/{project}/viewing-report:
    get:
      tags:
        - Projects
      summary: The project's viewing report
      description: >-
        The last 14 days of the development and its units: the bookings, how
        many came, how many want to come back, how many offers, and a row per
        consultant, without client names. Only for whoever runs the project.
      operationId: v1.projects.viewing_report
      parameters:
        - name: project
          in: path
          required: true
          schema:
            type: string
          description: >-
            The code of the project's development (8 characters, as in its
            address on Housera).
        - name: locale
          in: query
          required: false
          schema:
            type: string
            enum:
              - ro
              - en
            default: en
          example: en
          description: >-
            The response language, `ro` or `en`. It changes error messages
            (`title`, `detail`), labels and, when the listing has an approved
            translation in that language, its title and description. Codes are
            the same in every language. It takes precedence over
            `Accept-Language` and over the account's language.
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: object
                    properties:
                      from:
                        type: string
                        description: The first day of the period.
                      to:
                        type: string
                        description: The last day of the period.
                      funnel:
                        type: object
                        properties:
                          bookings:
                            type: integer
                            description: The bookings in the period.
                          came:
                            type: integer
                            description: The visits where the person showed up.
                          again:
                            type: integer
                            description: >-
                              The visits after which the person wants to come
                              back or made an offer.
                          offers:
                            type: integer
                            description: The visits after which the client made an offer.
                        required:
                          - bookings
                          - came
                          - again
                          - offers
                        description: >-
                          The period's funnel: `requests` (every request
                          received, including cancelled, declined or expired
                          ones), `confirmed`, `came`, `again` (want to come back
                          or made an offer).
                      consultants:
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                              description: Name.
                            bookings:
                              type: integer
                              description: The bookings in the period.
                            came:
                              type: integer
                              description: The visits where the person showed up.
                            offers:
                              type: integer
                              description: The visits after which the client made an offer.
                          required:
                            - name
                            - bookings
                            - came
                            - offers
                        description: >-
                          The project's consultants, who meet the clients: its
                          team members who work at the firm, managers first.
                          Empty when you haven't chosen anyone; then whoever
                          runs the listing does the viewings.
                      open_houses:
                        type: array
                        items: {}
                        description: >-
                          The open houses of the period, newest first, with how
                          many came (`came`) and how many of them are interested
                          (`interested`); nobody is named.
                    required:
                      - from
                      - to
                      - funnel
                      - consultants
                      - open_houses
                    description: The result of the request.
                required:
                  - data
          description: The request succeeded.
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: The key is missing, revoked or expired (`unauthenticated`).
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: >-
            The key lacks the required permission (`missing_ability`) or access
            is denied (`forbidden`).
        '404':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: >-
            The listing does not exist or the key has no access to it
            (`not_found`).
        '429':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: >-
            Too many requests. Try again after the number of seconds in
            `Retry-After`.
components:
  schemas:
    Problem:
      type: object
      title: Problem
      properties:
        type:
          type: string
          format: uri
          description: The URL of the problem type (RFC 9457).
        title:
          type: string
          description: A short summary of the problem, in the request's language.
        status:
          type: integer
          description: The HTTP status code.
        code:
          type: string
          description: >-
            The stable code of the refusal, the one to handle the error by (the
            list is on the Errors page).
        detail:
          type: string
          description: The explanation, in the request's language.
        existing:
          type: object
          properties:
            code:
              type: string
              description: The existing listing's public code.
            external_ref:
              type:
                - string
                - 'null'
              description: >-
                Your ID for the existing listing, if you set it with `PUT
                /listings/ref/{ref}`. Otherwise `null`.
          required:
            - code
            - external_ref
          description: >-
            Only on `409 duplicate_listing`: the listing you already have for
            the same property.
      required:
        - type
        - title
        - status
        - code
        - detail
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
      description: 'Authorization: Bearer <key>'

````

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