<mxfile host="app.diagrams.net" agent="architecture-diagram" version="24.0.0">
  <diagram name="Integration Surface" id="08-integration-surface">
    <mxGraphModel dx="1400" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1780" pageHeight="500" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="_h1" value="Inbound" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="60" width="540" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.prod" value="&lt;b&gt;Product Services&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;transactional outbox&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="70" y="90" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico2" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.prod">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.dev" value="&lt;b&gt;Integration Developer&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;console + API&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#08427b;strokeColor=#073b6f;fontColor=#ffffff;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="70" y="190" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_plate3" value="" style="rounded=1;arcSize=22;html=1;fillColor=#ffffff;strokeColor=none;movable=0;resizable=0;connectable=0;" vertex="1" parent="n.dev">
          <mxGeometry x="5" y="19" width="32" height="32" as="geometry" />
        </mxCell>
        <mxCell id="_ico4" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACWklEQVRoge3Zz4tNYRzH8dfIrwmJGcZMIgpJEjZsiA1pLGhK2VDEcpLFWCkrG3tr/8GQHRNWipRhocxmombIaESNjDFj8XTrNHPunXueOfec2zTv+m7Ovd9z3p/uvec8z/eyRLm05Hy+lTiBbuzEFvzGKF6hH0M5XzMXVuAaRjAzTz3BwXI002nHc/OLJ2sKfSW4zqELw7LJJ+te4cYJWoXvdax8pa4WLV7hdp2C89UEthbsrh0/FyierPvF6nM9J/FK/cKqGJFlkQHORvZVYy2OxzTGBtgX2Zf7OWMDdET21aIzpik2wHRkXy3+xTTFBhiN7KvFSExTbIB3kX21eN+Ac1blknxvo9+xvMgA6zGWY4BS1kQ3ImVn1zjaCnZH+MifZpSdXdO4ULR4ko3Cjy9W/lbxynNZh0eyyU/gYhmytTiPD2qLT+EBtuV10bw39XAIZ7BLWHL8wWe8xmPhlrnEoiH2K7RfGI10YgMm8RBv6uhtRY+wfJ7CV3zCC/zIKpIlwBr04oowtErjozD3GRSmFePCTqsNe3EUJ4U712z+4hnuCmOaXOlW39Aqr+oXnjG5cFNYqxclX6kh7Fmo/OUSxJM1jM2x8oeFe3iZAWYwEBtgoAnkK3Uuq/yxJpBO1ttqotW2lD1ZEzeYA9id9kK1AKcb5xLNqbSDaQFasL2xLlHsSDuYFqBN+Kuo2ehKO5gWYHWDRWJJ9YqdCzUNizLAZOEW9ZHqlRZgTGNmnwtlMMube5X/9E3WN2zKEqAFdzTHYm5IWFhWFa1FB44o77nwBS+FrecSTcl/+F0YjmstwYwAAAAASUVORK5CYII=;" vertex="1" parent="n.dev">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.idp" value="&lt;b&gt;Tenant Identity&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;OIDC / SAML&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#f5f5f5;strokeColor=#8c8c8c;fontColor=#333333;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="70" y="290" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico5" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAAB40lEQVRoge3Yz6sOURzH8dfjXlfuQkoW6ooiIUk2imRna+kvYCMLUlIsWNhYKFtZKUp3y80/YGOHKD+6RCGJErnyazF3MsbM85z73HnmTDnv+tQ0c2bm8znnzJyZL4lEIpH4n+k1dJ21mMJKfMFjvG7o2iNjChfwFL8q9ARnsTqWwTrGcE7W01XGy/qEo5ob7UWxAjPCjJd1DRPtW/7DOG4bznyuqyKOxPkAgyE6jD24IXtOPmMWV7B9VObX4WtDAb73OfYDZ4xglC41ZD5UJ5s038PLlgPMYUOIuSUBbTbJ3vltMoFDIQ1DArRtPmdvSKOQALFW0kXfdxlO4IV253+uOyEmx2v2b8U0tgTHbZ57w564Ex/E6fWynuE4loeaX4VXHTBe1kNsCwlwuQNm6/RuUIg1+NYBo/30SGk6FV+jB7G0X8IOsBlH6g5Oi9/DIZotmi6OQKwVd6Gsl33e4O8AUf+WFsjGfKMYoPNVhAKT+UYxwIMIRoblTdXO3eI/oCGakxUX/qGHux0wOEg3q8zn7JP9l8Y2Waef2NUvAJzqgNE6XRxknmwqnZ5PG9twUdfVf/5Xsh/3O2D8I46pKbUMqr+MzQc5gB2y1Xqy7xnN8BbPcUtWknzfwj0TiUQikWif37lJeEKjXHZHAAAAAElFTkSuQmCC;" vertex="1" parent="n.idp">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_h6" value="Platform" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="620" y="60" width="540" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_box7" value="" style="rounded=1;arcSize=3;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#6c8ebf;dashed=1;dashPattern=8 8;verticalAlign=top;align=left;spacingLeft=12;spacingTop=6;fontSize=11;fontStyle=2;fontColor=#5b7fa6;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="620" y="80" width="540" height="290" as="geometry" />
        </mxCell>
        <mxCell id="n.core" value="&lt;b&gt;Webhook Delivery Service&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;40,000 endpoints&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;fontColor=#1a2b45;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="650" y="190" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico8" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAACpUlEQVRoge3YTYhNYRzH8Y+3iLzkbZoSdhJZkI1YUWzYWbCxJCU1ZShlpVhQKIoFG28pKxaKDUnyUtTQZJCExZSJEYMMFs+cXMe5955z7jn3jppf/evWfc7/+f6e5/+8nMOIWqsxJeWdhA3YhMUYQG9JfRWqZTiJfvyKxRPsxuyW0VXRHAGsx7/QSfED17ER41rACyYMAVwZAkoDnhTvhRlb2izwWiXSaJRWYvOxDy9yQOWZnW+4jPUaKLFGS+QBdmIGFuGgsAuVXmLTcUS+EnmDA1hQJff4oUG5mnNQ7mNdLfjJeJQx6QDOY61sZ0o7dqErY38/saVa0r0ZEt3BVkzLAF1Ny3EcfSn77sOUpEQ36zz4FkexpADoJI0XFu4lfK/DsjopwdOEhgO4INReWdeOJEUl9iSB6Rc2Rw1H10n0CS/RjcEySKuoF8/wOstDSTMQxaA/x//YIkljahcOs1c1WP6agbQG4mvhIOYWBD0aa6Sr/UIMRFF5KcuzPqYJh93zjP0WZqAyeoSpn5UCPLpPfWmgv8INRPEV57Aqljsa7ax9DDbbQGV0oQOn8Tnjs++wHwtbaSBP3Pb3i87EegbK3BLT6oOwAx0TDq5MaqWBhziFs8KCzqVmG+jHRZzA4yISNtPAGewQFnRhqncXKlLdCoanuQZK0YiBVuu/NzAcDrJqasOeeo0qDXwsjyWT2tCJbcJVIkkfoh+VJXSrRKg0asNh4RW2Q3X4r7iX9Mds4R20rItaZx3wtDfWvbVGYR6uNclAVvA+bMeoWgYirRC+i5ZhYKbwTp0WvH+ofa6PaCtxoyADh2Qf8X2Ymgc8rjJmpJQRb6WRUsHLNNJU8LgaMdJS8LiyGBlW4HHVMjKsweNaKXyW78Zd4atdIdvhiEZUsH4D+zfN9JHFLwAAAAAASUVORK5CYII=;" vertex="1" parent="n.core">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_h9" value="Outbound" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontStyle=1;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="1190" y="60" width="540" height="20" as="geometry" />
        </mxCell>
        <mxCell id="n.ep" value="&lt;b&gt;Customer Endpoints&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;HTTPS only&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#f5f5f5;strokeColor=#8c8c8c;fontColor=#333333;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1220" y="90" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico10" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAAB40lEQVRoge3Yz6sOURzH8dfjXlfuQkoW6ooiIUk2imRna+kvYCMLUlIsWNhYKFtZKUp3y80/YGOHKD+6RCGJErnyazF3MsbM85z73HnmTDnv+tQ0c2bm8znnzJyZL4lEIpH4n+k1dJ21mMJKfMFjvG7o2iNjChfwFL8q9ARnsTqWwTrGcE7W01XGy/qEo5ob7UWxAjPCjJd1DRPtW/7DOG4bznyuqyKOxPkAgyE6jD24IXtOPmMWV7B9VObX4WtDAb73OfYDZ4xglC41ZD5UJ5s038PLlgPMYUOIuSUBbTbJ3vltMoFDIQ1DArRtPmdvSKOQALFW0kXfdxlO4IV253+uOyEmx2v2b8U0tgTHbZ57w564Ex/E6fWynuE4loeaX4VXHTBe1kNsCwlwuQNm6/RuUIg1+NYBo/30SGk6FV+jB7G0X8IOsBlH6g5Oi9/DIZotmi6OQKwVd6Gsl33e4O8AUf+WFsjGfKMYoPNVhAKT+UYxwIMIRoblTdXO3eI/oCGakxUX/qGHux0wOEg3q8zn7JP9l8Y2Waef2NUvAJzqgNE6XRxknmwqnZ5PG9twUdfVf/5Xsh/3O2D8I46pKbUMqr+MzQc5gB2y1Xqy7xnN8BbPcUtWknzfwj0TiUQikWif37lJeEKjXHZHAAAAAElFTkSuQmCC;" vertex="1" parent="n.ep">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.kms" value="&lt;b&gt;AWS KMS&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;signing material&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontColor=#3a2b44;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1220" y="190" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico11" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.kms">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="n.notif" value="&lt;b&gt;Notification Service&lt;/b&gt;&lt;br&gt;&lt;font style=&quot;font-size:10px;color:#5b6b7d&quot;&gt;email, in-app&lt;/font&gt;" style="rounded=1;arcSize=8;whiteSpace=wrap;html=1;fillColor=#f5f5f5;strokeColor=#8c8c8c;fontColor=#333333;fontSize=12;fontFamily=Segoe UI;verticalAlign=middle;align=center;spacingLeft=38;" vertex="1" parent="1">
          <mxGeometry x="1220" y="290" width="480" height="70" as="geometry" />
        </mxCell>
        <mxCell id="_ico12" value="" style="shape=image;html=1;imageAspect=1;aspect=fixed;movable=0;resizable=0;rotatable=0;connectable=0;editable=0;deletable=0;noLabel=1;image=data:image/png,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;" vertex="1" parent="n.notif">
          <mxGeometry x="9" y="23" width="24" height="24" as="geometry" />
        </mxCell>
        <mxCell id="_e13" value="events" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.25;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.prod" target="n.core">
          <mxGeometry relative="1" x="-0.7" as="geometry">
            <Array as="points">
              <mxPoint x="580" y="130" />
              <mxPoint x="580" y="210" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e14" value="console" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.dev" target="n.core">
          <mxGeometry relative="1" x="-0.5" as="geometry">
            <Array as="points">
              <mxPoint x="600" y="230" />
              <mxPoint x="600" y="230" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e15" value="OIDC" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.75;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.idp" target="n.core">
          <mxGeometry relative="1" x="-0.7" as="geometry">
            <Array as="points">
              <mxPoint x="630" y="330" />
              <mxPoint x="630" y="240" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e16" value="signed POST" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.25;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.core" target="n.ep">
          <mxGeometry relative="1" x="-0.3" as="geometry">
            <Array as="points">
              <mxPoint x="1160" y="210" />
              <mxPoint x="1160" y="130" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e17" value="KMS" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;endArrow=block;endFill=1;strokeColor=#5a6570;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.core" target="n.kms">
          <mxGeometry relative="1" x="0.7" as="geometry">
            <Array as="points">
              <mxPoint x="1180" y="230" />
              <mxPoint x="1180" y="230" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="_e18" value="alerts" style="edgeStyle=orthogonalEdgeStyle;rounded=1;html=1;jettySize=auto;orthogonalLoop=1;dashed=1;endArrow=open;endFill=0;strokeColor=#d79b00;strokeWidth=1.4;fontSize=10;fontColor=#42536a;labelBackgroundColor=#ffffff;verticalAlign=bottom;fontFamily=Segoe UI;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="n.core" target="n.notif">
          <mxGeometry relative="1" x="-0.7" as="geometry">
            <Array as="points">
              <mxPoint x="1200" y="240" />
              <mxPoint x="1200" y="330" />
            </Array>
          </mxGeometry>
        </mxCell>
        <mxCell id="title" value="Integration Surface" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=20;fontStyle=1;fontColor=#16202c;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="20" width="1690" height="30" as="geometry" />
        </mxCell>
        <mxCell id="rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#c9d3de;" vertex="1" parent="1">
          <mxGeometry x="40" y="50" width="1690" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg19" value="" style="rounded=1;arcSize=30;html=1;fillColor=#dae8fc;strokeColor=#6c8ebf;" vertex="1" parent="1">
          <mxGeometry x="40" y="410" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg20" value="Application we own" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="70" y="400" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg21" value="" style="rounded=1;arcSize=30;html=1;fillColor=#08427b;strokeColor=#073b6f;" vertex="1" parent="1">
          <mxGeometry x="200" y="410" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg22" value="Person or role" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="230" y="400" width="90" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg23" value="" style="rounded=1;arcSize=30;html=1;fillColor=#f5f5f5;strokeColor=#8c8c8c;" vertex="1" parent="1">
          <mxGeometry x="340" y="410" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg24" value="External / third party" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="370" y="400" width="130" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg25" value="" style="rounded=1;arcSize=30;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;" vertex="1" parent="1">
          <mxGeometry x="520" y="410" width="20" height="10" as="geometry" />
        </mxCell>
        <mxCell id="_lg26" value="Security / platform" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="550" y="400" width="110" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg27" value="" style="html=1;endArrow=none;strokeColor=#5a6570;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="690" y="410" as="sourcePoint" />
            <mxPoint x="710" y="410" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg28" value="synchronous" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="710" y="400" width="70" height="20" as="geometry" />
        </mxCell>
        <mxCell id="_lg29" value="" style="html=1;endArrow=none;dashed=1;strokeColor=#d79b00;strokeWidth=1.4;" edge="1" parent="1">
          <mxGeometry relative="1" as="geometry">
            <mxPoint x="810" y="410" as="sourcePoint" />
            <mxPoint x="830" y="410" as="targetPoint" />
          </mxGeometry>
        </mxCell>
        <mxCell id="_lg30" value="event / async" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#7b8794;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="830" y="400" width="80" height="20" as="geometry" />
        </mxCell>
        <mxCell id="note" value="Omitted: the replay API (view 14), audit export to a tenant SIEM (view 20) and the observability path (view 17). Failure alerts leave by a channel that does not depend on the endpoint." style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=10;fontColor=#8a97a5;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="430" width="1690" height="20" as="geometry" />
        </mxCell>
        <mxCell id="foot-rule" value="" style="line;strokeWidth=1;html=1;strokeColor=#e3e9ef;" vertex="1" parent="1">
          <mxGeometry x="40" y="450" width="1690" height="10" as="geometry" />
        </mxCell>
        <mxCell id="foot" value="v 1.0   ·   owner Integration Platform Architecture   ·   date 2026-09" style="text;html=1;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;whiteSpace=wrap;fontSize=9;fontColor=#9aa7b4;fontFamily=Segoe UI;" vertex="1" parent="1">
          <mxGeometry x="40" y="470" width="1690" height="10" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
