npm package diff

Package: @forge/manifest

Versions: 9.1.0-next.0 - 9.1.0-next.1

File: package/out/schema/manifest-schema.json

Index: package/out/schema/manifest-schema.json
===================================================================
--- package/out/schema/manifest-schema.json
+++ package/out/schema/manifest-schema.json
@@ -577,100 +577,61 @@
                     "type": "array",
                     "items": {
                         "$schema": "http://json-schema.org/draft-07/schema#",
                         "additionalProperties": true,
-                        "properties": {
-                            "function": {
-                                "$ref": "#/definitions/ExtensionKey",
-                                "description": "The key of the function that should be invoked for this webtrigger.",
-                                "title": "function",
-                                "type": "string"
-                            },
-                            "response": {
-                                "description": "Response options for the webtrigger module.",
-                                "type": "object",
-                                "additionalProperties": false,
+                        "oneOf": [
+                            {
                                 "properties": {
-                                    "type": {
-                                        "description": "The type of response that the webtrigger will return. If set to 'static', the response will be the same for every invocation and will use one of the responses defined under 'outputs'.  If set to 'dynamic', the response will be generated by the function that the webtrigger is invoking.",
-                                        "type": "string",
-                                        "enum": [
-                                            "static",
-                                            "dynamic"
-                                        ]
+                                    "function": {
+                                        "$ref": "#/definitions/ExtensionKey",
+                                        "description": "The key of the function that should be invoked for this webtrigger.",
+                                        "title": "function",
+                                        "type": "string"
                                     },
-                                    "outputs": {
-                                        "description": "An array of defined responses that the webtrigger can return.",
-                                        "type": "array",
-                                        "maxItems": 20,
-                                        "items": {
-                                            "type": "object",
-                                            "additionalProperties": false,
-                                            "properties": {
-                                                "key": {
-                                                    "type": "string",
-                                                    "maxLength": 255
-                                                },
-                                                "statusCode": {
-                                                    "type": "integer"
-                                                },
-                                                "body": {
-                                                    "type": "string",
-                                                    "maxLength": 1024
-                                                },
-                                                "contentType": {
-                                                    "type": "string",
-                                                    "maxLength": 255
-                                                }
-                                            },
-                                            "required": [
-                                                "key",
-                                                "statusCode"
-                                            ]
-                                        }
+                                    "response": {
+                                        "$ref": "#/definitions/ResponseOptions",
+                                        "description": "Response options for the webtrigger module.",
+                                        "title": "response"
+                                    },
+                                    "key": {
+                                        "$ref": "#/definitions/ModuleKeySchema"
                                     }
                                 },
                                 "required": [
-                                    "type"
+                                    "function",
+                                    "key"
                                 ],
-                                "allOf": [
-                                    {
-                                        "if": {
-                                            "properties": {
-                                                "type": {
-                                                    "const": "static"
-                                                }
-                                            }
-                                        },
-                                        "then": {
-                                            "required": [
-                                                "outputs"
-                                            ]
-                                        },
-                                        "else": {
-                                            "not": {
-                                                "required": [
-                                                    "outputs"
-                                                ]
-                                            }
-                                        }
-                                    }
-                                ]
+                                "not": {
+                                    "required": [
+                                        "unlicensedAccess"
+                                    ]
+                                }
                             },
-                            "key": {
-                                "$ref": "#/definitions/ModuleKeySchema"
+                            {
+                                "properties": {
+                                    "endpoint": {
+                                        "$ref": "#/definitions/ExtensionKey",
+                                        "description": "The key of the service that should be invoked for this webtrigger."
+                                    },
+                                    "response": {
+                                        "$ref": "#/definitions/ResponseOptions"
+                                    },
+                                    "key": {
+                                        "$ref": "#/definitions/ModuleKeySchema"
+                                    }
+                                },
+                                "required": [
+                                    "endpoint",
+                                    "key"
+                                ],
+                                "not": {
+                                    "required": [
+                                        "unlicensedAccess"
+                                    ]
+                                }
                             }
-                        },
-                        "required": [
-                            "function",
-                            "key"
                         ],
-                        "type": "object",
-                        "not": {
-                            "required": [
-                                "unlicensedAccess"
-                            ]
-                        }
+                        "type": "object"
                     },
                     "minItems": 1
                 },
                 "consumer": {
@@ -965,71 +926,69 @@
                     "items": {
                         "$schema": "http://json-schema.org/draft-07/schema#",
                         "additionalProperties": true,
                         "description": "A Forge Remote endpoint definition.",
-                        "properties": {
-                            "remote": {
-                                "description": "key for the remotes definition",
-                                "maxLength": 255,
-                                "minLength": 1,
-                                "pattern": "^[a-zA-Z0-9-_]+$",
-                                "type": "string"
-                            },
-                            "route": {
-                                "type": "object",
+                        "oneOf": [
+                            {
                                 "properties": {
-                                    "path": {
-                                        "type": "string",
-                                        "description": "Path of the remote endpoint to invoke"
+                                    "remote": {
+                                        "description": "key for the remotes definition",
+                                        "maxLength": 255,
+                                        "minLength": 1,
+                                        "pattern": "^[a-zA-Z0-9-_]+$",
+                                        "type": "string"
+                                    },
+                                    "route": {
+                                        "$ref": "#/definitions/EndpointRoute"
+                                    },
+                                    "auth": {
+                                        "$ref": "#/definitions/EndpointAuth"
+                                    },
+                                    "key": {
+                                        "$ref": "#/definitions/ModuleKeySchema"
                                     }
                                 },
                                 "required": [
-                                    "path"
-                                ]
+                                    "remote",
+                                    "key"
+                                ],
+                                "not": {
+                                    "required": [
+                                        "unlicensedAccess"
+                                    ]
+                                }
                             },
-                            "auth": {
-                                "type": "object",
+                            {
                                 "properties": {
-                                    "appUserToken": {
-                                        "type": "object",
-                                        "required": [
-                                            "enabled"
-                                        ],
-                                        "properties": {
-                                            "enabled": {
-                                                "type": "boolean",
-                                                "description": "Enable sharing user token with the remote"
-                                            }
-                                        }
+                                    "service": {
+                                        "description": "key for the service definition",
+                                        "maxLength": 25,
+                                        "minLength": 1,
+                                        "pattern": "^[a-z]([a-z0-9-]{0,23}[a-z0-9])?$",
+                                        "type": "string"
                                     },
-                                    "appSystemToken": {
-                                        "type": "object",
-                                        "required": [
-                                            "enabled"
-                                        ],
-                                        "properties": {
-                                            "enabled": {
-                                                "type": "boolean",
-                                                "description": "Enable sharing app token with the remote"
-                                            }
-                                        }
+                                    "route": {
+                                        "$ref": "#/definitions/EndpointRoute"
+                                    },
+                                    "auth": {
+                                        "$ref": "#/definitions/EndpointAuth"
+                                    },
+                                    "key": {
+                                        "$ref": "#/definitions/ModuleKeySchema"
                                     }
+                                },
+                                "required": [
+                                    "service",
+                                    "key"
+                                ],
+                                "not": {
+                                    "required": [
+                                        "unlicensedAccess"
+                                    ]
                                 }
-                            },
-                            "key": {
-                                "$ref": "#/definitions/ModuleKeySchema"
                             }
-                        },
-                        "required": [
-                            "remote",
-                            "key"
                         ],
-                        "type": "object",
-                        "not": {
-                            "required": [
-                                "unlicensedAccess"
-                            ]
-                        }
+                        "type": "object"
                     },
                     "minItems": 1
                 },
                 "remote": {
@@ -27395,8 +27354,78 @@
                     "filter"
                 ]
             }
         },
+        "ResponseOptions": {
+            "additionalProperties": false,
+            "properties": {
+                "type": {
+                    "description": "The type of response that the webtrigger will return. If set to 'static', the response will be the same for every invocation and will use one of the responses defined under 'outputs'.  If set to 'dynamic', the response will be generated by the function that the webtrigger is invoking.",
+                    "type": "string",
+                    "enum": [
+                        "static",
+                        "dynamic"
+                    ]
+                },
+                "outputs": {
+                    "description": "An array of defined responses that the webtrigger can return.",
+                    "type": "array",
+                    "maxItems": 20,
+                    "items": {
+                        "type": "object",
+                        "additionalProperties": false,
+                        "properties": {
+                            "key": {
+                                "type": "string",
+                                "maxLength": 255
+                            },
+                            "statusCode": {
+                                "type": "integer"
+                            },
+                            "body": {
+                                "type": "string",
+                                "maxLength": 1024
+                            },
+                            "contentType": {
+                                "type": "string",
+                                "maxLength": 255
+                            }
+                        },
+                        "required": [
+                            "key",
+                            "statusCode"
+                        ]
+                    }
+                }
+            },
+            "required": [
+                "type"
+            ],
+            "allOf": [
+                {
+                    "if": {
+                        "properties": {
+                            "type": {
+                                "const": "static"
+                            }
+                        }
+                    },
+                    "then": {
+                        "required": [
+                            "outputs"
+                        ]
+                    },
+                    "else": {
+                        "not": {
+                            "required": [
+                                "outputs"
+                            ]
+                        }
+                    }
+                }
+            ],
+            "type": "object"
+        },
         "RuntimeLayer": {
             "type": "object",
             "properties": {
                 "identifier": {
@@ -27492,8 +27521,49 @@
             "required": [
                 "auth"
             ]
         },
+        "EndpointRoute": {
+            "type": "object",
+            "properties": {
+                "path": {
+                    "type": "string",
+                    "description": "Path of the remote endpoint to invoke"
+                }
+            },
+            "required": [
+                "path"
+            ]
+        },
+        "EndpointAuth": {
+            "type": "object",
+            "properties": {
+                "appUserToken": {
+                    "type": "object",
+                    "required": [
+                        "enabled"
+                    ],
+                    "properties": {
+                        "enabled": {
+                            "type": "boolean",
+                            "description": "Enable sharing user token with the remote"
+                        }
+                    }
+                },
+                "appSystemToken": {
+                    "type": "object",
+                    "required": [
+                        "enabled"
+                    ],
+                    "properties": {
+                        "enabled": {
+                            "type": "boolean",
+                            "description": "Enable sharing app token with the remote"
+                        }
+                    }
+                }
+            }
+        },
         "CoreActionIOType": {
             "type": "string",
             "enum": [
                 "boolean",