Receba novidades do Hedhog no seu e-mail
Novos lançamentos, receitas e breaking changes — sem spam.
Submódulo CRM
relation-types
Catálogo de códigos de tipo de relação pessoa-a-pessoa (por exemplo, cônjuge, parceiro, pai/mãe), usado para definir arestas de relacionamento entre registros de pessoa.
Caminho de origem: libraries/crm/src/person-relation-type
Arquivo do módulo: person-relation-type.module.ts
Introdução
O submódulo Relation Types expõe um catálogo de tipos de relacionamento pessoa-a-pessoa (por exemplo, cônjuge, parceiro, pai/mãe) usados para rotular arestas entre registros de pessoa individuais. O próprio catálogo é codificado de forma fixa no serviço como uma lista fixa (parent, child, spouse, sibling, guardian, dependent, partner, responsible, emergency_contact, other), em vez de respaldado por uma tabela de banco de dados — list e get sintetizam registros em tempo real indexando esse array constante.
Ao contrário de Contact Types e Document Types, este catálogo é intencionalmente imutável: o controller ainda expõe rotas POST, PATCH e DELETE (para consistência de interface com os outros submódulos de catálogo), mas a implementação do serviço de todas as três incondicionalmente lança um 400 Bad Request explicando que os tipos de relação são fixos por schema e não podem ser criados, atualizados ou excluídos. A superfície de ferramentas MCP espelha a intenção somente leitura no nível de design — apenas crm.relation-types.list e crm.relation-types.get são registradas como ferramentas, mesmo que as rotas HTTP de escrita subjacentes tecnicamente existam e simplesmente rejeitem cada chamada.
Este catálogo respalda as arestas de relação definidas entre registros person_individual, permitindo que o CRM represente estruturas familiares ou domésticas para contatos individuais sem confundir isso com os relacionamentos de empregador/empresa modelados separadamente no próprio registro de pessoa.
Endpoints HTTP
5 endpoints
Lista paginada de tipos de relação de pessoa, sintetizada a partir de uma lista fixa no código, e não de uma tabela de banco de dados.
- Query
- page, pageSize, search
Obtém um único tipo de relação por ID (índice baseado em 1 na lista fixa de tipos de relação).
- Params
- id (int)
Sempre rejeitado com um 400 Bad Request — os tipos de relação são fixos por schema e não podem ser criados dinamicamente.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| code | string | yes | — |
| locale | Record<string, { name: string }> | yes | e.g. { "en": { "name": "..." } } |
Sempre rejeitado com um 400 Bad Request — os tipos de relação não podem ser atualizados.
- Params
- id (int)
Sempre rejeitado com um 400 Bad Request — os tipos de relação não podem ser excluídos.
Body
| Field | Type | Required | Notes |
|---|---|---|---|
| ids | number[] | yes | IDs to delete |
Ferramentas MCP
Ferramentas nomeadas que podem ser chamadas por modelos de IA através do Model Context Protocol (MCP).
crm.relation-types.listLista tipos de relação de pessoa (por exemplo, parent, spouse, partner). Esses são tipos fixos do sistema e não podem ser criados ou excluídos
crm.relation-types.getRetorna um único tipo de relação de pessoa por ID