Add exception to rule 224 for merchant gateway APIs
ePaul opened this issue · 12 comments
As discussed in the guild meeting on 2020-07-14, the host name api.merchants.zalando.com
(and api-sandbox.merchants.zalando.com
) is used by several APIs exposed to merchant partners via the merchant gateway.
We want to extend rule 224 to allow this as an exception to the general *.zalandoapis.com rule (for external-partner APIs)
When the same services are used inside the company (not through the gateway), they should use "normal" naming schemes for their API.
Zally should then also be updated to allow those domain names.
@ePaul is api.merchants.zalando.com
and api-sandbox.merchants.zalando.com
that should be whitelisted when the audience is external-partner
@rbarilani is it just a host name or you use functional names also? Do you have something like <functional-name>.api.merchants.zalando.com
?
We missed the Rule 223 where external-partner
API's MUST use functional naming schema which is not true in this case.
@vadeg sorry I don't get completely your comment, what is the action item that you are suggesting?
@rbarilani Rule 223 says that external-partner
must follow functional naming. Since this is no longer true and external-partner
audience has an exception by only using two hostnames api.merchants.zalando.com
and api-sandbox.merchants.zalando.com
which violate rule 223 also my question is should we update rule 223 also by, for example, moving external-partner
from must to should?
@vadeg IMHO we should not change that rule to a SHOULD but state the possibility to have exceptions which need to be backed up by business reasons and approved by the api-guild (If I remember correctly that was also the preferred solution discussed during the JF).
When talking with @tkrop I outlined that the main action item will be extending/modifying Zally FunctionalNamingForHostnamesRule to be configurable so we can provide the zalando specific configuration with this exception. WDYT?
@rbarilani I mean the table inside the rule but not the rule itself. In the table 'external-partner' must follow functional naming schema what is not true in this case. It means it can not be in 'must' but in 'should' imho.
Can we just add a * to the MUST in the table, and then in a footnote point to the exception? I would prefer to not make it non-MUST.
I would prefer to not make it non-MUST.
Why? It seems to me as SHOULD because there are circumstances to ignore it, e.g. using Merchant Gateway.
This word, or the adjective "RECOMMENDED", mean that there
may exist valid reasons in particular circumstances to ignore a
particular item, but the full implications must be understood and
carefully weighed before choosing a different course.
@tfrauenstein will propose an update to the guidelines.