Criando uma hierarquia de API
Endpoints personalizados e queries persistidas podem ser organizados em uma hierarquia. Isso é alcançado quando eles declaram um pai, caso em que seus caminhos de endpoint estenderão o caminho de endpoint do pai.
Por exemplo, podemos criar esta hierarquia:
- Query persistida pai:
/graphql-query/posts/ - Query persistida filha:
/graphql-query/posts/english/ - Query persistida filha:
/graphql-query/posts/french/
O número de níveis é ilimitado, portanto também podemos criar:
/graphql-query/posts//graphql-query/posts/mobile-app//graphql-query/posts/mobile-app/english//graphql-query/posts/mobile-app/french//graphql-query/posts/website//graphql-query/posts/website/english//graphql-query/posts/website/french/
Consulte o guia Estratégias para hierarquias de API para ver as configurações possíveis.
Herança de propriedades
Endpoints personalizados e queries persistidas filhas herdarão propriedades do pai.
Endpoints personalizados e queries persistidas
Endpoints personalizados e queries persistidas filhas herdarão a configuração de schema do pai.
Apenas queries persistidas
Queries persistidas filhas também herdarão a query GraphQL e as variáveis do pai. Os valores das variáveis podem ser substituídos pelo filho, variável por variável.
Por exemplo, se o pai declarar estas variáveis:
{
"limit": 5,
"offset": 0
}E o filho declarar estas variáveis:
{
"limit": 10
}Então, as variáveis calculadas para o filho serão:
{
"limit": 10,
"offset": 0
}Criando uma hierarquia de API
No endpoint personalizado ou na query persistida, nas configurações do Documento, há uma seção Atributos da página com um menu suspenso de todas as outras entidades, para selecionar como pai:

Queries persistidas
Ao selecionar um pai, a query persistida oferecerá uma nova opção, "Inherit query from ancestor(s)?"
Defina esta opção como Sim, para que a query persistida filha herde a query GraphQL do pai:

Exemplo
Esta query persistida define sua query GraphQL e declara a variável $limit com o valor 1:

Uma query persistida filha a estende, herdando a query GraphQL e substituindo o valor da variável $limit para 2:
