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

# Un mandat

> Mandatul, după `id`-ul din listă sau din `mandate_id` al evenimentelor `complex.mandate_*`, în aceeași formă ca în listă. Un mandat pe care cheia nu îl vede primește 404. Cere dreptul `listings:read`.



## OpenAPI

````yaml ro/openapi.json GET /account/mandates/{mandate}
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/mandates/{mandate}:
    get:
      tags:
        - Mandatele de comercializare
      summary: Un mandat
      description: >-
        Mandatul, după `id`-ul din listă sau din `mandate_id` al evenimentelor
        `complex.mandate_*`, în aceeași formă ca în listă. Un mandat pe care
        cheia nu îl vede primește 404. Cere dreptul `listings:read`.
      operationId: v1.mandates.show
      parameters:
        - name: mandate
          in: path
          required: true
          schema:
            type: integer
          description: >-
            Id-ul mandatului, din listă sau din `mandate_id` al evenimentelor
            `complex.mandate_*`.
        - 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:
                    $ref: '#/components/schemas/MandateApiResource'
                    description: Rezultatul cererii.
                required:
                  - data
          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`).
        '404':
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/Problem'
          description: Mandatul nu există sau cheia nu are acces la el (`not_found`).
        '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:
    MandateApiResource:
      type: object
      properties:
        id:
          type: integer
          description: >-
            Id-ul mandatului, același ca `mandate_id` din evenimentele
            `complex.mandate_*`.
        side:
          type: string
          description: >-
            De ce parte e firma cheii: `agency` (comercializează ansamblul) sau
            `developer` (dezvoltatorul lui).
        status:
          type: string
          description: >-
            `requested`, `confirmed`, `refused`, `withdrawn`, `revoked` sau
            `expired`.
        step:
          type: string
          enum:
            - better_contract_requested
            - awaiting_developer
            - awaiting_moderation
            - to_declare
            - renewal_to_check
            - confirmed
            - ended
          description: >-
            Unde a ajuns mandatul: `awaiting_developer`, `awaiting_moderation`,
            `better_contract_requested`, `to_declare`, `renewal_to_check`,
            `confirmed` sau `ended`. Ce înseamnă fiecare e în ghidul mandatelor.
        legacy:
          type: boolean
          description: >-
            `true` pentru un mandat de dinainte de regulile de acum, pe care
            agenția trebuie să-l declare.
        complex:
          type:
            - object
            - 'null'
          properties:
            code:
              type: string
              description: Codul public al ansamblului.
            title:
              type:
                - string
                - 'null'
              description: Titlul ansamblului.
            url:
              type: string
              description: Adresa ansamblului pe Housera.
          required:
            - code
            - title
            - url
          description: Ansamblul mandatului, cu `code`, `title` și `url`.
        agency:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
              description: Id-ul agenției.
            name:
              type: string
              description: Numele agenției.
          required:
            - id
            - name
          description: Agenția care comercializează ansamblul, cu `id` și `name`.
        developer:
          type:
            - object
            - 'null'
          properties:
            name:
              type: string
              description: Numele firmei ansamblului.
            legal_name:
              type:
                - string
                - 'null'
              description: Denumirea dezvoltatorului din registru.
            tax_id:
              type:
                - string
                - 'null'
              description: >-
                Codul fiscal, doar când firma e verificată în registru și e
                persoană juridică. `null` la persoanele fizice autorizate și la
                întreprinderile individuale.
            on_platform:
              type: boolean
              description: >-
                `true` când dezvoltatorul are firma lui pe Housera și decide el
                cererea.
          required:
            - name
            - legal_name
            - tax_id
            - on_platform
          description: Dezvoltatorul ansamblului; `null` dacă nu e cunoscut încă.
        valid_until:
          type:
            - string
            - 'null'
          description: >-
            Ziua în care se încheie contractul (`YYYY-MM-DD`); `null` dacă nu
            are o dată de sfârșit.
        decided_via:
          type:
            - string
            - 'null'
          description: >-
            Cine a decis: `developer`, `moderator` sau `legacy`; `null` cât timp
            cererea așteaptă.
        created_at:
          type: string
          description: Momentul cererii (ISO 8601).
        decided_at:
          type:
            - string
            - 'null'
          description: >-
            Momentul confirmării sau al refuzului (ISO 8601); `null` cât timp
            cererea așteaptă.
        ended_at:
          type:
            - string
            - 'null'
          description: >-
            Momentul în care s-a încheiat mandatul (ISO 8601); `null` cât timp e
            deschis.
      required:
        - id
        - side
        - status
        - step
        - legacy
        - complex
        - agency
        - developer
        - valid_until
        - decided_via
        - created_at
        - decided_at
        - ended_at
      title: MandateApiResource
    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
  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.