> ## 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.

# Echipa

> Oamenii din echipă, ca pe pagina Echipa din portal, în ordinea în care au intrat în firmă, cu paginare prin cursor: numele public, rolul, punctul de lucru, proiectele la un dezvoltator și dacă lucrează acum. Titularul și administratorii văd toată echipa, un manager oamenii punctului său de lucru, iar un agent toată echipa, dar emailul și telefonul doar pe ale lui. Cât timp firma e suspendată, lista e goală. Cere dreptul `listings:read`.



## OpenAPI

````yaml ro/openapi.json GET /account/members
openapi: 3.1.2
info:
  title: Housera API
  version: 1.0.0
  description: >-
    Publică și gestionează anunțuri imobiliare pe Housera din CRM-ul sau din
    aplicația ta, cu aceleași reguli ca formularul din portalul Housera.
servers:
  - url: https://staging.housera.ro/api/v1
    description: 'Sandbox (staging): date de test, aceleași reguli ca producția.'
  - url: https://housera.ro/api/v1
    description: 'Producție: anunțurile reale de pe housera.ro.'
security:
  - bearer: []
tags:
  - name: Anunțurile tale
  - name: Poze
  - name: Evenimente
  - name: Vocabular
  - name: Conectează cu Housera
  - name: Cererile clienților
  - name: Firma și echipa
  - name: Mandatele de comercializare
  - name: Vizionări
  - name: Proiecte
  - name: Parteneriate
  - name: Cheia API
  - name: Statistici
paths:
  /account/members:
    get:
      tags:
        - Firma și echipa
      summary: Echipa
      description: >-
        Oamenii din echipă, ca pe pagina Echipa din portal, în ordinea în care
        au intrat în firmă, cu paginare prin cursor: numele public, rolul,
        punctul de lucru, proiectele la un dezvoltator și dacă lucrează acum.
        Titularul și administratorii văd toată echipa, un manager oamenii
        punctului său de lucru, iar un agent toată echipa, dar emailul și
        telefonul doar pe ale lui. Cât timp firma e suspendată, lista e goală.
        Cere dreptul `listings:read`.
      operationId: v1.firm.members
      parameters:
        - name: per_page
          in: query
          schema:
            type:
              - integer
              - 'null'
            minimum: 1
            maximum: 100
          description: Câte rezultate pe pagină (implicit 50, maximum 100).
        - name: cursor
          in: query
          schema:
            type:
              - string
              - 'null'
          description: >-
            Cursorul paginii următoare, din `meta.next_cursor`, trimis exact cum
            l-ai primit. Altă valoare primește 422 (`pagination_cursor`).
        - name: locale
          in: query
          required: false
          schema:
            type: string
            enum:
              - ro
              - en
            default: ro
          example: ro
          description: >-
            Limba răspunsului, `ro` sau `en`. Schimbă mesajele erorilor
            (`title`, `detail`), etichetele și, când anunțul are o traducere
            aprobată în limba cerută, titlul și descrierea lui. Codurile sunt
            aceleași în orice limbă. Are întâietate față de `Accept-Language` și
            de limba contului.
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/MemberApiResource'
                    description: Rezultatul cererii.
                  links:
                    type: object
                    properties:
                      first:
                        type:
                          - string
                          - 'null'
                        description: Adresa primei pagini.
                      last:
                        type:
                          - string
                          - 'null'
                        description: Adresa ultimei pagini (null la paginarea cu cursor).
                      prev:
                        type:
                          - string
                          - 'null'
                        description: Adresa paginii anterioare, sau null.
                      next:
                        type:
                          - string
                          - 'null'
                        description: >-
                          Pagina următoare: adresa ei, sau cursorul de trimis
                          mai departe. Null când nu mai e nimic.
                    required:
                      - first
                      - last
                      - prev
                      - next
                    description: Legăturile de paginare.
                  meta:
                    type: object
                    properties:
                      path:
                        type:
                          - string
                          - 'null'
                        description: Adresa de bază a listei.
                      per_page:
                        type: integer
                        minimum: 0
                        description: Numărul de rezultate pe pagină.
                      next_cursor:
                        type:
                          - string
                          - 'null'
                        description: >-
                          Cursorul paginii următoare; null când lista s-a
                          terminat.
                      prev_cursor:
                        type:
                          - string
                          - 'null'
                        description: Cursorul paginii anterioare; null pe prima pagină.
                    required:
                      - path
                      - per_page
                      - next_cursor
                      - prev_cursor
                    description: >-
                      Date despre răspuns, în afara rezultatului, de exemplu
                      paginarea unei liste.
                required:
                  - data
                  - links
                  - meta
          description: Cererea a reușit.
        '401':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: Cheia lipsește, e revocată sau a expirat (`unauthenticated`).
        '403':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: >-
            Cheia nu are dreptul cerut (`missing_ability`) sau accesul e refuzat
            (`forbidden`).
        '422':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ValidationProblem'
          description: >-
            Datele nu trec regulile: câte o intrare pe câmp în `errors[]`, cu un
            `code` stabil.
        '429':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: >-
            Prea multe cereri. Reîncearcă după numărul de secunde din
            `Retry-After`.
components:
  schemas:
    MemberApiResource:
      type: object
      properties:
        id:
          type: integer
          description: Id-ul colegului în echipă, același ca în evenimentele `member.*`.
        name:
          type: string
          description: >-
            Numele public aprobat al colegului, ca pe pagina firmei; fără un
            nume aprobat, numele din echipă.
        email:
          type:
            - string
            - 'null'
          description: >-
            Emailul colegului. `null` când nu-l vezi nici în portal: un agent
            vede doar emailul lui.
        phone:
          type:
            - string
            - 'null'
          description: >-
            Telefonul colegului, în format internațional. `null` când nu-l vezi
            nici în portal.
        role:
          type:
            - string
            - 'null'
          description: >-
            `owner`, `admin`, `manager` sau `agent`; `null` pentru un coleg
            venit dintr-un CRM, fără cont.
        position:
          type:
            - string
            - 'null'
          description: Funcția colegului, cum a scris-o firma; `null` dacă lipsește.
        office:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
              description: >-
                Id-ul punctului de lucru. Îl trimiți ca `office` în `GET
                /leads`.
            name:
              type: string
              description: >-
                Numele punctului de lucru. Sediul are numele „Sediu”, în limba
                răspunsului.
          required:
            - id
            - name
          description: Punctul de lucru al colegului; `null` dacă nu are unul.
        projects:
          type: array
          items:
            type: string
          description: >-
            La un dezvoltator: codurile ansamblurilor pe care lucrează colegul.
            Titularul și administratorii lucrează pe toate, iar la ei lista e
            goală.
        active:
          type: boolean
          description: >-
            `false` pentru un coleg dezactivat: rămâne în echipă, fără acces și
            fără cereri noi.
        has_account:
          type: boolean
          description: >-
            `false` pentru un coleg venit dintr-un CRM care nu și-a făcut încă
            un cont.
        joined_at:
          type:
            - string
            - 'null'
          description: Momentul în care a intrat în firmă (ISO 8601).
      required:
        - id
        - name
        - email
        - phone
        - role
        - position
        - office
        - projects
        - active
        - has_account
        - joined_at
      title: MemberApiResource
    Problem:
      type: object
      title: Problem
      properties:
        type:
          type: string
          format: uri
          description: Adresa tipului de problemă (RFC 9457).
        title:
          type: string
          description: Rezumatul problemei, în limba cererii.
        status:
          type: integer
          description: Codul HTTP.
        code:
          type: string
          description: >-
            Codul stabil al refuzului, după care tratezi eroarea (lista e în
            pagina Erori).
        detail:
          type: string
          description: Explicația, în limba cererii.
        existing:
          type: object
          properties:
            code:
              type: string
              description: Codul public al anunțului existent.
            external_ref:
              type:
                - string
                - 'null'
              description: >-
                Id-ul tău pentru anunțul existent, dacă l-ai pus tu cu `PUT
                /listings/ref/{ref}`. Altfel `null`.
          required:
            - code
            - external_ref
          description: >-
            Doar la `409 duplicate_listing`: anunțul pe care îl ai deja pentru
            aceeași proprietate.
      required:
        - type
        - title
        - status
        - code
        - detail
    ValidationProblem:
      type: object
      title: ValidationProblem
      properties:
        type:
          type: string
          format: uri
          description: Adresa tipului de problemă (RFC 9457).
        title:
          type: string
          description: Rezumatul problemei, în limba cererii.
        status:
          type: integer
          description: 'Codul HTTP: `422`.'
        errors:
          type: array
          items:
            type: object
            properties:
              pointer:
                type: string
                description: Câmpul la care se referă, ca JSON Pointer (`/features/2`).
              code:
                type: string
                description: Regula încălcată, ca cod stabil (lista e în pagina Erori).
              detail:
                type: string
                description: >-
                  Explicația, în limba cererii. Textul se poate schimba, așa că
                  tratezi eroarea după `code`.
            required:
              - pointer
              - code
              - detail
          description: Câte o intrare pentru fiecare câmp care nu trece regulile.
      required:
        - type
        - title
        - status
        - errors
  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.