Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Laxmikanth
Frequent Visitor

Issue with table names having spaces

Hi There, 

 

The below code works totally fine when the table name is single word. If the table name has any spaces it is throwing error.

 

import json
import requests

# Replace with your Power BI tenant ID and client ID and client secret
tenant_id = ''
client_id = ''
client_secret = ''
# Workspace ID
workspace_id = ''
# Dataset ID
dataset_id = ''


# OAuth2 endpoint for token acquisition
token_url = f'https://login.microsoftonline.com/{tenant_id}/oauth2/token'
# Request body for token acquisition
token_data = {
'grant_type': 'client_credentials',
'client_id': client_id,
'client_secret': client_secret,
'resource': 'https://analysis.windows.net/powerbi/api'
}

# Request token from Azure
token_response = requests.get(token_url, data=token_data)
token_response_data = token_response.json()

# Check for token acquisition errors
if token_response.status_code != 200:
print({'statusCode': 500,
'body': json.dumps({'error': token_response_data.get('error', 'Failed to acquire token')})})

# Get access token
access_token = token_response_data['access_token']


api_url = f'https://api.powerbi.com/v1.0/myorg/groups/{workspace_id}/datasets/{dataset_id}/executeQueries'

# HTTP headers with authorization
headers = {
'Authorization': f'Bearer {access_token}',
'Content-Type': 'application/json'
}

payload = {
"queries": [
{
"query": "Evaluate 'Users'"
}
],
"serializerSettings": {
"includeNulls": False
},
"impersonatedUserName": "<your_user>@<your_domain>.com"
}

response = requests.post(api_url, headers=headers, json=payload)
print(response.text)

 

Pass Scenario: "query": "Evaluate 'Users'"

Fail Scenario: "query": "Evaluate 'Report views'"

 

Laxmikanth_0-1714489278333.png

 

Please let me know how we can pass the table names which has spaces.

 

Thanks,

Laxmikanth

3 REPLIES 3
lbendlin
Super User
Super User

Hi There,

 

Thanks for the update.

 

The 2nd method in the article mentions to enclose single quotes in double quotes and it has been done. It worked for the one worded table but doesn't work for the table names which have spaces.

 

Pass Scenario: "query": "Evaluate 'Users'"

Fail Scenario: "query": "Evaluate 'Report views'"

 

Thanks,

Laxmikanth

Shouldn't it be 

 

"query": "Evaluate "'"Report views"'""

 

?

 

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

Power BI Carousel June 2024

Power BI Monthly Update - June 2024

Check out the June 2024 Power BI update to learn about new features.

PBI_Carousel_NL_June

Fabric Community Update - June 2024

Get the latest Fabric updates from Build 2024, key Skills Challenge voucher deadlines, top blogs, forum posts, and product ideas.