---
sourceDocument: Yokohama Erstellen oder ändern Sie Anwendungen
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/yokohama/application-development

 Release :

    - yokohama

ft:locale :

    - de-DE

ft:publication_title :

    - Yokohama Erstellen oder ändern Sie Anwendungen

ft:clusterId :

    - cadev

bundleId :

    - cadev

workflow :

    - Creator


---

Scripted REST API -- ServiceNow Fluent
======================================

Scripted REST API -- ServiceNow Fluent {#ariaid-title1}
=======================================================

* Freigeben Version: Yokohama
* 
* Aktualisiert 30. Januar 2025
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 7 Minuten Lesedauer

Die Scripted REST API enthält Objekte, die die Endpunkte, Abfrageparameter und Header für einen geskripteten REST-Service definieren \[sys_ws_definition\].

RestApi-Objekt {#ariaid-title2}
-------------------------------

Erstellen Sie eine REST API mit Skript \[sys_ws_definition\], um Webservice-Endpunkte zu definieren.
{#restapi-object-now-ts__table_vy2_525_jq__entry__3}

|       Name        |          Typ           |                                                                                                                                                                                                                                                                                                                 Beschreibung                                                                                                                                                                                                                                                                                                                  |
|-------------------|------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| $id               | Zeichenfolge oder Zahl | Erforderlich. Eine eindeutige ID für das Metadatenobjekt, die im folgenden Format bereitgestellt wird: wobei\<value\> ist eine Zeichenfolge oder Zahl. $id: Now.ID[<value>] Wenn Sie die Anwendung erstellen, wird diese ID in eine eindeutige sys_ID gehasht.                                                                                                                                                                                                                                                                                                                                                                                |
| Name              | Zeichenfolge           | Erforderlich. Der Name der API, die in der API-Dokumentation verwendet wird.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| service_id        | Zeichenfolge           | Erforderlich. Der API-Bezeichner, der zur Unterscheidung dieser API in URI-Pfaden verwendet wird. Er muss innerhalb des API-Namespace eindeutig sein.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| aktiv             | Boolean                | Kennzeichnung, die angibt, ob die API Anforderungen verarbeiten kann. Gültige Werte: * „wahr": Die API kann Anforderungen verarbeiten. * „falsch": Die API kann keine Anforderungen verarbeiten. {#restapi-object-now-ts__ul_cxj_srr_4bc} Standardwert: wahr                                                                                                                                                                                                                                                                                                                                                                                  |
| short_description | Zeichenfolge           | Kurze Beschreibung der API, die in der API-Dokumentation verwendet wird.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| verbraucht        | Zeichenfolge           | Eine Liste der Medientypen, die Ressourcen der API verbrauchen können. Standard: application/json,application/xml,text/xml                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| doc_link          | Zeichenfolge           | Eine URL mit einer Verknüpfung zur statischen Dokumentation über die API.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| erzwingen_acl     | Array                  | Eine Liste von Variablenbezeichnern von ACL- Objekten oder sys_ids von ACLs, die beim Zugriff auf Ressourcen erzwungen werden sollen \[sys_security_acl\]. Weitere Informationen finden Sie unter [Zugriffssteuerungslisten-API -- ServiceNow Fluent](https://servicenow-prod.fluidtopics.net/KitXDFgut2y2Vpui5LFMFw#acl-api-now-ts "Die API für Zugriffssteuerungslisten enthält Objekte, die Zugriffssteuerungslisten [sys_security_acl] definieren, die Teile einer Anwendung sichern."). Um ACLs nicht zu erzwingen, legen Sie diese Eigenschaft auf ein leeres Array (`[]`) fest. enforce_acl: ['sys_id', acl_variable_identifier] Standard: Geskripteter externer REST-Standard |
| erzeugt           | Zeichenfolge           | Eine Liste der Medientypen, die von Ressourcen der API erzeugt werden können. Standard: application/json,application/xml,text/xml                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| Routen            | Array                  | Die Ressourcen \[sys_ws_operation\] für die API. Weitere Informationen finden Sie unter [Routenobjekt](https://servicenow-prod.fluidtopics.net/ji77clrwtHOkYF7~tzRT3A#routes-object-now-ts "Erstellen Sie eine geskriptete REST-Ressource [sys_ws_operation], um die HTTP-Methode und das Verarbeitungsskript zu definieren und Einstellungen aus dem übergeordneten Service zu überschreiben.").                                                                                                                                                                                                                                                                                     |
| policy            | Zeichenfolge           | Die Richtlinie für den Schutz von Anwendungsdateien bei Download oder Installation. Gültige Werte: * lesen: Dateien können nur angezeigt werden. * geschützt: Benutzer mit Passwortberechtigungen können die Dateien bearbeiten. {#restapi-object-now-ts__ul_pg4_nd2_mbc}                                                                                                                                                                                                                                                                                                                                                                     |
| versions          | Array                  | Eine Liste der Versionen \[sys_ws_version\] für die API. Weitere Informationen finden Sie unter [Versionsobjekt](https://servicenow-prod.fluidtopics.net/ji77clrwtHOkYF7~tzRT3A#version-object-now-ts "Erstellen Sie Versionen für eine geskriptete REST API [sys_ws_version], um Webservice-Endpunkte zu definieren."). Durch die Angabe von Versionen können Sie verschiedene Versionen einer API und deren Status verwalten, z. B. ob sie aktiv, die Standardversion oder veraltet sind.                                                                                                                                                                                           |
[Tabelle : 1. Eigenschaften]

{#restapi-object-now-ts__table_vy2_525_jq}  

    import { RestApi } from '@servicenow/sdk/core'
    import { process } from '../server/handler.js'

    RestApi({
        $id: Now.ID['rest1'],
        name: 'customAPI',
        service_id: 'custom_api',
        consumes: 'application/json',
        routes: [
            {
                $id: Now.ID['route1'],
                path: '/home/{id}',
                script: process,
                parameters: [{ $id: Now.ID['param1'],  name: 'n_param' }],
                headers: [{ $id: Now.ID['header1'],  name: 'n_token' }],
                enforce_acl: [acl],
                version: 1,
            },
        ],
        enforce_acl: [acl],
        versions: [
            {
                $id: Now.ID['v1'],
                version: 1,
            },
        ],
    })

Die referenzierte ACL wird mithilfe des ACL -Objekts definiert:

    import { Acl } from "@servicenow/sdk/core";

    const acl = Acl({
        name: 'My random ACL',
        type: 'rest_endpoint',
        script: `answer = (Math.random() > 0.5)`,
        active: true,
        admin_overrides: false,
        operations: ['execute'],
    })

Routenobjekt {#ariaid-title3}
-----------------------------

Erstellen Sie eine geskriptete REST-Ressource \[sys_ws_operation\], um die HTTP-Methode und das Verarbeitungsskript zu definieren und Einstellungen aus dem übergeordneten Service zu überschreiben.
Verwenden Sie das Routenobjekt innerhalb des RestApi -Objekts.
{#routes-object-now-ts__table_vy2_525_jq__entry__3}

|        Name        |          Typ           |                                                                                                                                                                                                                                                                                                                                                                                                                 Beschreibung                                                                                                                                                                                                                                                                                                                                                                                                                 |
|--------------------|------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| $id                | Zeichenfolge oder Zahl | Erforderlich. Eine eindeutige ID für das Metadatenobjekt, die im folgenden Format bereitgestellt wird: wobei\<value\> ist eine Zeichenfolge oder Zahl. $id: Now.ID[<value>] Wenn Sie die Anwendung erstellen, wird diese ID in eine eindeutige sys_ID gehasht.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Name               | Zeichenfolge           | Der Name der API-Ressource, die in der API-Dokumentation verwendet wird. Standard: der Wert der Pfadeigenschaft                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| Skript             | Skript                 | Erforderlich. Eine Funktion oder ein Inline-Skript, dem ein `Skript` -Tag vorangestellt ist. Das anwenderdefinierte Skript definiert, wie der Vorgang Anforderungen analysiert und beantwortet. Verwenden Sie für Funktionen den Namen einer Funktion, eines Funktionsausdrucks oder einer Standardfunktion, die aus einem JavaScript-Modul exportiert und in die .now.ts- Datei importiert wurde. Informationen zu JavaScript-Modulen finden Sie unter [JavaScript-Module und Bibliotheken von Drittparteien](https://servicenow-prod.fluidtopics.net/jDs_xtwF1HUmVkOBIDsb~A "Optimieren Sie Ihre Codebasis mit JavaScript-Modulen, um zugehörigen Code zu gruppieren, oder fügen Sie Bibliotheken von Drittparteien hinzu, und verwenden Sie ihren Code in Anwendungen wieder."). Inline-Skripts verwenden das `Skript-` Tag im folgenden Format: script: script`gs.info('info')`, |
| aktiv              | Boolean                | Kennzeichnung, die angibt, ob die Ressource verwendet wird. Gültige Werte: * wahr: Die Ressource wird verwendet. * „falsch": Die Ressource wird nicht verwendet. {#routes-object-now-ts__ul_cxj_srr_4bc} Standardwert: wahr                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| path               | Zeichenfolge           | Der Pfad der Ressource relativ zum API-Basispfad. Der relative URI kann Pfadparameter wie `„/abc/{id}"`enthalten. Standard: /                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| short_description  | Zeichenfolge           | Eine kurze Beschreibung der Ressource, die in der API-Dokumentation verwendet wird.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| verbraucht         | Zeichenfolge           | Eine Liste der Medientypen, die die Ressource verbrauchen kann. Diese Eigenschaft kann mit den Methoden PUT, PATCH oder POST überschrieben werden. Standard: Der Wert der Eigenschaft „verbraucht" im RestApi -Objekt                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| erzwingen_acl      | Array                  | Eine Liste von Variablenbezeichnern von ACL- Objekten oder sys_ids von ACLs, die beim Zugriff auf Ressourcen erzwungen werden sollen \[sys_security_acl\]. Weitere Informationen finden Sie unter [Zugriffssteuerungslisten-API -- ServiceNow Fluent](https://servicenow-prod.fluidtopics.net/KitXDFgut2y2Vpui5LFMFw#acl-api-now-ts "Die API für Zugriffssteuerungslisten enthält Objekte, die Zugriffssteuerungslisten [sys_security_acl] definieren, die Teile einer Anwendung sichern."). Um ACLs nicht zu erzwingen, legen Sie diese Eigenschaft auf ein leeres Array (`[]`) fest. enforce_acl: ['sys_id', acl_variable_identifier] Standard: Geskripteter externer REST-Standard                                                                                                                                                                                                |
| erzeugt            | Zeichenfolge           | Eine Liste der Medientypen, die die Ressource produzieren kann. Standard: Der Wert der Eigenschaft „Erzeugt " im RestApi -Objekt                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| request_example    | Zeichenfolge           | Eine gültige Beispielnutzlast des Anforderungstexts für die Ressource, die in der API-Dokumentation verwendet wird.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| method             | Zeichenfolge           | Die HTTP-Methode, die die Ressource implementiert. Gültige Werte: GET, POST, PUT, PATCH, DELETE Standard: GET                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| authorization      | Boolean                | Kennzeichnung, die angibt, ob Anwender für den Zugriff auf die Ressource authentifiziert werden müssen. Gültige Werte: * wahr: Anwender müssen authentifiziert werden, um auf die Ressource zugreifen zu können. * „falsch": Für den Zugriff auf die Ressource ist keine Authentifizierung erforderlich. {#routes-object-now-ts__ul_hkg_kr3_qbc} Standardwert: wahr                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| -Authentifizierung | Boolean                | Kennzeichnung, die angibt, ob ACLs beim Zugriff auf die Ressource erzwungen werden. Gültige Werte: * „wahr": ACLs werden beim Zugriff auf die Ressource erzwungen. * „falsch": ACLs werden beim Zugriff auf die Ressource nicht erzwungen. {#routes-object-now-ts__ul_ofg_sr3_qbc} Standardwert: wahr                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| internalRole       | Boolean                | Kennzeichnung, die angibt, ob für die Route die Rolle „snc_internal" erforderlich ist. Diese Eigenschaft wird nur unterstützt, wenn das Plugin „Explicit Roles" (com.glide.explicit_roles) aktiviert ist. Gültige Werte: * „wahr": Die Route erfordert die Rolle „snc_internal". * „falsch": Für die Route ist die Rolle „snc_internal" nicht erforderlich. {#routes-object-now-ts__ul_ep4_mqx_xbc} Standardwert: wahr                                                                                                                                                                                                                                                                                                                                                                                                                       |
| policy             | Zeichenfolge           | Die Richtlinie für den Schutz von Anwendungsdateien bei Download oder Installation. Gültige Werte: * lesen: Dateien können nur angezeigt werden. * geschützt: Benutzer mit Passwortberechtigungen können die Dateien bearbeiten. {#routes-object-now-ts__ul_pg4_nd2_mbc}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| version            | Nummer                 | Die Version der API. Diese Eigenschaft ist erforderlich, wenn die Eigenschaft „versions" im RestApi -Objekt verwendet wird. Die mit dieser Eigenschaft angegebene Version wird verwendet, um automatisch einen URI mit einer Version zu generieren, z. B. /api/management/v1/table/{tableName}. Versionsnummern identifizieren die Endpunktversion, auf die ein URI zugreift. Durch Angabe einer Versionsnummer können Sie Änderungen testen und bereitstellen, ohne dass sich dies auf vorhandene Integrationen auswirkt.                                                                                                                                                                                                                                                                                                                   |
[Tabelle : 2. Eigenschaften]

{#routes-object-now-ts__table_vy2_525_jq}  

    routes: [
       {
          $id: Now.ID['route1'],
          path: '/home/{id}',
          script: process,
          parameters: [{ $id: Now.ID['param1'],  name: 'n_param' }],
          headers: [{ $id: Now.ID['header1'],  name: 'n_token' }],
          enforce_acl: [acl],
          version: 1,
       },
    ],

### Parameter- und Header-Objekte {#ariaid-title4}

Erstellen Sie Abfrageparameter \[sys_ws_query_parameter\] und Header \[sys_ws_header\] für Routen in einer geskripteten REST API. Abfrageparameter steuern, welche Werte ein anfordernder Anwender im Anforderungs-URI übergeben kann. Header geben an, was die API akzeptiert und womit antworten kann.
Verwenden Sie die Parameter- und Headerobjekte innerhalb des Routenobjekts.
{#routes-params-headers-objects-now-ts__table_vy2_525_jq__entry__3}

|       Name        |          Typ           |                                                                                                                                       Beschreibung                                                                                                                                       |
|-------------------|------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| $id               | Zeichenfolge oder Zahl | Erforderlich. Eine eindeutige ID für das Metadatenobjekt, die im folgenden Format bereitgestellt wird: wobei\<value\> ist eine Zeichenfolge oder Zahl. $id: Now.ID[<value>] Wenn Sie die Anwendung erstellen, wird diese ID in eine eindeutige sys_ID gehasht.                           |
| Name              | Zeichenfolge           | Erforderlich. Der Name des Parameters oder Headers, der in der API-Dokumentation verwendet wird.                                                                                                                                                                                         |
| erforderlich      | Boolean                | Kennzeichnung, die angibt, ob der Parameter oder Header erforderlich ist. Gültige Werte: * „wahr": Der Parameter oder Header ist erforderlich. * „falsch": Der Parameter oder Header ist nicht erforderlich. {#routes-params-headers-objects-now-ts__ul_ofg_sr3_qbc} Standardwert: false |
| example_value     | Zeichenfolge           | Ein Beispiel für einen gültigen Wert für den Parameter oder Header, der in der API-Dokumentation verwendet wird.                                                                                                                                                                         |
| short_description | Zeichenfolge           | Eine kurze Beschreibung des Parameters oder Headers, der in der API-Dokumentation verwendet wird.                                                                                                                                                                                        |
[Tabelle : 3. Eigenschaften]

{#routes-params-headers-objects-now-ts__table_vy2_525_jq}  

    parameters: [{ $id: Now.ID['param1'],  name: 'n_param' }],
    headers: [{ $id: Now.ID['header1'],  name: 'n_token' }],

Versionsobjekt {#ariaid-title5}
-------------------------------

Erstellen Sie Versionen für eine geskriptete REST API \[sys_ws_version\], um Webservice-Endpunkte zu definieren.
Verwenden Sie das Versionsobjekt innerhalb des RestApi -Objekts.
{#version-object-now-ts__table_vy2_525_jq__entry__3}

|       Name        |          Typ           |                                                                                                                                                                                                               Beschreibung                                                                                                                                                                                                                |
|-------------------|------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| $id               | Zeichenfolge oder Zahl | Erforderlich. Eine eindeutige ID für das Metadatenobjekt, die im folgenden Format bereitgestellt wird: wobei\<value\> ist eine Zeichenfolge oder Zahl. $id: Now.ID[<value>] Wenn Sie die Anwendung erstellen, wird diese ID in eine eindeutige sys_ID gehasht.                                                                                                                                                                            |
| version           | Nummer                 | Erforderlich. Eine Version der REST API.                                                                                                                                                                                                                                                                                                                                                                                                  |
| aktiv             | Boolean                | Kennzeichnung, die angibt, ob die Version der REST API Anforderungen verarbeiten kann. Gültige Werte: * true: Die Version der API, die Anforderungen verarbeiten kann. * „falsch": Die Version der API kann keine Anforderungen verarbeiten. {#version-object-now-ts__ul_cxj_srr_4bc} Standardwert: wahr                                                                                                                                  |
| veraltet          | Boolean                | Kennzeichnung, die angibt, ob die Version der REST API veraltet ist. Ressourcen, die zu veralteten Versionen gehören, können Anforderungen verarbeiten, werden jedoch in der Dokumentation als veraltet gekennzeichnet. Gültige Werte: * „wahr": Die Version der API wird als veraltet identifiziert. * „falsch": Die Version der API wird nicht als veraltet identifiziert. {#version-object-now-ts__ul_yqy_njx_xbc} Standardwert: false |
| short_description | Zeichenfolge           | Kurze Beschreibung der Version der REST API, die in der API-Dokumentation angezeigt wird.                                                                                                                                                                                                                                                                                                                                                 |
| is_default        | Boolean                | Kennzeichnung, die angibt, ob die Version der REST API die Standardversion ist. Clients können über den URI-Pfad mit oder ohne Versionsdefinition auf die Standardversion zugreifen. Gültige Werte: * wahr: Die Version der API ist die Standardversion. * false: Die Version der API ist nicht die Standardversion. {#version-object-now-ts__ul_isx_qjx_xbc} Standardwert: false                                                         |
[Tabelle : 4. Eigenschaften]

{#version-object-now-ts__table_vy2_525_jq}  

    versions: [
     {
       $id: Now.ID['v1'],
       version: 1,
     },
    ],


