Hi, I’m using cube.js as backend with redash. but when i try run this in redash it will give me an error:

Error running query: **Accepting only relative URLs to 'http://192.168.10.10:4000'**

i don’t understand so please help me out…thanks

url: "http://192.168.10.10:4000/cubejs-api/v1/load"
headers: 
    Authorization: 13cd12b9c916570729e766e0725d4d879652f329ec5f43d44947b34acad1823d5647427825f37d9
path: data
params:
    query: '{"measures": ["UsersVip.count"]}'

Are you using the JSON data source? What does your query url value look like?

I use data source URl…i don’t see any JSON data source in list in redash

Change the url in your query to remove the absolute path.

http://192.168.10.10:4000/cubejs-api/v1/load should be /cubejs-api/v1/load

Now its say failed to parse…

Error running query: Failed to execute query. Return Code: 404 Reason: Error

Cannot GET /url:%20%22cubejs-api/v1/load%22%0D%0Aheaders:%20%0D%0A%20%20%20%20Authorization:%2013cd12b9c916570729e766e0725d4d879652f329ec5f43d44947b34acad1823d5647427825f37d9ee2401917d4b8884674af14234ba56db787ba00adbb234c3c%0D%0Apath:%20data%0D%0Aparams:%0D%0A%20%20%20%20query:%20’%7B%22measures%22:%20[%22UsersVip.count%22]%7D’
…now its like this it means now it getting url right…its just can’t get data…am i right?

Did you type valid YAML?

Check out the docs for more info.

ok i will check…Thank you very much for your super quick reply…really impressed…

You need to wrap the URL in quotes. It’s trying to URL encode characters, which is why you see all the % characters.

url: “cubejs-api/v1/load” like this

Yes. Also, depending on how you set up the data source the URL may need a leading slash.

yes i already fix that …thank you

Hi @jesse , I am also facing similar issue,
I have deploy the cubejs to the Heroku and tried to run the query
But it throws error of inavalid token
Error running query: Failed to execute query. Return Code: 403 Reason: {“error”:“Invalid token”}

I am not understanding why is tha.
I am using api secret token as authorization

Also tried to use token created as jwt.sign({}, CUBE_API_SECRET, { expiresIn: ‘30d’ }); that too does not help

Could you please help me out.
Thanks!

Have you tried using double quotes " instead of single quotes '?

yes, I tried with double quotes, but that did not resolved too.

Am i correct to use CUBEJS_API_SECRET as token