Embed Token - Generate Token
Birden çok rapor, veri kümesi ve hedef çalışma alanı için ekleme belirteci oluşturur.
- Raporların ve veri kümelerinin ilişkili olması gerekmez.
- Ekleme sırasında bir raporu bir veri kümesine bağlayabilirsiniz.
- Raporu yalnızca parametresi tarafından
targetWorkspaces
belirtilen çalışma alanlarında oluşturabilirsiniz.
Önemli
Bu API çağrısı yalnızca müşterileriniz için ekleme senaryosuyla ilgilidir. Bu API'yi kullanma hakkında daha fazla bilgi edinmek için bkz. Ekleme belirteci oluştururken dikkat edilmesi gerekenler.
İzinler
- Kimlik doğrulaması için hizmet sorumlusu kullanırken Bkz. Hizmet sorumlusuyla Power BI içeriği ekleme ve Önemli noktalar ve sınırlamalar.
- Sayfalandırılmış görsele sahip Power BI raporları için, API çağrısına sayfalandırılmış rapor kimliğini ekleyin. Daha fazla bilgi için bkz. örnek.
- Bu API çağrısı bir hizmet sorumlusu profili tarafından çağrılabilir. Daha fazla bilgi için bkz. Power BI Embedded hizmet sorumlusu profilleri.
Gerekli Kapsam
Bir gereksinim geçerli olmadığı sürece aşağıdakilerin tümü:
- Content.Create, GenerateTokenRequestV2 içinde bir hedef çalışma alanı belirtilirse gereklidir.
- Report.ReadWrite.All veya Report.Read.All, GenerateTokenRequestV2 içinde bir rapor belirtilirse gereklidir.
- GenerateTokenRequestV2'de en az bir rapor için bayrak belirtildiyse
allowEdit
Report.ReadWrite.All gereklidir. - Dataset.ReadWrite.All veya Dataset.Read.All
Sınırlamalar
- Raporu yalnızca parametresi tarafından
targetWorkspaces
belirtilen çalışma alanlarında oluşturabilirsiniz. - Tüm raporlar ve veri kümeleri bir V2 çalışma alanında bulunmalıdır.
- Tüm hedef çalışma alanları V2 çalışma alanları olmalıdır.
- En fazla 50 rapor.
- En fazla 50 veri kümesi.
- En fazla 50 hedef çalışma alanı.
- Azure Analysis Services veya Analysis Services şirket içi canlı bağlantı raporları için satır düzeyi güvenlik (RLS) ile ekleme belirteci oluşturma, yeniden bağlamadan sonra birkaç dakika boyunca çalışmayabilir.
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
İstek Gövdesi
Name | Tür | Description |
---|---|---|
datasets |
Veri kümelerinin listesi |
|
datasourceIdentities |
Tek Sign-On (SSO) etkin veri kaynaklarına bağlanırken kullanılacak kimliklerin listesi. |
|
identities |
Satır düzeyi güvenlik kuralları için kullanılacak kimliklerin listesi |
|
lifetimeInMinutes |
integer |
Belirtecin oluşturulduğu zamandan başlayarak dakika cinsinden en uzun yaşam süresi. Belirtecin sona erme süresini kısaltmak için kullanılabilir, ancak uzatmak için kullanılamaz. Değer pozitif bir tamsayı olmalıdır. Sıfır ( |
reports |
Rapor listesi |
|
targetWorkspaces |
Ekleme belirtecinin kaydetmeye izin verecekleri çalışma alanlarının listesi |
Yanıtlar
Name | Tür | Description |
---|---|---|
200 OK |
Tamam |
Örnekler
Example of generating an embed token for a dataset and two reports example. Only one of the reports can be edited.
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"allowEdit": true,
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
},
{
"id": "759908bb-ead8-4a43-9645-7ffbf921c68d"
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report which has a Power BI dataset as a datasource. The ID of the dataset must be specified in the request. The report and dataset can each have its own identity
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"xmlaPermissions": "ReadOnly"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "john@contoso.com",
"reports": [
"b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report with a data source identity
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report with multiple data source identities and a single identity blob
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
},
{
"datasourceType": "MySql",
"connectionDetails": {
"server": "New-MySql-Server",
"database": "New-MySql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a paginated report with multiple data source identities and multiple identity blobs
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "New-Sql-Server",
"database": "New-Sql-Database"
}
}
],
"identityBlob": "eyJ0eX....AAA="
},
{
"datasources": [
{
"datasourceType": "MySql",
"connectionDetails": {
"server": "New-MySql-Server",
"database": "New-MySql-Database"
}
}
],
"identityBlob": "eyJ0dW....AAA="
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token for a Power BI report with a dataset which is connected with DirectQuery to another Power BI dataset. All related dataset IDs must be specified in the request with 'xmlaPermissions' set to 'ReadOnly'. IdentityBlobs for all SSO-enabled data sources must be provided in the 'datasourceIdentities' array
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd",
"xmlaPermissions": "ReadOnly"
},
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229",
"xmlaPermissions": "ReadOnly"
}
],
"reports": [
{
"id": "f904e89a-7ebe-4aa0-8647-e409063b4850"
}
],
"datasourceIdentities": [
{
"datasources": [
{
"datasourceType": "Sql",
"connectionDetails": {
"server": "Best-Sql-Server",
"database": "Database3"
}
}
],
"identityBlob": "eyJ0eX....AAA="
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "ab4d49ae-c054-4c29-af52-93b5c80619ff",
"expiration": "2022-06-10T12:41:11Z"
}
Example of generating an embed token for a Power BI report with a paginated visual. The paginated report ID ('...4850') of the paginated visual must be included in the 'reports' section of the request.
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
},
{
"id": "f904e89a-7ebe-4aa0-8647-e409063b4850"
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "49ae3742-54c0-4c29-af52-619ff93b5c80",
"expiration": "2018-07-29T17:58:19Z"
}
Example of generating an embed token for two datasets with RLS identities and a single report with read-only permissions. The embed token lets you view the report, which is dynamically bound to two different datasets.
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
},
{
"id": "e75afc47-1150-45e0-aba7-4eb04e4876e5"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
},
{
"username": "iris@contoso.com",
"roles": [
"executive"
],
"datasets": [
"e75afc47-1150-45e0-aba7-4eb04e4876e5"
]
}
]
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
Example of generating an embed token that expires no later than ten minutes from the API call
Sample Request
POST https://api.powerbi.com/v1.0/myorg/GenerateToken
{
"datasets": [
{
"id": "cfafbeb1-8037-4d0c-896e-a46fb27ff229"
}
],
"reports": [
{
"id": "b2e49b01-2356-4456-bfb9-3f4c2bc4ddbd"
}
],
"identities": [
{
"username": "john@contoso.com",
"roles": [
"sales"
],
"datasets": [
"cfafbeb1-8037-4d0c-896e-a46fb27ff229"
]
}
],
"lifetimeInMinutes": 10
}
Sample Response
{
"token": "H4sI....AAA=",
"tokenId": "4b76f5ed-5a06-4150-8d1b-60f8e4c186f4",
"expiration": "2028-07-29T17:58:19Z"
}
Tanımlar
Name | Description |
---|---|
Datasource |
Power BI veri kaynağı bağlantı ayrıntıları. Veri Kaynaklarını Alma veya Grup halinde Veri Kaynakları Alma ile ilgili örneklere bakın. |
Datasource |
Çoklu oturum açma (SSO) etkinken DirectQuery veri kaynaklarını bağlamak için etkili kimlik. |
Datasource |
Tek bir veri kaynağını bağlantı ayrıntılarıyla benzersiz olarak tanımlayan bir nesne. |
Effective |
Kullanıcı kimliğini ve rollerini tanımlar. Daha fazla bilgi için bkz. Power BI Embedded ile satır düzeyi güvenlik. |
Embed |
Power BI ekleme belirteci |
Generate |
Power BI Belirteç İsteği V2 Oluşturma |
Generate |
GenerateTokenRequestV2'de bir veri kümesi nesnesi |
Generate |
GenerateTokenRequestV2'de bir rapor nesnesi |
Generate |
GenerateTokenRequestV2'de bir çalışma alanı nesnesi |
Identity |
Kimlik belirtmek için bir blob. Yalnızca Azure SQL directQuery bağlantısı olan veri kümeleri için desteklenir |
Xmla |
XMLA İzinleri |
DatasourceConnectionDetails
Power BI veri kaynağı bağlantı ayrıntıları. Veri Kaynaklarını Alma veya Grup halinde Veri Kaynakları Alma ile ilgili örneklere bakın.
Name | Tür | Description |
---|---|---|
account |
string |
Bağlantı hesabı |
classInfo |
string |
Bağlantı sınıfı bilgileri |
database |
string |
Bağlantı veritabanı |
domain |
string |
Bağlantı etki alanı |
emailAddress |
string |
Bağlantı e-posta adresi |
kind |
string |
Bağlantı türü |
loginServer |
string |
Bağlantı oturum açma sunucusu |
path |
string |
Bağlantı yolu |
server |
string |
Bağlantı sunucusu |
url |
string |
Bağlantı URL'si |
DatasourceIdentity
Çoklu oturum açma (SSO) etkinken DirectQuery veri kaynaklarını bağlamak için etkili kimlik.
Name | Tür | Description |
---|---|---|
datasources |
Bu kimliğin uygulandığı veri kaynakları dizisi. |
|
identityBlob |
string |
Kimliği belirtmek için bir blob. |
DatasourceSelector
Tek bir veri kaynağını bağlantı ayrıntılarıyla benzersiz olarak tanımlayan bir nesne.
Name | Tür | Description | |||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
connectionDetails |
Veri kaynağı bağlantı ayrıntıları. Sayfalandırılmış raporlar için Veri Al vePowerbi raporları için Veri Kaynağı Al API'lerini kullanarak bağlantı ayrıntılarını alabilirsiniz. |
||||||||||||||||||||||||||||||||||||||||||||||||||||
datasourceType |
string |
Veri kaynağının türü.
|
EffectiveIdentity
Kullanıcı kimliğini ve rollerini tanımlar. Daha fazla bilgi için bkz. Power BI Embedded ile satır düzeyi güvenlik.
Name | Tür | Description |
---|---|---|
auditableContext |
string |
EffectiveIdentity denetlenebilir bağlamı. Bu parametre sağlanır ve boş değilse EffectiveIdentity denetimini etkinleştirir ve değeri denetim kaydındaki kullanıcı adına ayarlanır. Aksi takdirde EffectiveIdentity bağlamı GenerateToken denetim kaydından atlanır. |
customData |
string |
Satır düzeyi güvenlik kurallarını uygulamak için kullanılan özel veriler. Yalnızca Azure Analysis Services modellerine ve bulut modellerine canlı bağlantı için desteklenir. |
datasets |
string[] |
Bu kimliğin geçerli olduğu bir veri kümesi dizisi |
identityBlob |
Kimliği belirten bir blob. Yalnızca Azure SQL directQuery bağlantısı olan veri kümeleri için desteklenir. |
|
reports |
string[] |
Bu kimliğin geçerli olduğu bir rapor dizisi. Yalnızca sayfalandırılmış raporlar için desteklenir. |
roles |
string[] |
RLS kurallarını uygulayan bir belirteç içindeki satır düzeyi güvenlik (RLS) rolleri dizisi. Bir kimlik en fazla 50 rol içerebilir. Rol, dışında |
username |
string |
Satır düzeyi güvenlik kuralları uygulayan bir belirteç içindeki geçerli kullanıcı adı. Şirket içi model için kullanıcı adı alfasayısal veya şu karakterlerden |
EmbedToken
Power BI ekleme belirteci
Name | Tür | Description |
---|---|---|
expiration |
string |
Belirtecin sona erme tarihi ve saati (UTC) |
token |
string |
Ekleme belirteci |
tokenId |
string |
Benzersiz belirteç kimliği. Denetim günlükleri aracılığıyla belirteç kimliği, belirteci kullanan işlemleri oluşturma işlemiyle ilişkilendirmek için kullanılabilir. |
GenerateTokenRequestV2
Power BI Belirteç İsteği V2 Oluşturma
Name | Tür | Description |
---|---|---|
datasets |
Veri kümelerinin listesi |
|
datasourceIdentities |
Tek Sign-On (SSO) etkin veri kaynaklarına bağlanırken kullanılacak kimliklerin listesi. |
|
identities |
Satır düzeyi güvenlik kuralları için kullanılacak kimliklerin listesi |
|
lifetimeInMinutes |
integer |
Belirtecin oluşturulduğu zamandan başlayarak dakika cinsinden en uzun yaşam süresi. Belirtecin sona erme süresini kısaltmak için kullanılabilir, ancak uzatmak için kullanılamaz. Değer pozitif bir tamsayı olmalıdır. Sıfır ( |
reports |
Rapor listesi |
|
targetWorkspaces |
Ekleme belirtecinin kaydetmeye izin verecekleri çalışma alanlarının listesi |
GenerateTokenRequestV2Dataset
GenerateTokenRequestV2'de bir veri kümesi nesnesi
Name | Tür | Description |
---|---|---|
id |
string |
Veri kümesi kimliği |
xmlaPermissions |
XMLA İzinleri |
GenerateTokenRequestV2Report
GenerateTokenRequestV2'de bir rapor nesnesi
Name | Tür | Description |
---|---|---|
allowEdit |
boolean |
Oluşturulan ekleme belirtecinin rapor düzenlemeyi destekleyip desteklemediği |
id |
string |
Rapor kimliği |
GenerateTokenRequestV2TargetWorkspace
GenerateTokenRequestV2'de bir çalışma alanı nesnesi
Name | Tür | Description |
---|---|---|
id |
string |
Çalışma alanı kimliği |
IdentityBlob
Kimlik belirtmek için bir blob. Yalnızca Azure SQL directQuery bağlantısı olan veri kümeleri için desteklenir
Name | Tür | Description |
---|---|---|
value |
string |
Azure SQL için OAuth 2.0 erişim belirteci |
XmlaPermissions
XMLA İzinleri
Name | Tür | Description |
---|---|---|
Off |
string |
Oluşturulan ekleme belirtecinin veri kümesinin XMLA uç noktasına erişim izinleri vermediğini gösterir. |
ReadOnly |
string |
Oluşturulan ekleme belirtecinin veri kümesinin XMLA uç noktası için Okuma erişimi izinleri olduğunu gösterir. |