Showing results for 
Search instead for 
Did you mean: 
A New Home in the New Year for SAP Community!

Subscribing a Kyma based Multi tenant app in consumer account fails with :create APIRule error



Hi All,

I'm new to Kyma, BTP and all things cloud. Was trying to implement the above tutorial for a Kyma based multitenant app. The backend and app router are deployed to the cluster successfully. I tried subscribing from a Consumer subaccount, but it fails with following error:
Technical Details:
subscribe failed. Error: subscribe failed in create callback.

 Error description: Timestamp: Fri Feb 03 09:53:47 GMT 2023, correlationId: 8007ab48-fa1b-4d3a-73cc-d67f2a4efe42, Details: Error manage callbacks: Failed to call callback url.....
eventType=CREATE) Reason: returned value from application: 500 INTERNAL_SERVER_ERROR, with body: create APIRule error


As the error log contains uuids to subaccounts, I havent pasted the whole log, do let me know what else to add.
While exploring the API Rule resource, I found that the Kyma runtime is enforcing beta1 version, so I tweaked the 'createApiRule.js' to create a v1beta APIRule, but the same error still occurs. Could someone support on this?






module.exports = {
    createApiRule: createApiRule

function createApiRule(svcName, svcPort, host, clusterName) {

    let forwardUrl = host + '.' + clusterName;
    const supportedMethodsList = [
    const access_strategy = {
        path: '/.*',
        methods: supportedMethodsList,
        // mutators: [{
        //     handler: 'header',
        //     config: {
        //         headers: {
        //             "x-forwarded-host": forwardUrl,
        //         }
        //     },
        // }],
        accessStrategies: [{
            handler: 'allow'

    const apiRuleTemplate = {
        apiVersion: '',
        kind: 'APIRule',
        metadata: {
            name: host + '-apirule',
        spec: {
            gateway: 'kyma-gateway.kyma-system.svc.cluster.local',
            host: host,
            service: {                
                name: svcName,
                port: svcPort,
            rules: [access_strategy],
    return apiRuleTemplate;



Galactic 2
Why aren't you using .yaml?

if you're talking about deployment, I've used the yaml files as indicated in

few changes I've done is change some services, which were updated to latest apiVersion. eg:
apiVersion: was giving an error so changed to 

apiVersion: in deployment-services.yaml.

Major change was in createApiRule.js, since kyma dashboard was restricting creation to 
apiVersion: '',
 kind: 'APIRule',

Answers (0)