{
  "title": "Codeunit 6301 Power BI Service Mgt.",
  "url": "https://jonas-paprotka.de/ref/codeunit/6301-power-bi-service-mgt/",
  "author": "Jonas Paprotka",
  "license": "Content © 2026 Jonas Paprotka. Quote freely with attribution and a link.",
  "subject": "Microsoft Dynamics 365 Business Central",
  "checked": "2026-09-20",
  "source": {
    "feed": "https://dynamicssmb2.pkgs.visualstudio.com/DynamicsBCPublicFeeds/_packaging/MSSymbols/nuget/v3/index.json",
    "package": "Microsoft.BaseApplication.symbols.437dbf0e-84ff-417a-965d-ed2bb9650972",
    "build": "28.5.54151.54365",
    "code": {
      "29": {
        "url": "https://jonas-paprotka.de/ref/codeunit/6301-power-bi-service-mgt/source/29/",
        "repo": "https://github.com/microsoft/BCApps",
        "branch": "releases/29.x",
        "commit": "a66254c3b8b5bb1cea290dc8f9d097aec4381153",
        "path": "src/Layers/W1/BaseApp/Modules/System/PowerBI/PowerBIServiceMgt.Codeunit.al",
        "license": "MIT"
      }
    },
    "note": "Presence per major, highest build of each; 17 is the oldest major on the feed. Local procedures are not listed."
  },
  "object": {
    "type": "codeunit",
    "id": 6301,
    "name": "Power BI Service Mgt.",
    "app": "Base Application",
    "appByVersion": [
      {
        "app": "Base Application",
        "from": 17
      }
    ],
    "nameByVersion": [
      {
        "name": "Power BI Service Mgt.",
        "from": 17
      }
    ],
    "namespace": "System.Integration.PowerBI",
    "versions": "17-28",
    "majors": [
      17,
      18,
      19,
      20,
      21,
      22,
      23,
      24,
      25,
      26,
      27,
      28
    ],
    "extends": null,
    "sourceTable": null,
    "sourceFile": "Modules/System/PowerBI/PowerBIServiceMgt.Codeunit.al",
    "obsolete": null,
    "obsoleteSeenFrom": null,
    "byVersion": {
      "17": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 49,
          "values": 0
        },
        "stub": false
      },
      "18": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 54,
          "values": 0
        },
        "stub": false
      },
      "19": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 53,
          "values": 0
        },
        "stub": false
      },
      "20": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 55,
          "values": 0
        },
        "stub": false
      },
      "21": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 37,
          "values": 0
        },
        "stub": false
      },
      "22": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 32,
          "values": 0
        },
        "stub": false
      },
      "23": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "System.Integration.PowerBI",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 38,
          "values": 0
        },
        "stub": false
      },
      "24": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "System.Integration.PowerBI",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 32,
          "values": 0
        },
        "stub": false
      },
      "25": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "System.Integration.PowerBI",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 31,
          "values": 0
        },
        "stub": false
      },
      "26": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "System.Integration.PowerBI",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 25,
          "values": 0
        },
        "stub": false
      },
      "27": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "System.Integration.PowerBI",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 25,
          "values": 0
        },
        "stub": false
      },
      "28": {
        "app": "base-application",
        "name": "Power BI Service Mgt.",
        "ns": "System.Integration.PowerBI",
        "obsolete": null,
        "target": "",
        "sourceTable": "",
        "counts": {
          "fields": 0,
          "keys": 0,
          "methods": 25,
          "values": 0
        },
        "stub": false
      }
    },
    "fields": [],
    "keys": [],
    "procedures": [
      {
        "name": "GetReports",
        "sig": "(var Record Power BI Report Buffer, var Text, var Text, Text[30])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use GetReportsAndWorkspaces in codeunit \"Power BI Workspace Mgt.\" instead.",
          "tag": "19.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21
        ],
        "range": "17-21",
        "first": 17,
        "last": 21,
        "obsoleteSince": 19,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 19,
            "to": 21,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use GetReportsAndWorkspaces in codeunit \"Power BI Workspace Mgt.\" instead.",
              "tag": "19.0"
            }
          }
        ]
      },
      {
        "name": "GetReportsForUserContext",
        "sig": "(var Record Power BI Report Buffer, var Text, var Text, Text[30])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use the GetReportsForUserContext without the ExceptionMessage and ExceptionDetails parameters.",
          "tag": "19.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21
        ],
        "range": "17-21",
        "first": 17,
        "last": 21,
        "obsoleteSince": 19,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 19,
            "to": 21,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use the GetReportsForUserContext without the ExceptionMessage and ExceptionDetails parameters.",
              "tag": "19.0"
            }
          }
        ]
      },
      {
        "name": "CheckForPowerBILicense",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "License check is no longer performed as a background task. Use CheckForPowerBILicenseInForeground instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "License check is no longer performed as a background task. Use CheckForPowerBILicenseInForeground instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "IsReportEnabled",
        "sig": "(Guid, Text)",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "A report is enabled for a context if there is a mathcing entry in table \"Power BI Report Configuration\". Substitute calls to IsReportEnabled(ReportId, Context) with PowerBIReportConfiguration.Get(UserSecurityId(), ReportId, Context).",
          "tag": "23.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "17-25",
        "first": 17,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 17,
            "to": 22,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "A report is enabled for a context if there is a mathcing entry in table \"Power BI Report Configuration\". Substitute calls to IsReportEnabled(ReportId, Context) with PowerBIReportConfiguration.Get(UserSecurityId(), ReportId, Context).",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "IsUserReadyForPowerBI",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetPowerBIResourceUrl",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetPowerBiResourceName",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetGenericError",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetReportPageSize",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use GetFactboxRatio or GetMainPageRatio instead.",
          "tag": "20.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22
        ],
        "range": "17-22",
        "first": 17,
        "last": 22,
        "obsoleteSince": 20,
        "spans": [
          {
            "from": 17,
            "to": 19,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 20,
            "to": 22,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use GetFactboxRatio or GetMainPageRatio instead.",
              "tag": "20.0"
            }
          }
        ]
      },
      {
        "name": "GetUnauthorizedErrorText",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Error texts should be defined per extension. In other words, define your own text constants.",
          "tag": "23.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "17-25",
        "first": 17,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 17,
            "to": 22,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Error texts should be defined per extension. In other words, define your own text constants.",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "GetPowerBIUrl",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use the function GetLicenseUrl of codeunit 6324 \"Power BI Url Mgt\" instead.",
          "tag": "19.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21
        ],
        "range": "17-21",
        "first": 17,
        "last": 21,
        "obsoleteSince": 19,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 19,
            "to": 21,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use the function GetLicenseUrl of codeunit 6324 \"Power BI Url Mgt\" instead.",
              "tag": "19.0"
            }
          }
        ]
      },
      {
        "name": "GetContentPacksServicesUrl",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetContentPacksMyOrganizationUrl",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "UploadDefaultReportInBackground",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use SynchronizeReportsInBackground instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use SynchronizeReportsInBackground instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "UploadDefaultReport",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Run codeunit \"Power BI Report Synchronizer\" instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Run codeunit \"Power BI Report Synchronizer\" instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "RetryUnfinishedReportsInBackground",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use SynchronizeReportsInBackground instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use SynchronizeReportsInBackground instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "RetryAllPartialReportUploads",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Run codeunit \"Power BI Report Synchronizer\" instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Run codeunit \"Power BI Report Synchronizer\" instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "SelectDefaultReports",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use PowerBIReportSynchronizer.SelectDefaultReports instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use PowerBIReportSynchronizer.SelectDefaultReports instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "DeleteDefaultReportsInBackground",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use SynchronizeReportsInBackground instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use SynchronizeReportsInBackground instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "DeleteMarkedDefaultReports",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Run codeunit \"Power BI Report Synchronizer\" instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Run codeunit \"Power BI Report Synchronizer\" instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "UserNeedsToDeployReports",
        "sig": "(Text[50])",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use PowerBIReportSynchronizer.UserNeedsToSynchronize instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use PowerBIReportSynchronizer.UserNeedsToSynchronize instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "UserNeedsToRetryUploads",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use PowerBIReportSynchronizer.UserNeedsToSynchronize instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use PowerBIReportSynchronizer.UserNeedsToSynchronize instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "UserNeedsToDeleteReports",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use PowerBIReportSynchronizer.UserNeedsToSynchronize instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use PowerBIReportSynchronizer.UserNeedsToSynchronize instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "IsUserDeployingReports",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use IsUserSynchronizingReports instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use IsUserSynchronizingReports instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "IsUserRetryingUploads",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use IsUserSynchronizingReports instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use IsUserSynchronizingReports instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "IsUserDeletingReports",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use IsUserSynchronizingReports instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use IsUserSynchronizingReports instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "SetIsDeployingReports",
        "sig": "(Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use SetIsSynchronizing instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use SetIsSynchronizing instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "SetIsRetryingUploads",
        "sig": "(Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use SetIsSynchronizing instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use SetIsSynchronizing instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "SetIsDeletingReports",
        "sig": "(Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use SetIsSynchronizing instead.",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use SetIsSynchronizing instead.",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "IsPBIServiceAvailable",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Power BI service status is no longer cached.",
          "tag": "22.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24
        ],
        "range": "17-24",
        "first": 17,
        "last": 24,
        "obsoleteSince": 22,
        "spans": [
          {
            "from": 17,
            "to": 21,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 22,
            "to": 24,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Power BI service status is no longer cached.",
              "tag": "22.0"
            }
          }
        ]
      },
      {
        "name": "LogException",
        "sig": "(var Text, var Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use more specific tags to make data classification and filtering easier.",
          "tag": "16.0"
        },
        "majors": [
          17,
          18
        ],
        "range": "17-18",
        "first": 17,
        "last": 18,
        "obsoleteSince": 17,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use more specific tags to make data classification and filtering easier.",
              "tag": "16.0"
            }
          }
        ]
      },
      {
        "name": "LogMessage",
        "sig": "(Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use more specific tags to make data classification and filtering easier.",
          "tag": "16.0"
        },
        "majors": [
          17,
          18
        ],
        "range": "17-18",
        "first": 17,
        "last": 18,
        "obsoleteSince": 17,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use more specific tags to make data classification and filtering easier.",
              "tag": "16.0"
            }
          }
        ]
      },
      {
        "name": "CanHandleServiceCalls",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Disabling the integration through AzureADMgtSetup has been discontinued. Remove permissions from single users instead.",
          "tag": "21.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": 21,
        "spans": [
          {
            "from": 17,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 21,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Disabling the integration through AzureADMgtSetup has been discontinued. Remove permissions from single users instead.",
              "tag": "21.0"
            }
          }
        ]
      },
      {
        "name": "HasUploads",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Check \"Power BI Report Uploads\" table directly",
          "tag": "23.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "17-25",
        "first": 17,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 17,
            "to": 22,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Check \"Power BI Report Uploads\" table directly",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "GetFactboxFilterFromID",
        "sig": "(Text)",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Hardcoded name filtering for reports is deprecated. The user can search reports with the builtin search function in the page.",
          "tag": "19.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21
        ],
        "range": "17-21",
        "first": 17,
        "last": 21,
        "obsoleteSince": 19,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 19,
            "to": 21,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Hardcoded name filtering for reports is deprecated. The user can search reports with the builtin search function in the page.",
              "tag": "19.0"
            }
          }
        ]
      },
      {
        "name": "GetData",
        "sig": "(var Text, var Text, Text)",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use interface \"Power BI Service Provider\" and its implementations instead.",
          "tag": "23.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "17-25",
        "first": 17,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 17,
            "to": 22,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use interface \"Power BI Service Provider\" and its implementations instead.",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "GetDataCatchErrors",
        "sig": "(var Text, var Text, var Integer, Text)",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use interface \"Power BI Service Provider\" and its implementations instead.",
          "tag": "23.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "17-25",
        "first": 17,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 17,
            "to": 22,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use interface \"Power BI Service Provider\" and its implementations instead.",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "GetReportsUrl",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "IsPowerBIDeploymentEnabled",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Global switch for Power BI report deployment is no longer supported.",
          "tag": "21.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": 21,
        "spans": [
          {
            "from": 17,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 21,
            "to": 23,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Global switch for Power BI report deployment is no longer supported.",
              "tag": "21.0"
            }
          }
        ]
      },
      {
        "name": "GetIsDeployingReports",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "User IsUserSynchronizingReports instead",
          "tag": "18.0"
        },
        "majors": [
          17,
          18,
          19,
          20
        ],
        "range": "17-20",
        "first": 17,
        "last": 20,
        "obsoleteSince": 18,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "User IsUserSynchronizingReports instead",
              "tag": "18.0"
            }
          }
        ]
      },
      {
        "name": "UpdateEmbedUrlCache",
        "sig": "(var Record Power BI Report Buffer, Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "This function was used to update old records just-in-time, and is no longer needed.",
          "tag": "19.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21
        ],
        "range": "17-21",
        "first": 17,
        "last": 21,
        "obsoleteSince": 19,
        "spans": [
          {
            "from": 17,
            "to": 18,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 19,
            "to": 21,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "This function was used to update old records just-in-time, and is no longer needed.",
              "tag": "19.0"
            }
          }
        ]
      },
      {
        "name": "GetEnglishContext",
        "sig": "()",
        "returns": "Code[30]",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Code[30]",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "IsUserAdminForPowerBI",
        "sig": "(Guid)",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "FormatSpecialChars",
        "sig": "(Text)",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use platform capabilities to escape text in JSON strings instead. For example, text is escaped by platform when calling JsonArray.Add(Text).",
          "tag": "23.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "17-25",
        "first": 17,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 17,
            "to": 22,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use platform capabilities to escape text in JSON strings instead. For example, text is escaped by platform when calling JsonArray.Add(Text).",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "CheckPowerBITablePermissions",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetPowerBiTelemetryCategory",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "17-28",
        "first": 17,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 17,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "CheckForPowerBILicenseInForeground",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "18-28",
        "first": 18,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 18,
            "to": 28,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "SynchronizeReportsInBackground",
        "sig": "()",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "This function requires now a context parameter.",
          "tag": "23.0"
        },
        "majors": [
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "18-25",
        "first": 18,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 18,
            "to": 22,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "This function requires now a context parameter.",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "IsUserSynchronizingReports",
        "sig": "()",
        "returns": "Boolean",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "18-28",
        "first": 18,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 18,
            "to": 28,
            "returns": "Boolean",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "SetIsSynchronizing",
        "sig": "(Boolean)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Information on whether the user is synchronizing reports is no longer kept in a dedicated table. Instead, a user is synchronizing if they have a pending job queue entry for codeunit Power BI Report Synchronizer. If you want to stop synchronization for a user, create a new Job Queue Entry for codeunit Power BI Report Synchronizer and set it to On Hold. If you want to restart synchronization, make sure there is a ready job queue entry for codeunit Power BI Report Synchronizer.",
          "tag": "23.0"
        },
        "majors": [
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25
        ],
        "range": "18-25",
        "first": 18,
        "last": 25,
        "obsoleteSince": 23,
        "spans": [
          {
            "from": 18,
            "to": 22,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 23,
            "to": 25,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Information on whether the user is synchronizing reports is no longer kept in a dedicated table. Instead, a user is synchronizing if they have a pending job queue entry for codeunit Power BI Report Synchronizer. If you want to stop synchronization for a user, create a new Job Queue Entry for codeunit Power BI Report Synchronizer and set it to On Hold. If you want to restart synchronization, make sure there is a ready job queue entry for codeunit Power BI Report Synchronizer.",
              "tag": "23.0"
            }
          }
        ]
      },
      {
        "name": "GetJobQueueCategoryCode",
        "sig": "()",
        "returns": "Code[10]",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          18,
          19,
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "18-28",
        "first": 18,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 18,
            "to": 28,
            "returns": "Code[10]",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetReportsForUserContext",
        "sig": "(var Record Power BI Report Buffer, Text[30])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Use physical table PowerBIReportConfiguration instead of temporary table TempPowerBIReportBuffer.",
          "tag": "21.0"
        },
        "majors": [
          19,
          20,
          21,
          22,
          23
        ],
        "range": "19-23",
        "first": 19,
        "last": 23,
        "obsoleteSince": 21,
        "spans": [
          {
            "from": 19,
            "to": 20,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 21,
            "to": 23,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Use physical table PowerBIReportConfiguration instead of temporary table TempPowerBIReportBuffer.",
              "tag": "21.0"
            }
          }
        ]
      },
      {
        "name": "GetFactboxRatio",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "This function is now deprecated, and the client decides the addin ratio instead.",
          "tag": "27.0"
        },
        "majors": [
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "20-28",
        "first": 20,
        "last": 28,
        "obsoleteSince": 26,
        "spans": [
          {
            "from": 20,
            "to": 25,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 26,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "This function is now deprecated, and the client decides the addin ratio instead.",
              "tag": "27.0"
            }
          }
        ]
      },
      {
        "name": "GetMainPageRatio",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "This function is now deprecated, and the client decides the addin ratio instead.",
          "tag": "27.0"
        },
        "majors": [
          20,
          21,
          22,
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "20-28",
        "first": 20,
        "last": 28,
        "obsoleteSince": 26,
        "spans": [
          {
            "from": 20,
            "to": 25,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 26,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "This function is now deprecated, and the client decides the addin ratio instead.",
              "tag": "27.0"
            }
          }
        ]
      },
      {
        "name": "SynchronizeReportsInBackground",
        "sig": "(Text[50])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "23-28",
        "first": 23,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "AddReportVisualForContext",
        "sig": "(Guid, Text[200], Text[200], Text[50])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "23-28",
        "first": 23,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "AddReportForContext",
        "sig": "(Guid, Text[50])",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "23-28",
        "first": 23,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetPowerBiFeatureTelemetryName",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "internal",
        "obsolete": null,
        "majors": [
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "23-28",
        "first": 23,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 28,
            "returns": "Text",
            "kind": "procedure",
            "access": "internal",
            "obsolete": null
          }
        ]
      },
      {
        "name": "GetEmbedAccessToken",
        "sig": "()",
        "returns": "Text",
        "kind": "procedure",
        "access": "internal",
        "obsolete": null,
        "majors": [
          23
        ],
        "range": "23",
        "first": 23,
        "last": 23,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 23,
            "returns": "Text",
            "kind": "procedure",
            "access": "internal",
            "obsolete": null
          }
        ]
      },
      {
        "name": "CreateServiceProvider",
        "sig": "(var Interface Power BI Service Provider)",
        "returns": "",
        "kind": "procedure",
        "access": "internal",
        "obsolete": null,
        "majors": [
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "23-28",
        "first": 23,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "internal",
            "obsolete": null
          }
        ]
      },
      {
        "name": "InitializeAddinToken",
        "sig": "(ControlAddIn PowerBIManagement)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          24,
          25,
          26,
          27,
          28
        ],
        "range": "24-28",
        "first": 24,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 24,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "LogVisualLoaded",
        "sig": "(Text, Enum Power BI Element Type)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          26,
          27,
          28
        ],
        "range": "26-28",
        "first": 26,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 26,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      },
      {
        "name": "LogEmbedError",
        "sig": "(Text)",
        "returns": "",
        "kind": "procedure",
        "access": "public",
        "obsolete": null,
        "majors": [
          26,
          27,
          28
        ],
        "range": "26-28",
        "first": 26,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 26,
            "to": 28,
            "returns": "",
            "kind": "procedure",
            "access": "public",
            "obsolete": null
          }
        ]
      }
    ],
    "events": [
      {
        "name": "OnGetReports",
        "sig": "(var Record Power BI Report Buffer, var Text, var Text, Text[30])",
        "returns": "",
        "kind": "integrationevent",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Events to override the Power BI integration behavior are no longer supported.",
          "tag": "21.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": 21,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "integrationevent",
            "access": "local",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "integrationevent",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 21,
            "to": 23,
            "returns": "",
            "kind": "integrationevent",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Events to override the Power BI integration behavior are no longer supported.",
              "tag": "21.0"
            }
          }
        ]
      },
      {
        "name": "OnUploadReports",
        "sig": "(var DotNet ImportReportRequestList, var DotNet ImportReportResponseList)",
        "returns": "",
        "kind": "integrationevent",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Events to override the Power BI integration behavior are no longer supported.",
          "tag": "21.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": 21,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "integrationevent",
            "access": "local",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "integrationevent",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 21,
            "to": 23,
            "returns": "",
            "kind": "integrationevent",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Events to override the Power BI integration behavior are no longer supported.",
              "tag": "21.0"
            }
          }
        ]
      },
      {
        "name": "OnRetryUploads",
        "sig": "(var DotNet ImportedReportRequestList, var DotNet ImportedReportResponseList)",
        "returns": "",
        "kind": "integrationevent",
        "access": "public",
        "obsolete": {
          "state": "Pending",
          "reason": "Events to override the Power BI integration behavior are no longer supported.",
          "tag": "21.0"
        },
        "majors": [
          17,
          18,
          19,
          20,
          21,
          22,
          23
        ],
        "range": "17-23",
        "first": 17,
        "last": 23,
        "obsoleteSince": 21,
        "spans": [
          {
            "from": 17,
            "to": 17,
            "returns": "",
            "kind": "integrationevent",
            "access": "local",
            "obsolete": null
          },
          {
            "from": 18,
            "to": 20,
            "returns": "",
            "kind": "integrationevent",
            "access": "public",
            "obsolete": null
          },
          {
            "from": 21,
            "to": 23,
            "returns": "",
            "kind": "integrationevent",
            "access": "public",
            "obsolete": {
              "state": "Pending",
              "reason": "Events to override the Power BI integration behavior are no longer supported.",
              "tag": "21.0"
            }
          }
        ]
      },
      {
        "name": "OnServiceProviderCreate",
        "sig": "(var Interface Power BI Service Provider, var Boolean)",
        "returns": "",
        "kind": "internalevent",
        "access": "local",
        "obsolete": null,
        "majors": [
          23,
          24,
          25,
          26,
          27,
          28
        ],
        "range": "23-28",
        "first": 23,
        "last": 28,
        "obsoleteSince": null,
        "spans": [
          {
            "from": 23,
            "to": 28,
            "returns": "",
            "kind": "internalevent",
            "access": "local",
            "obsolete": null
          }
        ]
      }
    ],
    "values": []
  }
}