- Visão geral
- Introdução
- Conceitos
- Usando o UiPath CLI
- Guias de instruções
- Receitas de CI/CD
- Referência de comando
- Visão geral
- Códigos de saída
- Opções globais
- Agente de código uip
- codificador UIP
- Contextualização da uip
- Documento da UIP
- Função UIP
- Proteções da UIP
- configuração-llm-uip
- gateway-llm-uip
- hub de modelo da uip
- adicionar-tipo-dados-de-teste
- adicionar-dados-de-teste-fila
- adicionar-teste-variação de dados
- Analisar
- Criar
- criar projeto
- Comparação
- encontrar atividades
- obter-analisador-regras
- obter-padrão-atividade-xaml
- obter-erros
- obter-casos-de-teste-manuais
- obter-etapas-de-teste-manual
- obter-repositório-objeto-da-Biblioteca
- obter-objeto-repositório
- Obter versões
- obter-fluxo-de-trabalho-exemplo
- indicar aplicativo
- indicar elemento
- inspecionar pacote
- instalar-data-fabric-entities
- instalar-ou-atualizar pacotes
- listar-data-fabric-entities
- instâncias-da-lista
- listar-exemplos-de-fluxo-de-trabalho
- Empacotar
- Publicar
- Remoto
- restore
- executar, depurar e adicionar; Execução
- arquivo de execução
- modelos-pesquisar
- Iniciar Studio
- interromper a execução
- TM
- UIA
- tarefas do UIP
- Traces da UIP
- Feedback de traces da uip
- Migração
- Referência e suporte
uip é hook de atividade do construtor de conectores
Sintaxe e opções para criar, ler e gerenciar ganchos pré/pós-solicitação do JavaScript nas atividades de um conector.
uip is connectors builder activity hook gerencia ganchos de transformação JavaScript — a portal de escape do conector para lógica de solicitação/resposta que um campo ou parâmetro declarativo não pode expressa. É um subgrupo aninhado em activity, dividido em sua própria página por causa da quantidade de documentação do contexto de runtime de que um autor de hook precisa. Consulte Construtor de conectores para obter os conceitos compartilhados (resolução do diretório do conector, o fluxo de criação típico) que também se aplicam aqui.
Os arquivos do hook estão em app/element/hooks/ no diretório do conector. Um hook pode anexar a um recurso+método específico (um hook de recurso) ou ser executado para cada solicitação (um hook global , --global).
Resumo
uip is connectors builder activity hook list [--connector-dir <path>]
uip is connectors builder activity hook get <filename> [--connector-dir <path>]
uip is connectors builder activity hook create --hook-type <preRequest|postRequest> [options...] [--connector-dir <path>]
uip is connectors builder activity hook delete <filename> [--connector-dir <path>]
uip is connectors builder activity hook list [--connector-dir <path>]
uip is connectors builder activity hook get <filename> [--connector-dir <path>]
uip is connectors builder activity hook create --hook-type <preRequest|postRequest> [options...] [--connector-dir <path>]
uip is connectors builder activity hook delete <filename> [--connector-dir <path>]
uip é a lista de hooks da atividade do conector builder
Liste os arquivos do hook do JavaScript em app/element/hooks/ e se cada um for referenciado em element.json.
Opções
| Long | Valor | Description |
|---|---|---|
--connector-dir <path> | Path | Diretório do conector. |
Exemplo
uip is connectors builder activity hook list
uip is connectors builder activity hook list
Formato dos dados (--output json)
{
"Code": "HookList",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Hooks": [
{ "filename": "resource-account-GET-postRequest.js", "registered": true }
]
}
}
{
"Code": "HookList",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Hooks": [
{ "filename": "resource-account-GET-postRequest.js", "registered": true }
]
}
}
Um arquivo de hook que existe no disco, mas tem registered: false é órfão — seu código é executado gratuitamente até que seja registrado novamente (execute hook create novamente nele ou conecte-o manualmente a element.json).
uip é connectors builder activity hook get
Leia a origem e o status de registro de um único arquivo de hook.
Argumentos
| Name | Required | Finalidade |
|---|---|---|
<filename> | sim | Nome do arquivo do hook, por exemplo resource-account-GET-postRequest.js ou.global-preRequest.js |
Opções
| Long | Valor | Description |
|---|---|---|
--connector-dir <path> | Path | Diretório do conector. |
Exemplo
uip is connectors builder activity hook get resource-account-GET-postRequest.js
uip is connectors builder activity hook get resource-account-GET-postRequest.js
Formato dos dados (--output json)
{
"Code": "Hook",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Filename": "resource-account-GET-postRequest.js",
"Registered": true,
"Code": "done({ response_body });"
}
}
{
"Code": "Hook",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Filename": "resource-account-GET-postRequest.js",
"Registered": true,
"Code": "done({ response_body });"
}
}
uip é connectors builder activity hook escolher
Crie um arquivo de hook do JavaScript e — a menos que --no-auto-register — registre sua referência em element.json.
Opções
| Long | Valor | Required | Description |
|---|---|---|---|
--resource-name <name> | String | Condicional* | Recurso ao qual o gancho se conecta. Não necessário com --global. |
--method <method> | String | Condicional* | Método HTTP do recurso. Não necessário com --global. |
--path <internalPath> | String | não | Caminho interno do recurso (o element.json caminho exclusivo do recurso), para desambiguar quando um recurso de lista e um recurso by-id compartilham um método (por exemplo /contacts/{id}) — os caminhos do fornecedor não são exclusivos, o caminho interno é. |
--hook-type <type> | preRequest|postRequest | sim | Fase de gancho. |
--custom-code <js> | String | não** | O corpo do hook, em linha. mutuamente exclusivo com --custom-code-file. |
--custom-code-file <path> | Path | não** | Caminho para um arquivo .js cujo conteúdo se torna o corpo do hook. Preferido sobre --custom-code. |
--description <text> | String | não | Comentário colocado na parte superior do arquivo. |
--context-params <list> | String | não | Substitua a contextParams string na referência do hook. |
--no-auto-register | Bandeira | não | Grave o element.json arquivo, mas não o registre em. |
--global | Bandeira | não | Registre um hook em todo o conector na array hooks[] de nível superior, em vez de anexar a um recurso+método. |
--connector-dir <path> | Path | não | Diretório do conector. |
* O Comando não pode expressar "obrigatório a menos que --global" declarativamente — ambas as opções são simples (não requiredOption), e o serviço subjacente impõe o caso de hook de recurso no runtime, falhando se --resource-name/--method estiverem ausentes em um hook não global.
** Passar --custom-code e --custom-code-file é um erro. Você escreve o corpo do hook por conta própria (ou pede que um agente o escreva) — a CLI apenas coloca e registra o arquivo; não gera lógica de hook.
Contexto do corpo do gancho
Um gancho retorna por meio de done({...}), nunca um simples return, e deve chamar done() em todos os caminhos de código. A CLI vincula automaticamente exatamente as variáveis referenciadas pelo seu corpo; substitua o conjunto por --context-params (liste multipart_hook_context_items explicitamente se você o usar).
preRequest — somente leitura:
request_method, request_headers, request_path, request_path_variables, request_parameters, request_body, request_body_map (corpo da solicitação selecionado como um mapa — leia os campos diretamente), request_body_raw, request_vendor_body_map, request_vendor_url, request_expression (CEQL onde, como [{attribute,value,operator}]), request_previous_response, request_previous_response_headers, object_name, vendor_object_name, configuration (somente leitura nesta fase).
preRequest leitura/gravação (edite, em seguida, retorne apenas as chaves que você alterou; um done() vazio passa tudo por ele não modificado):
request_vendor_method, request_vendor_headers, request_vendor_path, request_vendor_parameters, request_vendor_body (uma string na leitura; string, lista ou mapa na gravação), request_root_key, multipart_hook_context_items.
preRequest — done()apenas teclas: continue (false pula a chamada do fornecedor, mas ainda executa postRequest), response_status_code / response_body / response_body_raw / response_error_message (curto circuito um resposta sem chamar o fornecedor).
postRequest — somente leitura:
response_iserror (true a menos que o status HTTP seja 200-207), response_body_map, response_body_raw_map, cada variável request_* como realmente enviada para o fornecedor, request_previous_response, request_previous_response_headers.
postRequest ler/gravar (editar e retornar as chaves alteradas):
response_body (mapa), response_body_raw (string), response_headers, response_status_code, response_root_key, configuration (gravável nesta fase — veja abaixo), multipart_hook_context_items.
postRequest — done()apenas teclas: response_error_message (converte a chamada em um erro; o status vem de response_status_code, do contrário, 400), connection_identity (definir o nome de exibição da conexão), metadata_merge / merge_objects (apenas recursos de descoberta de objetos).
Regras principais:
configurationé somente leitura empreRequest, leitura/gravação empostRequest. Para persistir um valor derivados por conexão (por exemplo, um URL base computado a partir de um token), escreva-o em um ganchopostRequest:done({ configuration: { 'base.url': url } }). EscreverconfigurationempreRequestnão tem efeito.- Um
request_vendor_pathque começa comhttpse torna a URL da solicitação completa, ignorando a URL base configurada do conector. - Sucesso é estritamente HTTP 200–207.
response_iserroré derivados e somente leitura — retornar um valor diferente não faz nada.
Mecanismo: o runtime do hook (Denali) é compatível com JavaScript moderno (?., ??, async/await) e require() para um conjunto de módulos fixos: axios (para chamadas HTTP secundárias de dentro de um hook ), crypto, url, querystring, util, buffer, zlib, lodash, jmespath, moment.
Para obter orientação sobre quando (e quando não) alcançar um hook em vez de um campo/parâmetro declarativo, a CLI aponta para o uipath-connector-builder da habilidade references/hooks.md — consulte uip skills.
Exemplos
# Post-request hook for a resource, from an agent-written JS file
uip is connectors builder activity hook create \
--resource-name Account --method GET --hook-type postRequest \
--custom-code-file ./account-postRequest.js
# Global pre-request hook
uip is connectors builder activity hook create \
--hook-type preRequest --global --custom-code-file ./my-hook.js
# Post-request hook for a resource, from an agent-written JS file
uip is connectors builder activity hook create \
--resource-name Account --method GET --hook-type postRequest \
--custom-code-file ./account-postRequest.js
# Global pre-request hook
uip is connectors builder activity hook create \
--hook-type preRequest --global --custom-code-file ./my-hook.js
Formato dos dados (--output json)
{
"Code": "HookCreated",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Filename": "resource-Account-GET-postRequest.js",
"HookType": "postRequest",
"Method": "GET",
"ResourceName": "Account",
"FilePath": "app/element/hooks/resource-Account-GET-postRequest.js",
"HookReference": {},
"RegisteredInElement": true
}
}
{
"Code": "HookCreated",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Filename": "resource-Account-GET-postRequest.js",
"HookType": "postRequest",
"Method": "GET",
"ResourceName": "Account",
"FilePath": "app/element/hooks/resource-Account-GET-postRequest.js",
"HookReference": {},
"RegisteredInElement": true
}
}
Para um hook global, Filename segue o global-<hookType>.js padrão (por exemplo global-preRequest.js) e ResourceName/Method estão ausentes.
uip é connectors builder atividade hook Delete
Exclua um arquivo de hook e remova cada referência a element.json ele.
Argumentos
| Name | Required | Finalidade |
|---|---|---|
<filename> | sim | Nome do arquivo do gancho a ser excluído. |
Opções
| Long | Valor | Description |
|---|---|---|
--connector-dir <path> | Path | Diretório do conector. |
Não há nenhuma diretriz dedicada “editar um hook” dedicada verbo — exclua e recrie ou edite o arquivo no disco diretamente (um arquivo de hook é JavaScript simples, não um artefato gerado).
Exemplo
uip is connectors builder activity hook delete resource-account-GET-postRequest.js
uip is connectors builder activity hook delete resource-account-GET-postRequest.js
Formato dos dados (--output json)
{
"Code": "HookRemoved",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Filename": "resource-account-GET-postRequest.js",
"FileDeleted": true,
"ReferenceRemoved": true
}
}
{
"Code": "HookRemoved",
"Data": {
"ConnectorRoot": "/work/periodic-design-acme",
"Filename": "resource-account-GET-postRequest.js",
"FileDeleted": true,
"ReferenceRemoved": true
}
}
Relacionado
- Atividade — os comandos de recurso/campo/método/param aos quais um hook se conecta.
- Construtor de conectores — conceitos e os quatro verbos do ciclo de vida do tenant.
- Autenticação — configure o esquema de autenticação do conector.
- Gatilho e estado — gatilhos de eventos e edições de arquivo de elementos de baixo nível.
Veja também
- Resumo
- uip é a lista de hooks da atividade do conector builder
- Opções
- Exemplo
- Formato dos dados (--output json)
- uip é connectors builder activity hook get
- Argumentos
- Opções
- Exemplo
- Formato dos dados (--output json)
- uip é connectors builder activity hook escolher
- Opções
- Contexto do corpo do gancho
- Exemplos
- Formato dos dados (--output json)
- uip é connectors builder atividade hook Delete
- Argumentos
- Opções
- Exemplo
- Formato dos dados (--output json)
- Relacionado
- Veja também