Verwenden Sie die GraphQL-REST-API, um Vorschläge anzuzeigen, die aus externen Anwendersuchen erstellt wurden

  • Freigeben Version: Zurich
  • Aktualisiert 31. Juli 2025
  • 2 Minuten Lesedauer
  • Senden Sie eine Anforderung an den GraphQL-REST-API-Endpunkt, um Suchvorschläge abzurufen, die aus Suchvorgängen von selbst registrierten externen Anwendern erstellt wurden. Dieser Endpunkt ermöglicht den Zugriff nicht authentifizierter Gastanwender.

    Vorbereitungen

    Stellen Sie sicher, dass die folgenden Bedingungen in Ihrer Instanz erfüllt sind:
    • Das Plugin „Domänentrennung“ ist nicht aktiviert. Weitere Informationen zu diesem Plugin finden Sie unter Plugin „Domänentrennung“ .
    • Das Plugin Explicit Roles (com.Glide.Explicit_roles) ist aktiviert. Weitere Informationen zu diesem Plugin finden Sie unter Explizite Rollen .
    • Externe Anwender mit der Rolle „snc_external“ haben Suchen in Suchanwendungen übermittelt, die Suchvorschläge generieren, z. B. ServiceNow® Serviceportal, Now Mobile, Oder ServiceNow® Virtual Agent.
    • Die glide.search.suggestions.allow_guest_userSystemeigenschaft ist auf festgelegt Wahr . Weitere Informationen zum Festlegen eines Systemeigenschaftswerts finden Sie unter Systemeigenschaft hinzufügen.
    Rufen Sie die sys_ID der Suchanwendung ab, für die Sie Suchvorschläge für externe Anwender abrufen möchten.
    Hinweis:
    Anwender mit den Rollen „search_Application_admin“, „Agent_Workspace_user“ oder „Workspace_user“ können diese sys_ID abrufen, indem sie sie aus dem Suchanwendungsdatensatz in der Tabelle „Suchanwendungskonfiguration“ [sys_search_context_config] kopieren.

    Laden Sie einen GraphQL-Client einer Drittpartei herunter, z. B. den GraphiQL-, Insomnia- oder Postman-Client.

    Erforderliche Rolle: keine

    Warum und wann dieser Vorgang ausgeführt wird

    Suchvorschläge erstellt Vorschläge für Suchvorgänge, die von selbst registrierten externen Anwendern durchgeführt werden. Wenn glide.search.suggestions.allow_guest_userSystemeigenschaft ist auf festgelegt Wahr , Nicht authentifizierte Gastanwender können auf den GraphQL REST API-Endpunkt für Ihre Instanz zugreifen, um Suchvorschläge für externe Anwender für eine Suchanwendung abzurufen.

    Für diesen GraphQL-REST-API-Endpunkt ist keine Authentifizierung erforderlich oder erzwungen.
    Hinweis:
    Nicht authentifizierte Gastanwender können nur Suchvorschläge aus der globalen Domäne abrufen. Wenn die Domänentrennung in Ihrer Instanz aktiviert ist, können Gastanwender keine Suchvorschläge abrufen.

    Prozedur

    1. Konfigurieren Sie in Ihrem Drittanbieter-GraphQL-Client eine neue Anforderung, die die HTTP-POST-Methode verwendet.
    2. Legen Sie den Endpunkt für die Anforderung auf den GraphQL-REST-API-Endpunkt für Ihre Instanz fest. https://<instance name>.service-now.com/api/now/graphql .
    3. Legen Sie den Anforderungstext auf die folgende GraphQL-Abfrage fest, die ersetzt <search_application_sys_id> Mit der sys_ID der Suchanwendung, für die Sie Suchvorschläge für externe Anwender abrufen möchten:
      {
        GlideSearch_Query {
          suggestions(searchContextConfigId: "<search_application_sys_id>", searchTerm: "") {
            term
            data {
              name
              records {
                type
                columns {
                  label
                  fieldName
                  value
                  displayValue
                }
              }
            }
          }
        }
      }

    Ergebnisse

    Das System gibt Suchvorschläge aus Anwendungssuchen von selbst registrierten externen Anwendern als JSON-Objekt zurück, wie in diesem Beispiel gezeigt:
    {
      "data": {
        "GlideSearch_Query": {
          "suggestions": {
            "term": "",
            "data": [
              {
                "records": [
                  {
                    "type": "POPULAR_QUERY",
                    "columns": [
                      {
                        "label": "name",
                        "displayValue": "automatic replies",
                        "value": "automatic replies",
                        "fieldName": "name"
                      }
                    ]
                  },
                  {
                    "type": "POPULAR_QUERY",
                    "columns": [
                      {
                        "label": "name",
                        "displayValue": "contact group",
                        "value": "contact group",
                        "fieldName": "name"
                      }
                    ]
                  },
                  {
                    "type": "POPULAR_QUERY",
                    "columns": [
                      {
                        "label": "name",
                        "displayValue": "tablet",
                        "value": "tablet",
                        "fieldName": "name"
                      }
                    ]
                  },
                  {
                    "type": "POPULAR_QUERY",
                    "columns": [
                      {
                        "label": "name",
                        "displayValue": "laptop",
                        "value": "laptop",
                        "fieldName": "name"
                      }
                    ]
                  },
                  {
                    "type": "POPULAR_QUERY",
                    "columns": [
                      {
                        "label": "name",
                        "displayValue": "new email account",
                        "value": "new email account",
                        "fieldName": "name"
                      }
                    ]
                  }
                ],
                "name": "Popular searches"
              }
            ]
          }
        }
      }
    }