REST API com script - ServiceNow Fluent
A REST API com script define os endpoints, parâmetros de consulta e cabeçalhos de um serviço REST com script [sys_ws_definition].
Para obter informações gerais sobre serviços REST com script, consulte Scripted REST APIs.
Objeto RestApi
Crie uma REST API com script [sys_ws_definition] para definir endpoints de serviço web.
| Nome | Tipo | Descrição |
|---|---|---|
| id | Cadeia de caracteres ou número | Necessário. Um ID exclusivo para o objeto de metadados. Quando você cria a aplicação, este ID é hash em um sys_id exclusivo. Para obter mais informações, consulte ServiceNow Fluent construções de linguagem. Formato: |
| nome | Cadeia de caracteres | Necessário. O nome da API, que é usado na documentação da API. |
| serviceId | Cadeia de caracteres | Necessário. O identificador de API usado para distinguir esta API em caminhos de URI. Ele deve ser exclusivo no namespace da API. |
| ativo | Booliano | Sinalizador que indica se a API pode atender solicitações. Valores válidos:
Padrão: verdadeiro |
| shortDescription | Cadeia de caracteres | Uma breve descrição da API, que é usada na documentação da API. |
| consome | Cadeia de caracteres | Uma lista de tipos de mídia que os recursos da API podem consumir. Padrão: Application/json,application/xml,text/xml |
| DocLink | Cadeia de caracteres | Um URL vinculado à documentação estática sobre a API. |
| Excetividade | Matriz | Uma lista de identificadores de variáveis de ACL Objetos ou sys_ids de ACLs a serem aplicados ao acessar recursos [sys_security_acl]. Para obter mais informações, consulte API da lista de controle de acesso - ServiceNow Fluent. Para não impor ACLs, defina esta propriedade como uma matriz vazia ( Padrão: REST externo com script padrão |
| produz | Cadeia de caracteres | Uma lista de tipos de mídia que os recursos da API podem produzir. Padrão: Application/json,application/xml,text/xml |
| rotas | Matriz | Os recursos [sys_ws_operation] da API. Para obter mais informações, consulte objeto de rotas. |
| política | Cadeia de caracteres | A política de como os arquivos da aplicação são protegidos quando baixados ou instalados. Valores válidos:
|
| versões | Matriz | Uma lista de versões [sys_ws_version] da API. Para obter mais informações, consulte objeto de versões. A especificação de versões permite gerenciar diferentes versões de uma API e seus status, como se elas estão ativas, a versão padrão ou obsoletas. |
| meta | Objeto | Metadados dos metadados da aplicação. Com o. Método de instalação , você pode mapear os metadados da aplicação para um diretório de saída que carrega somente em circunstâncias específicas. Valores válidos para Método de instalação :
|
import { RestApi } from '@servicenow/sdk/core'
import { process } from '../server/handler.js'
RestApi({
$id: Now.ID['rest1'],
name: 'customAPI',
serviceId: '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' }],
enforceAcl: [acl],
version: 1,
},
],
enforceAcl: [acl],
versions: [
{
$id: Now.ID['v1'],
version: 1,
},
],
})
import { Acl } from "@servicenow/sdk/core";
const acl = Acl({
name: 'My random ACL',
type: 'rest_endpoint',
script: `answer = (Math.random() > 0.5)`,
active: true,
adminOverrides: false,
operations: ['execute'],
})objeto de rotas
Crie um recurso REST com script [sys_ws_operation] para definir o método HTTP, o script de processamento e substituir as configurações do serviço primário.
Use o. rotas objeto em RestApi objeto.
| Nome | Tipo | Descrição |
|---|---|---|
| id | Cadeia de caracteres ou número | Necessário. Um ID exclusivo para o objeto de metadados. Quando você cria a aplicação, este ID é hash em um sys_id exclusivo. Para obter mais informações, consulte ServiceNow Fluent construções de linguagem. Formato: |
| nome | Cadeia de caracteres | O nome do recurso da API, que é usado na documentação da API. Padrão: O valor de caminho propriedade |
| script | Script | Necessário. O script personalizado define como a operação analisa e responde às solicitações. Esta propriedade é compatível com uma função de um módulo JavaScript, uma referência a outro arquivo na aplicação que contém um script ou JavaScript em linha. Formato:
|
| parâmetros | Matriz | Uma lista de parâmetros de consulta [sys_ws_query_parameter] para a rota. Para obter mais informações, consulte objetos de parâmetros e cabeçalhos. |
| cabeçalhos | Matriz | Uma lista de cabeçalhos [sys_ws_header] da rota. Para obter mais informações, consulte objetos de parâmetros e cabeçalhos. |
| ativo | Booliano | Sinalizador que indica se o recurso é usado. Valores válidos:
Padrão: verdadeiro |
| caminho | Cadeia de caracteres | O caminho do recurso relativo ao caminho da API base. O URI relativo pode conter parâmetros de caminho, como '/abc/id' .Padrão: / |
| shortDescription | Cadeia de caracteres | Uma breve descrição do recurso, que é usado na documentação da API. |
| consome | Cadeia de caracteres | Uma lista de tipos de mídia que o recurso pode consumir. Esta propriedade pode ser substituída pelos métodos PUT, PATCH ou POST. Padrão: O valor de consome propriedade em RestApi objeto |
| Excetividade | Matriz | Uma lista de identificadores de variáveis de ACL Objetos ou sys_ids de ACLs a serem aplicados ao acessar recursos [sys_security_acl]. Para obter mais informações, consulte API da lista de controle de acesso - ServiceNow Fluent. Para não impor ACLs, defina esta propriedade como uma matriz vazia ( Padrão: REST externo com script padrão |
| produz | Cadeia de caracteres | Uma lista de tipos de mídia que o recurso pode produzir. Padrão: O valor de produz propriedade em RestApi objeto |
| ExampleSolicitação | Cadeia de caracteres | Uma carga de corpo de solicitação de amostra válida para o recurso, que é usada na documentação da API. |
| method | Cadeia de caracteres | O método HTTP implementado pelo recurso. Valores válidos: GET, POST, PUT, PATCH, DELETE Padrão: OBTER |
| autorização | Booliano | Sinalizador que indica se os usuários devem ser autenticados para acessar o recurso. Valores válidos:
Padrão: verdadeiro |
| autenticação | Booliano | Sinalizador que indica se as ACLs são impostas ao acessar o recurso. Valores válidos:
Padrão: verdadeiro |
| InternalRole | Booliano | Sinalizador que indica se a rota requer a função snc_internal. Esta propriedade será compatível somente se o plug-in de funções explícitas (com.glide.explicit_roles) estiver habilitado. Valores válidos:
Padrão: verdadeiro |
| política | Cadeia de caracteres | A política de como os arquivos da aplicação são protegidos quando baixados ou instalados. Valores válidos:
|
| versão | Número | A versão da API. Esta propriedade será necessária se versões a propriedade é usada em RestApi objeto. A versão especificada com esta propriedade é usada para gerar automaticamente um URI com uma versão, como /api/management/v1/table/ . Os números de versão identificam a versão do endpoint que um URI acessa. Ao especificar um número de versão, você pode testar e implantar mudanças sem afetar as integrações existentes. |
| meta | Objeto | Metadados dos metadados da aplicação. Com o. Método de instalação , você pode mapear os metadados da aplicação para um diretório de saída que carrega somente em circunstâncias específicas. Valores válidos para Método de instalação :
|
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' }],
enforceAcl: [acl],
version: 1,
},
],
objetos de parâmetros e cabeçalhos
Crie parâmetros de consulta [sys_ws_query_parameter] e cabeçalhos [sys_ws_header] para rotas em uma REST API com script. Os parâmetros de consulta controlam quais valores um usuário solicitante pode passar no URI de solicitação. Os cabeçalhos especificam o que a API aceita e pode responder com.
Use o. parâmetros e. cabeçalhos objetos em rotas objeto.
| Nome | Tipo | Descrição |
|---|---|---|
| id | Cadeia de caracteres ou número | Necessário. Um ID exclusivo para o objeto de metadados. Quando você cria a aplicação, este ID é hash em um sys_id exclusivo. Para obter mais informações, consulte ServiceNow Fluent construções de linguagem. Formato: |
| nome | Cadeia de caracteres | Necessário. O nome do parâmetro ou cabeçalho, que é usado na documentação da API. |
| obrigatório | Booliano | Sinalizador que indica se o parâmetro ou cabeçalho é necessário. Valores válidos:
Padrão: falso |
| ExampleValue | Cadeia de caracteres | Um exemplo de um valor válido para o parâmetro ou cabeçalho, que é usado na documentação da API. |
| shortDescription | Cadeia de caracteres | Uma breve descrição do parâmetro ou cabeçalho, que é usado na documentação da API. |
| meta | Objeto | Metadados dos metadados da aplicação. Com o. Método de instalação , você pode mapear os metadados da aplicação para um diretório de saída que carrega somente em circunstâncias específicas. Valores válidos para Método de instalação :
|
parameters: [{ $id: Now.ID['param1'], name: 'n_param' }],
headers: [{ $id: Now.ID['header1'], name: 'n_token' }],
objeto de versões
Crie versões para uma REST API com script [sys_ws_version] para definir endpoints de serviço web.
Use o. versões objeto em RestApi objeto.
| Nome | Tipo | Descrição |
|---|---|---|
| id | Cadeia de caracteres ou número | Necessário. Um ID exclusivo para o objeto de metadados. Quando você cria a aplicação, este ID é hash em um sys_id exclusivo. Para obter mais informações, consulte ServiceNow Fluent construções de linguagem. Formato: |
| versão | Número | Necessário. Uma versão da REST API. |
| ativo | Booliano | Sinalizador que indica se a versão da REST API pode atender solicitações. Valores válidos:
Padrão: verdadeiro |
| obsoleto | Booliano | Sinalizador que indica se a versão da REST API está obsoleta. Os recursos pertencentes a versões obsoletas podem atender a solicitações, mas são identificados como obsoletos na documentação. Valores válidos:
Padrão: falso |
| shortDescription | Cadeia de caracteres | Uma breve descrição da versão da REST API, que aparece na documentação da API. |
| isDefault | Booliano | Sinalizador que indica se a versão da REST API é a versão padrão. Os clientes podem acessar a versão padrão usando o caminho de URI com ou sem versão. Valores válidos:
Padrão: falso |
| meta | Objeto | Metadados dos metadados da aplicação. Com o. Método de instalação , você pode mapear os metadados da aplicação para um diretório de saída que carrega somente em circunstâncias específicas. Valores válidos para Método de instalação :
|
versions: [
{
$id: Now.ID['v1'],
version: 1,
},
],