400 Error when trying to create a dataset with API on Python


Hey guys

I'm trying to create a dataset with API on Python script but it's throwing a 400 error. Below is the code.

json = {
    "name": "Dataset Name",
    "description": "Description",
    "rows": 0,
    "schema": {
        "columns": [
            {"type": "STRING", "name": "Col1"},
            {"type": "STRING", "name": "Col2"}

response = requests.post('https://api.domo.com/v1/datasets',
                         headers={'Authorization': 'bearer ' + accessToken, 'Content-Type': 'application/json', 'Accept': 'application/json'},

Could you please advise on how I can get it work?

Thank you!


  • GrantSmith

    Hi @DKCloud9

    Have you tried utilizing pydomo? It's all packaged to neatly do this and is a supported method for communicating with the APIs.

    Are you getting an error message back with your 400 code? Have you tried replicating your API request in a tool like Postman to make sure your body, parameters and url are correct?

    **Was this post helpful? Click Agree or Like below**
    **Did this solve your problem? Accept it as a solution!**
  • DKCloud9


    Actually before I tried it with fewer columns with data type I know it's definitely working for this and it worked.

    Where can I see the list of data types I can use to create DOMO dataset? I used "INTEGER" and "FLOAT" but i think thats where the errors are caused. I am assuming different terminology is used.

  • jaeW_at_Onyx


    if your'e not going to use PyDomo, I'd recommend forming your query in Postman.

    also i don't know what JSON is expecting, but keep in mind the API expects a string not a dictionary.

    Jae Wilson
    Check out my 🎥 Domo Training YouTube Channel 👨‍💻

    **Say "Thanks" by clicking the ❤️ in the post that helped you.
    **Please mark the post that solves your problem by clicking on "Accept as Solution"
  • DKCloud9


    I am trying to install pydomo via pip but it shows an error stating 'Could not fetch URL https://pypi.org/simple/pip/'