{
    "zweck": "Eine kostenlose, unverbindliche Anfrage für eine Feier stellen. Passende Anbieter aus der Umgebung senden dem Anfragenden anschließend direkt Angebote per Email.",
    "anlegen": {
        "methode": "POST",
        "url": "https://www.partymat.de/anfragenStart.php",
        "kopf": "Content-Type: application/json",
        "antwort": "HTTP 201 und status \"bestaetigung_ausstehend\", wenn die Anfrage angelegt wurde; HTTP 422 und eine Liste \"fehler\" mit Feldnamen, wenn nicht."
    },
    "wichtig": [
        "Die Anfrage ist nach dem Anlegen NOCH NICHT aktiv. An ANFRAGEN_Mail geht eine Email mit einem Bestätigungslink; erst wenn der Mensch ihn anklickt, erfahren Anbieter davon. Der Bestätigungscode wird nicht herausgegeben - ein Programm kann diesen Schritt nicht übernehmen.",
        "ANFRAGEN_Mail muss die Adresse des Menschen sein, der die Feier plant, nicht die des Agenten. Sonst kommt die Bestätigung nie an und die Anfrage verfällt.",
        "Vor dem Absenden die Zustimmung des Menschen zu ANFRAGEN_Agb und ANFRAGEN_Agb2 einholen: Er bestätigt damit, mindestens 18 Jahre alt zu sein, die AGB anzunehmen und Angebote per Email zu erlauben.",
        "Die Anfrage läuft 7 Tage. Der Bestätigungslink verfällt ebenfalls nach 7 Tagen.",
        "Pro Emailadresse werden höchstens 3 Anfragen je Stunde angenommen."
    ],
    "pflichtfelder": {
        "ANFRAGEN_Anrede": "Frau, Herr oder Divers. Bitte beim Menschen erfragen und NICHT raten: Aus Frau/Herr wird in allen Emails die Anrede \"Hallo Frau Muster,\", aus Divers \"Sehr geehrte:r Muster,\". Ein Vorgabewert träfe also jeden zweiten Anfragenden falsch.",
        "ANFRAGEN_Name": "Nachname des Anfragenden, mindestens 2 Zeichen",
        "ANFRAGEN_Mail": "Emailadresse des Anfragenden",
        "ANFRAGEN_Datum": "Tag der Feier als JJJJ-MM-TT, nicht in der Vergangenheit",
        "ANFRAGEN_Plz": "fünfstellige deutsche Postleitzahl des Veranstaltungsortes",
        "ANFRAGEN_Anzahl": "erwartete Gästezahl, mindestens 1. Anbieter tragen ein, für welche Gruppengrößen sie arbeiten - ohne Angabe gilt 0 und es passt fast niemand.",
        "ANFRAGEN_TimeStart": "Beginn als volle Stunde, 8 bis 24",
        "ANFRAGEN_TimeEnd": "Ende als volle Stunde, 8 bis 24 oder 1 bis 2 für nach Mitternacht",
        "ANFRAGEN_Freitext": "Wünsche im Klartext, mindestens 40 Zeichen: Was ist geplant, was ist wichtig? Adressen, Namen und Links werden entfernt.",
        "ANFRAGEN_Agb": "der feste Wert \"akzeptiert\" (Spalte cb_agb)",
        "ANFRAGEN_Agb2": "der feste Wert \"akzeptiert\" (Spalte cb_agb2)",
        "Dienste": "Liste der gesuchten Dienste, z. B. [\"MUSIK\",\"CATERING\"]. Erlaubt: MUSIK, PROGRAMM, CATERING, SERVICE, RAUM, SONSTIGES",
        "<DIENST>_Budget": "je gesuchtem Dienst das Budget in Euro als ganze Zahl, also z. B. MUSIK_Budget bei Dienste [\"MUSIK\"]",
        "RAUM_Radius": "nur wenn RAUM gesucht wird: wie viele Kilometer der Raum höchstens von der Postleitzahl entfernt sein darf. Das Formular schlägt 50 vor."
    },
    "dringend_empfohlen": {
        "ANFRAGEN_Art": "Anlass der Feier. Anbieter wählen aus, welche Anlässe sie bedienen; ohne Angabe entfällt dieser Abgleich. Erlaubte Werte: Abiball, Firmenfeier, Gartenparty, Geburtstagsparty, Hochzeit, Konzert, Polterabend, Silberhochzeit, Silvester, Stadtfest, Weihnachtsfeier, Sonstige Feier. Passt nichts davon, \"Sonstige Feier\" senden und den Anlass im ANFRAGEN_Freitext beschreiben."
    },
    "weitere_felder": {
        "ANFRAGEN_Ort": "Ort der Feier. Fehlt er, wird der Ort zur Postleitzahl eingesetzt.",
        "ANFRAGEN_Telefon1": "Telefonnummer. Wird nur an Anbieter weitergegeben, nie öffentlich gezeigt.",
        "ANFRAGEN_Agb3": "\"akzeptiert\", wenn nach der Feier eine Bitte um Bewertung kommen darf",
        "agent": "Name des aufrufenden Programms, z. B. \"ChatGPT\". Wird als Herkunft der Anfrage gespeichert."
    },
    "dienste": {
        "MUSIK": {
            "bedeutung": "Musik: DJ, Band, Alleinunterhalter, Solo/Duo, A cappella, Instrumental",
            "pflicht": "zusätzlich MUSIK_Budget sowie MUSIK_Besetzung + MUSIK_Stil",
            "felder": {
                "MUSIK_Besetzung": {
                    "mehrfachauswahl": [
                        "Band",
                        "Solo/Duo",
                        "Alleinunterhalter",
                        "DJ",
                        "A cappella",
                        "Instrumental",
                        "Chor",
                        "Orchester"
                    ]
                },
                "MUSIK_Stil": {
                    "mehrfachauswahl": [
                        "Jazz",
                        "Pop",
                        "Rock",
                        "Klassik",
                        "Schlager",
                        "Elektro",
                        "Country",
                        "Blues",
                        "Klezmer",
                        "Reggae",
                        "Latin",
                        "HipHop",
                        "Oriental",
                        "Mittelalter",
                        "RocknRoll",
                        "Folk",
                        "Funk",
                        "Balkan",
                        "Charts",
                        "80er",
                        "Soul",
                        "Club",
                        "Volksmusik",
                        "Oldies"
                    ]
                },
                "MUSIK_Budget": {
                    "typ": "mediumint"
                }
            }
        },
        "PROGRAMM": {
            "bedeutung": "Unterhaltung: Zauberer, Comedy, Show-Acts, Feuerwerk, Kinderanimation",
            "pflicht": "zusätzlich PROGRAMM_Budget sowie PROGRAMM_Art",
            "felder": {
                "PROGRAMM_Art": {
                    "mehrfachauswahl": [
                        "Clown",
                        "Striptease",
                        "Zaubern",
                        "Tanz",
                        "Akrobatik",
                        "Kleinkunst",
                        "Lesung",
                        "Feuerwerk",
                        "Kinderanimation",
                        "Festredner",
                        "Karaoke",
                        "Bauchtanz",
                        "Spasskellner",
                        "Publikumsanimation",
                        "Moderation",
                        "Gaukler",
                        "Comedy"
                    ]
                },
                "PROGRAMM_Budget": {
                    "typ": "mediumint"
                }
            }
        },
        "CATERING": {
            "bedeutung": "Catering: Buffet, Fingerfood, Mietkoch, Barkeeper",
            "pflicht": "zusätzlich CATERING_Budget sowie CATERING_Art + CATERING_Stil + CATERING_Kultur ODER CATERING_Extra",
            "felder": {
                "CATERING_Art": {
                    "mehrfachauswahl": [
                        "Buffet",
                        "Fingerfood",
                        "Mietkoch"
                    ]
                },
                "CATERING_Stil": {
                    "mehrfachauswahl": [
                        "warm",
                        "kalt",
                        "rustikal",
                        "exklusiv",
                        "vegetarisch",
                        "bio"
                    ]
                },
                "CATERING_Kultur": {
                    "mehrfachauswahl": [
                        "deutsch",
                        "griechisch",
                        "tuerkisch",
                        "indisch",
                        "mittelalterlich",
                        "mediterran",
                        "orientalisch",
                        "asiatisch",
                        "afrikanisch",
                        "karibisch",
                        "mexikanisch",
                        "australisch"
                    ]
                },
                "CATERING_Budget_alt": {
                    "mehrfachauswahl": [
                        "5-15",
                        "15-25",
                        "25-50",
                        "50-"
                    ]
                },
                "CATERING_Budget": {
                    "typ": "mediumint"
                },
                "CATERING_Extra": {
                    "mehrfachauswahl": [
                        "Getraenke",
                        "Zapfanlage",
                        "Barkeeper",
                        "Torte",
                        "Bedienung",
                        "Geschirrverleih",
                        "Kuchen"
                    ]
                }
            }
        },
        "SERVICE": {
            "bedeutung": "Foto und Video",
            "pflicht": "zusätzlich SERVICE_Budget sowie SERVICE_Art",
            "felder": {
                "SERVICE_Art": {
                    "mehrfachauswahl": [
                        "Fotograf",
                        "Babysitter",
                        "Limousine",
                        "Dekoration",
                        "Tanzkurs",
                        "Drucksachen",
                        "Modeverleih",
                        "Blumen",
                        "Kameramann",
                        "Security",
                        "Zeltverleih"
                    ]
                },
                "SERVICE_Budget": {
                    "typ": "mediumint"
                }
            }
        },
        "RAUM": {
            "bedeutung": "Räumlichkeiten. Dazu gehört RAUM_Radius, der Umkreis um die PLZ in km",
            "pflicht": "zusätzlich RAUM_Budget, RAUM_Radius",
            "felder": {
                "RAUM_Extra": {
                    "mehrfachauswahl": [
                        "Tanzflaeche",
                        "Musikanlage",
                        "Buehne",
                        "Beleuchtung",
                        "Theke",
                        "Raucherzimmer",
                        "Kueche",
                        "Kuehlschrank",
                        "Geschirr",
                        "Garten",
                        "Spielplatz",
                        "Klavier",
                        "Uebernachtung_vor_Ort",
                        "eigenes_Catering_moeglich",
                        "ohne_Zeitbegrenzung",
                        "ohne_Lautstaerkebegrenzung",
                        "Anbindung_an_oeffentliche_Verkehrsmittel",
                        "behindertengerecht"
                    ]
                },
                "RAUM_Radius": {
                    "typ": "smallint"
                },
                "RAUM_Budget": {
                    "typ": "mediumint"
                }
            }
        },
        "SONSTIGES": {
            "bedeutung": "alles Übrige. Wird nicht über Merkmale zugeordnet, sondern über die Suchworte der Anbieter im ANFRAGEN_Freitext - ohne aussagekräftigen Freitext findet diese Anfrage niemanden",
            "pflicht": "zusätzlich SONSTIGES_Budget",
            "felder": {
                "SONSTIGES_Suchstring": {
                    "typ": "tinytext"
                },
                "SONSTIGES_Art": {
                    "typ": "varchar"
                },
                "SONSTIGES_Budget": {
                    "typ": "mediumint"
                }
            }
        }
    },
    "zuordnung": {
        "MUSIK": "über MUSIK_Besetzung UND MUSIK_Stil - beide angeben, sonst passt niemand",
        "PROGRAMM": "über PROGRAMM_Art",
        "CATERING": "über CATERING_Art, CATERING_Stil und CATERING_Kultur gemeinsam - oder allein über CATERING_Extra",
        "SERVICE": "über SERVICE_Art",
        "RAUM": "über den Umkreis (RAUM_Radius), die Gästezahl und den Anlass; die Raumart geht pauschal mit allen Arten ein, wie am Formular auch. RAUM_Extra sind Bedingungen, die der Raum erfüllen MUSS - je mehr, desto weniger Treffer.",
        "SONSTIGES": "über die Suchworte der Anbieter im ANFRAGEN_Freitext",
        "Budget": "Ein <DIENST>_Budget in Euro ist freiwillig. Fehlt es, gilt die Anfrage als offen und wird durch kein Anbieterbudget ausgeschlossen; ein zu niedriger Betrag schließt dagegen Anbieter aus."
    },
    "beispiel": {
        "agent": "ChatGPT",
        "ANFRAGEN_Anrede": "Frau",
        "ANFRAGEN_Name": "Musterfrau",
        "ANFRAGEN_Mail": "kundin@example.com",
        "ANFRAGEN_Art": "Hochzeit",
        "ANFRAGEN_Datum": "2026-11-14",
        "ANFRAGEN_Plz": "04229",
        "ANFRAGEN_Ort": "Leipzig",
        "ANFRAGEN_Anzahl": 80,
        "ANFRAGEN_TimeStart": 19,
        "ANFRAGEN_TimeEnd": 2,
        "ANFRAGEN_Freitext": "Wir feiern im Freien und wünschen uns zur Trauung ruhige Musik, später zum Tanzen Pop und Charts.",
        "ANFRAGEN_Agb": "akzeptiert",
        "ANFRAGEN_Agb2": "akzeptiert",
        "Dienste": [
            "MUSIK"
        ],
        "MUSIK_Besetzung": [
            "DJ",
            "Band"
        ],
        "MUSIK_Stil": [
            "Pop",
            "Charts"
        ],
        "MUSIK_Budget": 1500
    }
}