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

# A mandate

> The mandate, by the `id` from the list or the `mandate_id` of the `complex.mandate_*` events, in the same shape as in the list. A mandate the key does not see gets 404. Requires the `listings:read` permission.



## OpenAPI

````yaml en/openapi.json GET /account/mandates/{mandate}
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/mandates/{mandate}:
    get:
      tags:
        - Marketing mandates
      summary: A mandate
      description: >-
        The mandate, by the `id` from the list or the `mandate_id` of the
        `complex.mandate_*` events, in the same shape as in the list. A mandate
        the key does not see gets 404. Requires the `listings:read` permission.
      operationId: v1.mandates.show
      parameters:
        - name: mandate
          in: path
          required: true
          schema:
            type: integer
          description: >-
            The mandate's id, from the list or from the `mandate_id` of the
            `complex.mandate_*` events.
        - 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:
                    $ref: '#/components/schemas/MandateApiResource'
                    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 mandate 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:
    MandateApiResource:
      type: object
      properties:
        id:
          type: integer
          description: >-
            The mandate's id, the same as `mandate_id` in the
            `complex.mandate_*` events.
        side:
          type: string
          description: >-
            Which side the key's company is on: `agency` (it markets the
            development) or `developer` (its developer).
        status:
          type: string
          description: >-
            `requested`, `confirmed`, `refused`, `withdrawn`, `revoked` or
            `expired`.
        step:
          type: string
          enum:
            - better_contract_requested
            - awaiting_developer
            - awaiting_moderation
            - to_declare
            - renewal_to_check
            - confirmed
            - ended
          description: >-
            Where the mandate stands: `awaiting_developer`,
            `awaiting_moderation`, `better_contract_requested`, `to_declare`,
            `renewal_to_check`, `confirmed` or `ended`. The mandates guide says
            what each one means.
        legacy:
          type: boolean
          description: >-
            `true` for a mandate from before the current rules, which the agency
            has to declare.
        complex:
          type:
            - object
            - 'null'
          properties:
            code:
              type: string
              description: The development's public code.
            title:
              type:
                - string
                - 'null'
              description: The development's title.
            url:
              type: string
              description: The development's address on Housera.
          required:
            - code
            - title
            - url
          description: The mandate's development, with `code`, `title` and `url`.
        agency:
          type:
            - object
            - 'null'
          properties:
            id:
              type: integer
              description: The agency's id.
            name:
              type: string
              description: The agency's name.
          required:
            - id
            - name
          description: The agency that markets the development, with `id` and `name`.
        developer:
          type:
            - object
            - 'null'
          properties:
            name:
              type: string
              description: The name of the development's company.
            legal_name:
              type:
                - string
                - 'null'
              description: The developer's registered name.
            tax_id:
              type:
                - string
                - 'null'
              description: >-
                The tax ID, only when the company is verified in the register
                and is a legal entity. `null` for sole traders (PFA) and
                individual enterprises.
            on_platform:
              type: boolean
              description: >-
                `true` when the developer has its own company on Housera and
                decides the request.
          required:
            - name
            - legal_name
            - tax_id
            - on_platform
          description: The development's developer; `null` if it is not known yet.
        valid_until:
          type:
            - string
            - 'null'
          description: >-
            The day the contract ends (`YYYY-MM-DD`); `null` if it has no end
            date.
        decided_via:
          type:
            - string
            - 'null'
          description: >-
            Who decided: `developer`, `moderator` or `legacy`; `null` while the
            request is waiting.
        created_at:
          type: string
          description: When it was requested (ISO 8601).
        decided_at:
          type:
            - string
            - 'null'
          description: >-
            When it was confirmed or refused (ISO 8601); `null` while the
            request is waiting.
        ended_at:
          type:
            - string
            - 'null'
          description: When the mandate ended (ISO 8601); `null` while it is open.
      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: 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.