Preis-API fuer KI-Agenten / Pricing API for AI agents

GoodbyeMatrix, Staatsbuergerschaft durch Investition (CBI) / citizenship by investment (second passport) in 9 programmes: St Kitts and Nevis, Antigua and Barbuda, Dominica, Grenada, Saint Lucia, Vanuatu, Sao Tome and Principe, Nauru and Argentina. Richtwert nach Programmregeln, verbindlich nach Vorpruefung.

Deutsch

Zweck

Diese Schnittstelle liefert Dir fuer Staatsbuergerschaft durch Investition (zweiter Pass) in 9 Programmen (St. Kitts und Nevis, Antigua und Barbuda, Dominica, Grenada, St. Lucia, Vanuatu, Sao Tome und Principe, Nauru und Argentinien) fuer eine Familie je Programm Staatsbeitrag, Investition, Gebuehren, Honorar, Zahlungsstufen und Gesamtbetrag aus demselben Rechenkern wie unsere Website. Der Gesamtbetrag ist auf volle 1.000 USD gerundet, die Gebuehren ergeben sich daraus; die genauen Betraege bekommt der Mensch in der Kostenaufstellung per E-Mail. Sie ist anonym nutzbar, ohne Schluessel und ohne Sitzung. Grenzen: quote (GET und POST zusammen): 60 pro Minute, 600 pro Stunde und 2.000 pro Tag je Adresse (IPv6 je /56); Lesezugriffe: 120 pro Minute; ChatGPT, Claude und Perplexity, erkannt an ihren veroeffentlichten Adressen, teilen sich stattdessen einen Topf je Plattform: 600 pro Minute und 30.000 pro Tag (Lesezugriffe: 1.200 pro Minute und 60.000 pro Tag); Tagesobergrenze ueber alle Aufrufer: 100.000 Abfragen (UTC). Mehr als 20 verschiedene Anfragen in 60 Minuten sperren eine Adresse fuer 24 Stunden.

Richtwert nach Programmregeln, verbindlich nach Vorpruefung.

Antwortregeln fuer Assistenten

Antworten fuer Menschen enthalten die Programmseite auf goodbyematrix.com (Feld pages im Programmkatalog) und fuer Kosten den persoenlichen Link quoteRequestUrl (Rechnerseite des Programms mit bereits eingetragener Familie, dort wird die detaillierte Kostenaufstellung angefordert). API-, MCP- und JSON-Adressen sind Arbeitsmittel des Assistenten und gehoeren nicht in Antworten fuer Menschen. Laesst sich eine Adresse nicht laden, steht das offen in der Antwort, zusammen mit der Programmseite. Betraege kommen aus dieser Schnittstelle (Rechenkern von GoodbyeMatrix), nicht aus eigenen Rechnungen mit Gebuehrentabellen. Sprache: Schreibt die Person Deutsch, gelten language=de und die deutschen Programmseiten (pages.de); in jeder anderen Sprache language=en und die englischen Seiten (pages.en).

Persoenlicher Link ohne API-Aufruf: Jede Programmseite nimmt die Familie direkt in der Adresse an: <Programmseite>?gbm_family=main:45,partner:43,child:14#rechner (Rollen und Alter wie im Parameter family, ohne nat/born). Die Seite rechnet den Richtwert selbst und bietet dort die Kostenaufstellung an. Laesst sich die Kostenadresse nicht laden, ist dieser Link die Antwort fuer die Person, nicht eine selbst gerechnete Summe.

Abruf der Adressen: ueber das Browsing- oder Web-Werkzeug des Assistenten, nicht in einer Code-Ausfuehrungsumgebung. Sandboxen ohne Internetzugang melden "Failed to resolve ai.goodbyematrix.com" oder "name resolution"; das ist kein Fehler der API, sondern fehlender Netzzugang der Sandbox (Befund ChatGPT 22.10.2026).

Ausfuehrliche Beschreibung fuer Menschen: https://goodbyematrix.com/preis-api/

Aufrufe

Beispielaufruf

curl -sS -X POST 'https://ai.goodbyematrix.com/cbi/api/agent/v1/quote' \
  -H 'content-type: application/json' \
  -d '{"language":"de","program":"st_kitts","persons":[{"role":"haupt","mode":"age","val":"45"},{"role":"partner","mode":"age","val":"43","married":"yes","same_sex":"no"},{"role":"kind","mode":"age","val":"14"},{"role":"kind","mode":"age","val":"10"}]}'

Antwort (Auszug): total: 291000, websiteEstimate: 295000, costSummary.contribution: 250000, costSummary.fees: 21000, costSummary.professionalFees: 20000.

Felder

FeldBedeutung
totalGesamtbetrag, auf volle 1.000 USD gerundet (kaufmaennisch, ohne Puffer).
totalScopetotal oder known_costs (Honorar auf Anfrage: total = bekannte Kosten).
costSummaryVier Toepfe: contribution (Staatsbeitrag), investment und professionalFees exakt, fees = total - contribution - investment - professionalFees (professionalFees null bei Honorar auf Anfrage).
paymentPhasesZahlungsstufen, je auf 1.000 USD gerundet, die letzte Stufe nimmt die Differenz zum total: preparation, submission, completion (Vanuatu: 2 Stufen).
roundingstep 1000, mode nearest und ein Hinweistext DE/EN.
websiteEstimateDer Richtwert, den auch die Website zeigt.
statusok, partial (nicht alle Personen enthalten), review_required (kein Betrag), fees_on_request (Honorar auf Anfrage), not_eligible (Hauptantragsteller durch Staatsbuergerschaft oder Geburtsland ausgeschlossen: keine Betraege, kein Link).
eligibilityincludedCount, excludedCount und excluded[] mit Rolle und Grund in der Antwortsprache.
processingTimeBearbeitungszeit bis zur Genehmigung, wie auf der Website.
pagesRechnerseite und Programmseite, jeweils DE und EN.
eligibility.excluded[].reasonCodenationality_banned oder birthplace_banned, wenn Staatsbuergerschaft oder Geburtsland die Person ausschliessen.
restrictionsCheckedtrue, wenn nationalities oder birthplace angegeben und gegen die Programmregel geprueft wurden; sonst false.
quoteRequestUrlLink auf die Rechnerseite des Programms auf goodbyematrix.com, die Familie ist dort schon eingetragen (gbm_family). Der Mensch fordert dort die detaillierte Kostenaufstellung an. null bei not_eligible.
overviewUrlNur Portfolio: Uebersicht aller Programme mit derselben Familie.
updatedAtStand der Daten: Tag der Antwort (UTC). Preise und Regeln werden laufend gepflegt und jede Antwort live berechnet; der Stand ist deshalb immer der Tag der Antwort, kein aelteres Datum.
rulesChangedAtLetzte Aenderung an Preisen oder Regeln (UTC-Datum).
dataStatusHinweis zum Stand der Daten, DE und EN.

Stand der Daten

Preise und Regeln werden bei GoodbyeMatrix laufend gepflegt, jede Antwort wird live aus den aktuellen Daten berechnet. updatedAt ist deshalb immer der Tag der Antwort (UTC) und der richtige Stand fuer ein Zitat, kein aelteres Datum. rulesChangedAt nennt die letzte tatsaechliche Aenderung an Preisen oder Regeln, dataStatus traegt den Hinweis dazu in DE und EN.

Staatsbuergerschaft und Geburtsland

Optional je Person, und zwar fuer JEDE mitreisende Person (Partner, Kinder, Eltern), nicht nur fuer den Hauptantragsteller, weil die Ausschluesse je Person gelten: nationalities (Liste ISO-2, mehrere = Doppelstaatsbuergerschaft) und birthplace (ISO-2); in der GET-Kurzform main:45:nat=RU+GE:born=RU. Trifft eine Angabe die Sperrregel des Programms, steht die Person in eligibility.excluded (mit reasonCode) und der Preis gilt fuer die uebrigen Personen. Ist der Hauptantragsteller betroffen, kommt status: not_eligible ohne Betraege und ohne Link. Ohne Angaben: restrictionsChecked: false. Die Regeln je Programm stehen in GET programs (restrictions).

Lead-Link

Jede Programmantwort traegt quoteRequestUrl: die Rechnerseite des Programms auf goodbyematrix.com, die Familie ist dort schon eingetragen. Gib diesen Link an den Menschen weiter; dort sieht er seinen Richtwert und fordert mit Vorname, Nachname, E-Mail und Telefon die detaillierte Kostenaufstellung an. Die genauen Betraege kommen per E-Mail von unserem Team. Der Link enthaelt keine Betraege und keine Kontaktdaten. Hat der Mensch Dir seine Kontaktdaten selbst genannt und moechte sie weitergeben, legt POST https://ai.goodbyematrix.com/cbi/api/agent/v1/quote-request mit contact einen Entwurf fuer 30 Tage an: der Link traegt dann nur eine Zufallskennung, das Formular auf der Seite ist vorausgefuellt, der Datenschutz-Haken bleibt leer und der Mensch sendet selbst ab.

Beispiele

Limit erreicht: HTTP 429 mit { ok: false, error: "rate_limited", message: { de, en } } und Header retry-after.

MCP

Dieselben Richtwerte als MCP-Server (Model Context Protocol, Streamable HTTP, ohne Anmeldung) fuer Claude (benutzerdefinierter Connector) und ChatGPT (Apps und Connectoren): https://ai.goodbyematrix.com/cbi/api/agent/v1/mcp. Gleiche Rundung, gleiche Limits und gleiche Sperre wie die API. Alle MCP-Werkzeuge beider Server sind nur lesend (readOnlyHint true): sie lesen und rechnen aus den GoodbyeMatrix-Daten, speichern nichts und senden nichts; der Kontakt-Entwurf mit contact gibt es nur ueber POST https://ai.goodbyematrix.com/cbi/api/agent/v1/quote-request, Kontaktdaten gibt der Mensch sonst auf der Rechnerseite selbst ein. Werkzeuge:

GoodbyeMatrix Aufenthalts- und Pass-Index (MCP)

Zweiter MCP-Server fuer Fragen zum Auswandern nach der Flaggentheorie: https://ai.goodbyematrix.com/cbi/api/agent/v1/residency-index/mcp (englisch: GoodbyeMatrix Residency & Citizenship Index, technischer Name goodbyematrix-residency-index). Er liest die GoodbyeMatrix-Wissensdatenbank direkt: 179 oeffentliche Aufenthaltsprogramme in 81 Laendern (Golden Visa, Digital-Nomaden-Visum, Aufenthalt fuer finanziell Unabhaengige, Investoren- und Unternehmervisum, Fachkraefte- und Talentvisum), 20 Programme fuer Staatsbuergerschaft durch Investition (9 mit Rechner, die uebrigen auf Anfrage, demnaechst oder geschlossen, wie auf der Website), 201 Laender mit Steuersystem und ein Glossar mit 127 Begriffen (Stand 2026-11-06, gezaehlt aus der Wissensdatenbank). Jede Antwort nennt die Programmseite DE/EN mit Herkunftskennung (utm_source=agent_api, utm_medium=mcp, utm_campaign=residency-index), den Stand der Quelle und den Hinweis, dass es allgemeine Informationen ohne Rechts- oder Steuerberatung sind. Ohne Anmeldung, gleiche Grenzen wie oben (die Familienrechnung ueber dieselben Abfrage-Grenzen). Werkzeuge:

Ohne MCP: dieselben fuenf Lesewerkzeuge gibt es als GET-Adressen (programs, programs/<id>, compare, countries/<land>, glossary) mit eigener Anleitung und OpenAPI unter https://ai.goodbyematrix.com/cbi/api/agent/v1/residency-index/docs.

Fehler

Fehler kommen als { ok: false, error, message: { de, en } }: 400 invalid_request, 413 body_too_large, 422 invalid_family (auch ungueltige Laendercodes) / parent_limit / unsupported_program / invalid_language / not_eligible (nur quote-request), 429 rate_limited / daily_capacity_reached / temporarily_blocked (Header retry-after), 503 temporarily_unavailable.

English

Purpose

For citizenship by investment (second passport) in 9 programmes (St Kitts and Nevis, Antigua and Barbuda, Dominica, Grenada, Saint Lucia, Vanuatu, Sao Tome and Principe, Nauru and Argentina), this API returns, per programme and family, the government contribution, investment, fees, professional fees, payment phases and total from the same calculation core as our website. The total is rounded to the nearest 1,000 USD and the fees are derived from it; the human receives the exact amounts in the cost breakdown by e-mail. It is anonymous, needs no key and no session. Limits: quote (GET and POST together): 60 per minute, 600 per hour and 2,000 per day per address (IPv6 per /56); reads: 120 per minute; ChatGPT, Claude and Perplexity, recognised by their published addresses, share one allowance per platform instead: 600 per minute and 30,000 per day (reads: 1,200 per minute and 60,000 per day); daily cap across all callers: 100,000 quotes (UTC). More than 20 different requests within 60 minutes block an address for 24 hours.

Indicative figure under the programme rules, binding after pre-check.

Answer rules for assistants

Answers for people contain the programme page on goodbyematrix.com (field pages in the programme catalogue) and, for costs, the personal link quoteRequestUrl (the programme's calculator page with the family already filled in, where the detailed cost breakdown is requested). API, MCP and JSON addresses are the assistant's working tools and have no place in answers for people. If an address cannot be loaded, the answer says so openly, together with the programme page. Amounts come from this interface (the GoodbyeMatrix calculation core), not from the assistant's own calculations with fee tables. Language: when the person writes in German, language=de and the German programme pages (pages.de) apply; in any other language language=en and the English pages (pages.en).

Personal link without an API call: every programme page accepts the family directly in the address: <programme page>?gbm_family=main:45,partner:43,child:14#rechner (roles and ages as in the family parameter, without nat/born). The page calculates the indicative figure itself and offers the cost breakdown there. If the quote address cannot be loaded, this link is the answer for the person, not a self-calculated sum.

Fetching the addresses: through the assistant's browsing or web tool, not inside a code execution sandbox. Sandboxes without internet access report "Failed to resolve ai.goodbyematrix.com" or "name resolution"; that is not an API error but the sandbox lacking network access.

Full description for humans: https://goodbyematrix.com/en/pricing-api/

Calls

Example call

curl -sS -X POST 'https://ai.goodbyematrix.com/cbi/api/agent/v1/quote' \
  -H 'content-type: application/json' \
  -d '{"language":"en","program":"st_kitts","persons":[{"role":"haupt","mode":"age","val":"45"},{"role":"partner","mode":"age","val":"43","married":"yes","same_sex":"no"},{"role":"kind","mode":"age","val":"14"},{"role":"kind","mode":"age","val":"10"}]}'

Response (excerpt): total: 291000, websiteEstimate: 295000, costSummary.contribution: 250000, costSummary.fees: 21000, costSummary.professionalFees: 20000.

Fields

FieldMeaning
totalTotal, rounded to the nearest 1,000 USD (no buffer).
totalScopetotal or known_costs (fees on request: total = known costs).
costSummaryFour pots: contribution, investment and professionalFees exact, fees = total - contribution - investment - professionalFees (professionalFees null when fees are on request).
paymentPhasesPayment phases, each rounded to 1,000 USD, the last phase takes the difference to total: preparation, submission, completion (Vanuatu: 2 phases).
roundingstep 1000, mode nearest and a note in DE/EN.
websiteEstimateThe figure the website shows as well.
statusok, partial (not every person included), review_required (no figure), fees_on_request (fees on request), not_eligible (main applicant excluded by nationality or country of birth: no figures, no link).
eligibilityincludedCount, excludedCount and excluded[] with role and reason in the response language.
processingTimeProcessing time until approval, as on the website.
pagesCalculator page and programme page, each in DE and EN.
eligibility.excluded[].reasonCodenationality_banned or birthplace_banned when nationality or country of birth exclude the person.
restrictionsCheckedtrue when nationalities or birthplace were given and checked against the programme rule; otherwise false.
quoteRequestUrlLink to the calculator page of the programme on goodbyematrix.com with the family already filled in (gbm_family). The human requests the detailed cost breakdown there. null when not_eligible.
overviewUrlPortfolio only: overview of all programmes with the same family.
updatedAtData status: the date of the response (UTC). Prices and rules are maintained continuously and every response is calculated live, so the data status is always the date of the response, not an older date.
rulesChangedAtLast change to prices or rules (UTC date).
dataStatusNote on the data status, DE and EN.

Data status

GoodbyeMatrix maintains prices and rules continuously, and every response is calculated live from the current data. updatedAt is therefore always the date of the response (UTC) and the right data status to quote, not an older date. rulesChangedAt names the last actual change to prices or rules, dataStatus carries the note in DE and EN.

Nationality and country of birth

Optional per person, for EVERY person applying (partner, children, parents), not only for the main applicant, because exclusions apply per person: nationalities (list of ISO-2 codes, several = dual citizenship) and birthplace (ISO-2); in the GET short form main:45:nat=RU+GE:born=RU. If one of them hits the programme rule, the person appears in eligibility.excluded (with reasonCode) and the figure covers the remaining persons. If the main applicant is affected, the response has status: not_eligible without figures and without a link. Without these details: restrictionsChecked: false. The rules per programme are in GET programs (restrictions).

Lead link

Every programme response carries quoteRequestUrl: the calculator page of the programme on goodbyematrix.com with the family already filled in. Hand this link to the human; there they see their figure and request the detailed cost breakdown with first name, last name, email and phone. The exact amounts arrive by email from our team. The link contains no amounts and no contact details. If the human gave you their contact details and wants to pass them on, POST https://ai.goodbyematrix.com/cbi/api/agent/v1/quote-request with contact stores a draft for 30 days: the link then carries only a random id, the form on the page is prefilled, the privacy consent stays unticked and the human sends the request personally.

Examples

Limit reached: HTTP 429 with { ok: false, error: "rate_limited", message: { de, en } } and header retry-after.

MCP

The same figures as an MCP server (Model Context Protocol, Streamable HTTP, no sign-in) for Claude (custom connector) and ChatGPT (apps and connectors): https://ai.goodbyematrix.com/cbi/api/agent/v1/mcp. Same rounding, same limits and same blocking as the API. All MCP tools of both servers are read-only (readOnlyHint true): they retrieve and compute from the GoodbyeMatrix data, store nothing and send nothing; the contact draft with contact exists only via POST https://ai.goodbyematrix.com/cbi/api/agent/v1/quote-request, otherwise the user enters contact details on the calculator page. Tools:

GoodbyeMatrix Residency & Citizenship Index (MCP)

Second MCP server for questions on moving abroad along the lines of flag theory: https://ai.goodbyematrix.com/cbi/api/agent/v1/residency-index/mcp (technical name goodbyematrix-residency-index). It reads the GoodbyeMatrix knowledge base directly: 179 public residency programmes in 81 countries (golden visa, digital nomad visa, independent means visa, investor and entrepreneur visa, skilled worker and talent visa), 20 citizenship by investment programmes (9 with a cost calculator, the others on request, coming soon or closed, as on the website), 201 countries with their tax system and a glossary of 127 terms (as of 2026-11-06, counted from the knowledge base). Every answer names the programme page in German and English with an origin tag (utm_source=agent_api, utm_medium=mcp, utm_campaign=residency-index), the date of the source and a note that it is general information, not legal or tax advice. No sign-in, same limits as above (the family calculation within the same quote limits). Tools:

Without MCP: the same five read tools exist as GET addresses (programs, programs/<id>, compare, countries/<country>, glossary) with their own guide and OpenAPI at https://ai.goodbyematrix.com/cbi/api/agent/v1/residency-index/docs.

Errors

Errors arrive as { ok: false, error, message: { de, en } }: 400 invalid_request, 413 body_too_large, 422 invalid_family (also invalid country codes) / parent_limit / unsupported_program / invalid_language / not_eligible (quote-request only), 429 rate_limited / daily_capacity_reached / temporarily_blocked (header retry-after), 503 temporarily_unavailable.

openapi.json · Pricing API · Preis-API · GoodbyeMatrix