{"meta":{"title":"Ratenbegrenzungen und Abfragegrenzwerte für die GraphQL-API","intro":"Die GitHub GraphQL-API hat Einschränkungen, um vor übermäßigen oder missbräuchlichen Aufrufen von GitHubServern zu schützen.","product":"GraphQL-API","breadcrumbs":[{"href":"/de/enterprise-server@3.22/graphql","title":"GraphQL-API"},{"href":"/de/enterprise-server@3.22/graphql/overview","title":"Übersicht"},{"href":"/de/enterprise-server@3.22/graphql/overview/rate-limits-and-query-limits-for-the-graphql-api","title":"Ratenbegrenzungen und Abfragegrenzwerte"}],"documentType":"article"},"body":"# Ratenbegrenzungen und Abfragegrenzwerte für die GraphQL-API\n\nDie GitHub GraphQL-API hat Einschränkungen, um vor übermäßigen oder missbräuchlichen Aufrufen von GitHubServern zu schützen.\n\n## Primäre Ratenbegrenzung\n\nRatenbeschränkungen sind standardmäßig für GitHub Enterprise Server deaktiviert. Wende dich an deine Websiteadministrator\\*innen, um die Ratenlimits für deine Instanz zu bestätigen.\n\nWenn Sie ein Websiteadministrator sind, können Sie Ratenbegrenzungen für Ihre Instanz festlegen. Weitere Informationen finden Sie unter [Configuring rate limits (Konfigurieren von Ratenbegrenzungen)](/de/enterprise-server@3.22/admin/configuring-settings/configuring-user-applications-for-your-enterprise/configuring-rate-limits).\n\nWenn Sie eine App für Benutzer oder Organisationen außerhalb Ihrer Instanz entwickeln, gelten die Standardsatzgrenzwerte GitHub . Weitere Informationen finden Sie in der [](/de/graphql/overview/rate-limits-and-query-limits-for-the-graphql-api) Dokumentation unter GitHub Free.\n\n## Knotenlimit\n\nDamit die Schemaüberprüfung bestanden wird, müssen alle GraphQL-API-Aufrufe diese Standards erfüllen:\n\n* Kunden müssen ein `first`- oder `last`-Argument bei jeder [Verbindung](/de/enterprise-server@3.22/graphql/guides/introduction-to-graphql#connection) angeben.\n* Werte von `first` und `last` müssen innerhalb von 1-100 liegen.\n* Einzelne Aufrufe können nicht mehr als 500.000 [Knoten](/de/enterprise-server@3.22/graphql/guides/introduction-to-graphql#node) insgesamt anfordern.\n\n### Berechnen von Knoten in einem Aufruf\n\nIn diesen beiden Beispielen wird gezeigt, wie die Knoten insgesamt in einem Aufruf berechnet werden.\n\n1. Einfache Abfrage:\n\n   <pre>query {\n     viewer {\n       repositories(first: <span class=\"redbox\">50</span>) {\n\nedges {\nrepository:node {\nname\n\nissues(first: <span class=\"greenbox\">10</span>) {\ntotalCount\nedges {\nnode {\ntitle\nbodyHTML\n}\n}\n}\n}\n}\n}\n}\n}</pre>\n\nBerechnung:\n\n   <pre><span class=\"redbox\">50</span>         = 50 repositories\n    +\n   <span class=\"redbox\">50</span> x <span class=\"greenbox\">10</span>  = 500 repository issues\n\n= 550 total nodes</pre>\n\n1. Komplexe Abfrage:\n\n   <pre>query {\n     viewer {\n       repositories(first: <span class=\"redbox\">50</span>) {\n\nedges {\nrepository:node {\nname\n\npullRequests(first: <span class=\"greenbox\">20</span>) {\nedges {\npullRequest:node {\ntitle\n\ncomments(first: <span class=\"bluebox\">10</span>) {\nedges {\ncomment:node {\nbodyHTML\n}\n}\n}\n}\n}\n}\n\nissues(first: <span class=\"greenbox\">20</span>) {\ntotalCount\nedges {\nissue:node {\ntitle\nbodyHTML\n\ncomments(first: <span class=\"bluebox\">10</span>) {\nedges {\ncomment:node {\nbodyHTML\n}\n}\n}\n}\n}\n}\n}\n}\n}\n\n```\n   followers(first: <span class=\"bluebox\">10</span>) {\n```\n\nedges {\nfollower:node {\nlogin\n}\n}\n}\n}\n}</code></pre>\n\nBerechnung:\n\n   <pre><span class=\"redbox\">50</span>              = 50 repositories\n    +\n   <span class=\"redbox\">50</span> x <span class=\"greenbox\">20</span>       = 1,000 pullRequests\n    +\n   <span class=\"redbox\">50</span> x <span class=\"greenbox\">20</span> x <span class=\"bluebox\">10</span> = 10,000 pullRequest comments\n    +\n   <span class=\"redbox\">50</span> x <span class=\"greenbox\">20</span>       = 1,000 issues\n    +\n   <span class=\"redbox\">50</span> x <span class=\"greenbox\">20</span> x <span class=\"bluebox\">10</span> = 10,000 issue comments\n    +\n   <span class=\"bluebox\">10</span>              = 10 followers\n\n= 22,060 total nodes</pre>\n\n## Strategien zur Abfrageoptimierung\n\n* **Anzahl der Objekte begrenzen**: Verwende kleinere Werte für `first`- oder `last`-Argumente, und paginiere durch Ergebnisse.\n* **Abfragetiefe reduzieren**: Vermeide es, tief geschachtelte Objekte anzufordern, es sei denn, es ist erforderlich.\n* **Ergebnisse filtern**: Verwende Argumente, um Daten zu filtern und nur das zurückzugeben, was du benötigst.\n* **Große Abfragen aufteilen**: Unterteile komplexe Abfragen in mehrere einfachere Abfragen.\n* **Nur erforderliche Felder anfordern**: Wähle nur die benötigten Felder aus, anstatt alle verfügbaren Felder anzufordern.\n\nDurch Befolgen dieser Strategien kannst du die Wahrscheinlichkeit verringern, dass Ressourcengrenzwerte erreicht werden, und die Leistung und Zuverlässigkeit deiner API-Anforderungen verbessern."}