@servicenow/sdk - v4.13.3
    Preparing search index...

    Variable sys_ws_definitionConst

    sys_ws_definition: {
        allowWebServiceAccess: true;
        attributes: {
            "all_tables.text_index_translations": true;
            update_synch: true;
        };
        display: "name";
        extends: "sys_metadata";
        label: "Scripted REST API";
        name: "sys_ws_definition";
        schema: {
            active: Typed<
                boolean,
                {
                    default: true;
                    label: [
                        {
                            hint: "Activates the API Inactive APIs cannot serve requests.";
                            label: "Active";
                            plural: "Active";
                        },
                    ];
                    maxLength: 30;
                },
            >;
            base_uri: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    dynamicValueDefinitions: {
                        calculatedValue: "if (current.service_id)\n\tcurrent.base_uri = '/api/' + current.namespace + '/' + current.service_id;";
                        type: "calculated_value";
                    };
                    label: [
                        {
                            hint: "The base API path (URI) to access this API";
                            label: "Base API path";
                            plural: "Base APIs paths";
                        },
                    ];
                    maxLength: 255;
                    readOnly: true;
                    readOnlyOption: "instance_configured";
                },
            >;
            consumes: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    default: "application/json,application/xml,text/xml";
                    label: [
                        {
                            hint: "Default comma-delimited list of media types that resources of this API can consume";
                            label: "Default supported request formats";
                            plural: "Default supported request formats";
                        },
                    ];
                    maxLength: 200;
                },
            >;
            consumes_customized: Typed<
                boolean,
                {
                    default: false;
                    label: [
                        {
                            hint: "Check to customize the request media types supported by resources of this API by default";
                            label: "Override default supported request formats";
                            plural: "Override default supported request formats";
                        },
                    ];
                    maxLength: 30;
                },
            >;
            default_version: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    dynamicValueDefinitions: {
                        calculatedValue: "function getDefaultVersion() {\n\tvar defaultVersion = 'No active default version';\n\tvar gr = new GlideRecord('sys_ws_version');\n\tgr.addQuery('web_service_definition', current.sys_id);\n\tgr.addQuery('active', true);\n\tgr.orderByDesc('version');\n\tgr.query();\n\t\n\twhile(gr.next()){\n\t\tif(gr.getValue('is_default') == '1'){\n\t\t\tdefaultVersion = gr.getValue('version_id');\n\t\t\tbreak;\n\t\t}\n\t}\n\t\n\treturn defaultVersion;\n}\n\ncurrent.default_version = getDefaultVersion();";
                        type: "calculated_value";
                    };
                    label: [
                        {
                            hint: "The version used when a request does not specify a version. This is the latest version where 'Active' and 'Is default' are both true.";
                            label: "Default version";
                            plural: "Default versions";
                        },
                    ];
                    readOnly: true;
                    readOnlyOption: "instance_configured";
                },
            >;
            doc_link: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    label: [
                        {
                            hint: "Optionally specify a URL that links to static documentation about the API";
                            label: "Documentation link";
                            plural: "Documentation links";
                        },
                    ];
                    maxLength: 160;
                },
            >;
            enforce_acl: Typed<
                string
                | string[]
                | Record<"sys_security_acl">[],
                {
                    attributes: { no_sort: true; slushbucket_ref_no_expand: true };
                    label: [
                        {
                            hint: "The ACLs to enforce when accessing resources. Individual resources may override this value.";
                            label: "Default ACLs";
                            plural: "Default ACLs";
                        },
                    ];
                    maxLength: 16777215;
                    referenceQual: "type=REST_Endpoint^EQ";
                    referenceTable: "sys_security_acl";
                    useReferenceQualifier: "simple";
                },
            >;
            is_versioned: Typed<
                boolean,
                {
                    label: [
                        {
                            hint: "Indicates whether this API has versioning enabled";
                            label: "Is versioned";
                            plural: "Is versioned";
                        },
                    ];
                    maxLength: 30;
                    readOnly: true;
                    readOnlyOption: "instance_configured";
                },
            >;
            name: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    label: [
                        {
                            hint: "The name of the API. Appears in API documentation.";
                            label: "Name";
                            plural: "Names";
                        },
                    ];
                    mandatory: true;
                },
            >;
            namespace: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    default: "javascript:( new ScriptedRESTAPINamespaceCreator().getNamespace())";
                    label: [
                        {
                            hint: "The namespace the API belongs to. The value depends on the current application scope.";
                            label: "API namespace";
                            plural: "API namespaces";
                        },
                    ];
                    mandatory: true;
                    readOnly: true;
                    readOnlyOption: "instance_configured";
                },
            >;
            produces: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    default: "application/json,application/xml,text/xml";
                    label: [
                        {
                            hint: "Default comma-delimited list of media types that resources of this API can produce";
                            label: "Default supported response formats";
                            plural: "Default supported response formats";
                        },
                    ];
                    maxLength: 200;
                },
            >;
            produces_customized: Typed<
                boolean,
                {
                    default: false;
                    label: [
                        {
                            hint: "Check to customize the response media types supported by resources of this API by default";
                            label: "Override default supported response formats";
                            plural: "Override default supported response formats";
                        },
                    ];
                    maxLength: 30;
                },
            >;
            service_id: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    label: [
                        {
                            hint: "The API identifier used to distinguish this API in URI paths. Must be unique within API namespace.";
                            label: "API ID";
                            plural: "API IDs";
                        },
                    ];
                    mandatory: true;
                },
            >;
            short_description: Typed<
                string,
                {
                    attributes: { edge_encryption_enabled: true };
                    label: [
                        {
                            hint: "The description of the API. Appears in API documentation.";
                            label: "Short description";
                            plural: "Short descriptions";
                        },
                    ];
                    maxLength: 80;
                },
            >;
        };
        textIndex: true;
    } = ...

    Type Declaration

    • ReadonlyallowWebServiceAccess: true
    • Readonlyattributes: { "all_tables.text_index_translations": true; update_synch: true }
    • Readonlydisplay: "name"
    • Readonlyextends: "sys_metadata"
    • Readonlylabel: "Scripted REST API"
    • Readonlyname: "sys_ws_definition"
    • Readonlyschema: {
          active: Typed<
              boolean,
              {
                  default: true;
                  label: [
                      {
                          hint: "Activates the API Inactive APIs cannot serve requests.";
                          label: "Active";
                          plural: "Active";
                      },
                  ];
                  maxLength: 30;
              },
          >;
          base_uri: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  dynamicValueDefinitions: {
                      calculatedValue: "if (current.service_id)\n\tcurrent.base_uri = '/api/' + current.namespace + '/' + current.service_id;";
                      type: "calculated_value";
                  };
                  label: [
                      {
                          hint: "The base API path (URI) to access this API";
                          label: "Base API path";
                          plural: "Base APIs paths";
                      },
                  ];
                  maxLength: 255;
                  readOnly: true;
                  readOnlyOption: "instance_configured";
              },
          >;
          consumes: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  default: "application/json,application/xml,text/xml";
                  label: [
                      {
                          hint: "Default comma-delimited list of media types that resources of this API can consume";
                          label: "Default supported request formats";
                          plural: "Default supported request formats";
                      },
                  ];
                  maxLength: 200;
              },
          >;
          consumes_customized: Typed<
              boolean,
              {
                  default: false;
                  label: [
                      {
                          hint: "Check to customize the request media types supported by resources of this API by default";
                          label: "Override default supported request formats";
                          plural: "Override default supported request formats";
                      },
                  ];
                  maxLength: 30;
              },
          >;
          default_version: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  dynamicValueDefinitions: {
                      calculatedValue: "function getDefaultVersion() {\n\tvar defaultVersion = 'No active default version';\n\tvar gr = new GlideRecord('sys_ws_version');\n\tgr.addQuery('web_service_definition', current.sys_id);\n\tgr.addQuery('active', true);\n\tgr.orderByDesc('version');\n\tgr.query();\n\t\n\twhile(gr.next()){\n\t\tif(gr.getValue('is_default') == '1'){\n\t\t\tdefaultVersion = gr.getValue('version_id');\n\t\t\tbreak;\n\t\t}\n\t}\n\t\n\treturn defaultVersion;\n}\n\ncurrent.default_version = getDefaultVersion();";
                      type: "calculated_value";
                  };
                  label: [
                      {
                          hint: "The version used when a request does not specify a version. This is the latest version where 'Active' and 'Is default' are both true.";
                          label: "Default version";
                          plural: "Default versions";
                      },
                  ];
                  readOnly: true;
                  readOnlyOption: "instance_configured";
              },
          >;
          doc_link: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  label: [
                      {
                          hint: "Optionally specify a URL that links to static documentation about the API";
                          label: "Documentation link";
                          plural: "Documentation links";
                      },
                  ];
                  maxLength: 160;
              },
          >;
          enforce_acl: Typed<
              string
              | string[]
              | Record<"sys_security_acl">[],
              {
                  attributes: { no_sort: true; slushbucket_ref_no_expand: true };
                  label: [
                      {
                          hint: "The ACLs to enforce when accessing resources. Individual resources may override this value.";
                          label: "Default ACLs";
                          plural: "Default ACLs";
                      },
                  ];
                  maxLength: 16777215;
                  referenceQual: "type=REST_Endpoint^EQ";
                  referenceTable: "sys_security_acl";
                  useReferenceQualifier: "simple";
              },
          >;
          is_versioned: Typed<
              boolean,
              {
                  label: [
                      {
                          hint: "Indicates whether this API has versioning enabled";
                          label: "Is versioned";
                          plural: "Is versioned";
                      },
                  ];
                  maxLength: 30;
                  readOnly: true;
                  readOnlyOption: "instance_configured";
              },
          >;
          name: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  label: [
                      {
                          hint: "The name of the API. Appears in API documentation.";
                          label: "Name";
                          plural: "Names";
                      },
                  ];
                  mandatory: true;
              },
          >;
          namespace: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  default: "javascript:( new ScriptedRESTAPINamespaceCreator().getNamespace())";
                  label: [
                      {
                          hint: "The namespace the API belongs to. The value depends on the current application scope.";
                          label: "API namespace";
                          plural: "API namespaces";
                      },
                  ];
                  mandatory: true;
                  readOnly: true;
                  readOnlyOption: "instance_configured";
              },
          >;
          produces: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  default: "application/json,application/xml,text/xml";
                  label: [
                      {
                          hint: "Default comma-delimited list of media types that resources of this API can produce";
                          label: "Default supported response formats";
                          plural: "Default supported response formats";
                      },
                  ];
                  maxLength: 200;
              },
          >;
          produces_customized: Typed<
              boolean,
              {
                  default: false;
                  label: [
                      {
                          hint: "Check to customize the response media types supported by resources of this API by default";
                          label: "Override default supported response formats";
                          plural: "Override default supported response formats";
                      },
                  ];
                  maxLength: 30;
              },
          >;
          service_id: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  label: [
                      {
                          hint: "The API identifier used to distinguish this API in URI paths. Must be unique within API namespace.";
                          label: "API ID";
                          plural: "API IDs";
                      },
                  ];
                  mandatory: true;
              },
          >;
          short_description: Typed<
              string,
              {
                  attributes: { edge_encryption_enabled: true };
                  label: [
                      {
                          hint: "The description of the API. Appears in API documentation.";
                          label: "Short description";
                          plural: "Short descriptions";
                      },
                  ];
                  maxLength: 80;
              },
          >;
      }
    • ReadonlytextIndex: true