---
title: "Exposé abrufen"
url: "https://maklerportal.apim.eu/apis/expose-erstellen/versions/68a05fe4-408a-4a77-bd68-eebadc995624/operations/exposeAbrufen"
---

> Full API specification: https://maklerportal.apim.eu/apis/expose-erstellen/versions/68a05fe4-408a-4a77-bd68-eebadc995624.md

# Exposé abrufen

`GET` `/exposes/{exposeId}`

Operation ID: `exposeAbrufen`

Liefert Status, Metadaten und den Prüfbericht der Pflichtangaben.

## Path parameters

- `exposeId` (string, required) - Kennung des Exposés.

## Responses

- `200` - Exposé
- `401` - Schlüssel fehlt, ist gesperrt oder ungültig
- `404` - Das Exposé existiert nicht

## OpenAPI definition

```yaml
openapi: 3.0.3
info:
  title: Exposé erstellen
  version: 1.0.0
servers:
  - url: https://api.maklerportal.example/v1
    description: Produktion
  - url: https://sandbox.api.maklerportal.example/v1
    description: Sandbox – Bestand wird nächtlich zurückgesetzt
paths:
  /exposes/{exposeId}:
    parameters:
      - $ref: "#/components/parameters/ExposeId"
    get:
      tags:
        - Exposés
      summary: Exposé abrufen
      description: Liefert Status, Metadaten und den Prüfbericht der Pflichtangaben.
      operationId: exposeAbrufen
      responses:
        "200":
          description: Exposé
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/Expose"
        "401":
          $ref: "#/components/responses/NichtAuthentifiziert"
        "404":
          $ref: "#/components/responses/NichtGefunden"
security:
  - apiKey: []
components:
  parameters:
    ExposeId:
      name: exposeId
      in: path
      required: true
      description: Kennung des Exposés.
      schema:
        type: string
        example: exp_4d9b2e
  schemas:
    Expose:
      type: object
      properties:
        id:
          type: string
          example: exp_4d9b2e
        objekt_id:
          type: string
          example: obj_8f2c1a
        vorlage_id:
          type: string
          example: vrl_klassik
        sprache:
          type: string
          example: de
        status:
          $ref: "#/components/schemas/ExposeStatus"
        pdf_url:
          type: string
          format: uri
          description: "Nur bei `status: fertig` gesetzt. Der Link ist 24 Stunden gültig."
          example: https://api.maklerportal.example/v1/exposes/exp_4d9b2e/pdf
        seiten:
          type: integer
          description: Seitenzahl des erzeugten Dokuments.
          example: 6
        pflichtangaben:
          $ref: "#/components/schemas/Pflichtangabenbericht"
        erstellt_am:
          type: string
          format: date-time
          example: 2026-08-20T09:41:12Z
        fertig_am:
          type: string
          format: date-time
          nullable: true
          example: 2026-08-20T09:41:20Z
    ExposeStatus:
      type: string
      description: Lebenszyklus eines Exposés.
      enum:
        - in_arbeit
        - fertig
        - veroeffentlicht
        - zurueckgezogen
        - fehlgeschlagen
      example: fertig
    Pflichtangabenbericht:
      type: object
      description: Ergebnis der Prüfung anzeigepflichtiger Angaben.
      properties:
        vollstaendig:
          type: boolean
          example: false
        fehlend:
          type: array
          items:
            $ref: "#/components/schemas/Fehlerdetail"
    Fehler:
      type: object
      description: Einheitliches Fehlerformat aller Maklerportal-APIs.
      required:
        - code
        - nachricht
      properties:
        code:
          type: string
          example: pflichtangabe_fehlt
        nachricht:
          type: string
          example: Für die Veröffentlichung fehlen Pflichtangaben aus dem Energieausweis.
        details:
          type: array
          items:
            $ref: "#/components/schemas/Fehlerdetail"
    Fehlerdetail:
      type: object
      properties:
        feld:
          type: string
          example: energieausweis.endenergiebedarf_kwh
        grund:
          type: string
          example: fehlt
  responses:
    NichtAuthentifiziert:
      description: Schlüssel fehlt, ist gesperrt oder ungültig
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Fehler"
          example:
            code: nicht_authentifiziert
            nachricht: Der API-Schlüssel ist ungültig oder wurde zurückgezogen.
            details: []
    NichtGefunden:
      description: Das Exposé existiert nicht
      content:
        application/json:
          schema:
            $ref: "#/components/schemas/Fehler"
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: apikey
      description: >
        Jeder Aufruf trägt einen API-Schlüssel im Header `apikey`. Den Schlüssel

        erzeugen Sie im Maklerportal unter "Meine Anwendungen"; er wird genau
        einmal

        angezeigt.


        An jedem Schlüssel hängen die Scopes, die er nutzen darf. Fehlt einer,

        antwortet die API mit `403` und `code: "scope_fehlt"`; der fehlende
        Scope

        steht in `details[].feld`.
```
