cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
GABRIELV221
Frequent Visitor

Parse JSON - Null Error (JSON to CSV)

Hello everyone!

 

I need your help!

I'm working with an API and use HTTP-GET and then Parse JSON to create CSV.

 

001.png

 

But when I tried create a CSV, I recived this error: "The 'from' property value in the 'table' action inputs is of type 'Null'. The value must be of type 'Array'."

 

002.png

 

This is my schema:

 

{
    "type""object",
    "properties": {
        "body": {
            "type""object",
            "properties": {
                "ok": {
                    "type""boolean"
                },
                "message": {
                    "type""string"
                },
                "error_code": {
                    "type""integer"
                },
                "response": {
                    "type""array",
                    "items": {
                        "type""object",
                        "properties": {
                            "contractor_code": {
                                "type""string"
                            },
                            "contractor_name": {
                                "type""string"
                            },
                            "plate_number": {
                                "type""string"
                            },
                            "brand": {
                                "type""string"
                            },
                            "model": {
                                "type""string"
                            },
                            "vehicle_status": {
                                "type""string"
                            },
                            "sign_off_date": {
                                "type""string"
                            },
                            "status_code": {
                                "type""integer"
                            },
                            "employees": {
                                "type""array"
                            }
                        },
                        "required": [
                            "contractor_code",
                            "contractor_name",
                            "plate_number",
                            "brand",
                            "model",
                            "vehicle_status",
                            "sign_off_date",
                            "status_code",
                            "employees"
                        ]
                    }
                }
            }
        }
    }
}
10 REPLIES 10
Gopala_Krishna
Super User
Super User

@GABRIELV221 

Can you please check your parse JSON action, it seems that the "RESPONSE" item that you have selected in the Create CSV table action is not holding any value due to which you are getting the error.

 

Try opening any of the previous flow runs and expand the parse json action to see if the RESPONSE property has any values getting stored in or not.

 

For any table creation action if the input item is null then wouldn't be able to create the table and throws error, which is the same case that happened here.

 

Review your parse json and http request action and you will find your answer there.

 

--------------------------------------------------------------------------------------------------------------------------

If the information shared helps you please consider giving a thumbs up 👍 and mark solution as resolved. 

Hi @Gopala_Krishna 

 

I checked the outputs, HTTP GET and PareseJSON and I had values.

This is example of ParseJSON Outputs:

{"body":{"ok":true,"message":"","error_code":0,"response":[{"contractor_code":"11-22222222-3","contractor_name":"NAME CONTRACTOR","plate_number":"XXX111","brand":"FORD","model":"WJ-RANGER2 DC4X4 XL SAFETY 2.2","vehicle_status":"1","sign_off_date":"20200120","status_code":2,"employees":[]}

 

GABRIELV221
Frequent Visitor

...

I put your JSON in a ParseJSON step and then created a CSV table successfully.  However, I had to first correct the JSON as below.  It was missing the last ].  Not sure if that was a typo when you posted it here, or if that will help you troubleshoot.

mahoneypat_0-1630626381304.png

 

 

{
    "body": {
        "ok"true,
        "message""",
        "error_code"0,
        "response": [
            {
                "contractor_code""11-22222222-3",
                "contractor_name""NAME CONTRACTOR",
                "plate_number""XXX111",
                "brand""FORD",
                "model""WJ-RANGER2 DC4X4 XL SAFETY 2.2",
                "vehicle_status""1",
                "sign_off_date""20200120",
                "status_code"2,
                "employees": []
            }
        ]
    }
}
 
Pat




Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about the Power Platform, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


GABRIELV221
Frequent Visitor

Hello @mahoneypat.

It was my mistake when copying...

 

This is the "Parse JSON OUTPUT":

{"body":{"ok":true,"message":"","error_code":0,"response":[{"contractor_code":"11-2222222-3","contractor_name":"CONT NAME","plate_number":"ZZ123XX","brand":"HYUNDAI","model":"N/A","vehicle_status":"0","sign_off_date":"","status_code":2,"employees":[]}]}}

 But the "Create CSV Table From" is null.

Error01.png

Error:

The 'from' property value in the 'table' action inputs is of type 'Null'. The value must be of type 'Array'.

 

Edit mode:

Edit.png

Schema:

{
    "type": "object",
    "properties": {
        "statusCode": {
            "type": "integer"
        },
        "headers": {
            "type": "object",
            "properties": {
                "Pragma": {
                    "type": "string"
                },
                "Access-Control-Allow-Origin": {
                    "type": "string"
                },
                "Access-Control-Allow-Headers": {
                    "type": "string"
                },
                "Access-Control-Allow-Methods": {
                    "type": "string"
                },
                "X-XSS-Protection": {
                    "type": "string"
                },
                "X-Frame-Options": {
                    "type": "string"
                },
                "Keep-Alive": {
                    "type": "string"
                },
                "Connection": {
                    "type": "string"
                },
                "Transfer-Encoding": {
                    "type": "string"
                },
                "Cache-Control": {
                    "type": "string"
                },
                "Date": {
                    "type": "string"
                },
                "Set-Cookie": {
                    "type": "string"
                },
                "Server": {
                    "type": "string"
                },
                "Content-Type": {
                    "type": "string"
                },
                "Expires": {
                    "type": "string"
                },
                "Content-Length": {
                    "type": "string"
                }
            }
        },
        "body": {
            "type": "object",
            "properties": {
                "ok": {
                    "type": "boolean"
                },
                "message": {
                    "type": "string"
                },
                "error_code": {
                    "type": "integer"
                },
                "response": {
                    "type": "array",
                    "items": {
                        "type": "object",
                        "properties": {
                            "contractor_code": {
                                "type": "string"
                            },
                            "contractor_name": {
                                "type": "string"
                            },
                            "plate_number": {
                                "type": "string"
                            },
                            "brand": {
                                "type": "string"
                            },
                            "model": {
                                "type": "string"
                            },
                            "vehicle_status": {
                                "type": "string"
                            },
                            "sign_off_date": {
                                "type": "string"
                            },
                            "status_code": {
                                "type": "integer"
                            },
                            "employees": {
                                "type": "array"
                            }
                        },
                        "required": [
                            "contractor_code",
                            "contractor_name",
                            "plate_number",
                            "brand",
                            "model",
                            "vehicle_status",
                            "sign_off_date",
                            "status_code",
                            "employees"
                        ]
                    }
                }
            }
        }
    }
}

 

I do not know what is happening...

 

 

It looks like the input to your Parse JSON step is null.  When you click on "Click to Download", you see content there?  Can you expand your http step in your executed flow to see what is there in the output?

 

Pat

 





Did I answer your question? Mark my post as a solution! Kudos are also appreciated!

To learn more about the Power Platform, follow me on Twitter or subscribe on YouTube.


@mahoneypa HoosierBI on YouTube


Yes, when I do click on Parse JSON OUTPUT I see content.
Eg:

{"body":{"ok":true,"message":"","error_code":0,"response":[{"contractor_code":"11-2222222-3","contractor_name":"CONT NAME","plate_number":"ZZ123XX","brand":"HYUNDAI","model":"N/A","vehicle_status":"0","sign_off_date":"","status_code":2,"employees":[]}]}}

 

HTTP:
0023.png

GABRIELV221
Frequent Visitor

...

VJR
Solution Sage
Solution Sage

Hi @GABRIELV221 

 

Since it is expecting a variable of type array, see if creating an empty array variable would help.

Also refer this link.

 

 

 

smeadows
New Member

I had this same issue.  Ultimately I realized that the dynamic content populated the incorrect syntax into the "From" field in the Create CSV Table template.

 

When I used the "Dynamic Content" GUI to select the Array (in my case it is named "PortfolioTrades") from the "Parse JSON" step, the syntax generated was "body('Parse_JSON')?['body']?['PortfolioTrades']".  

 

When I used the automatically generated code, I always received the "The 'from' property value in the 'table' action inputs is of type 'Null'. The value must be of type 'Array'." error as did the OP.  I subsequently modified the "From" field to the following syntax manually: "body('Parse_JSON')['PortfolioTrades']" which successfully created the CSV from the "Parse JSON" output.  In my case, the "body" in the JSON file being parsed by the "Parse JSON" template is an object, not an array, whereas the "PortfolioTrades" element is an array (of objects).

 

============= Code Snippet ==========

"Parse_JSON" code:

{
    "inputs": {
        "content""@outputs('Get_file_content_using_path_2')?['body']",
        "schema": {
            "type""object",
            "properties": {
                "body": {
                    "type""object",
                    "properties": {
                        "PortfolioTrades": {
                            "type""array",
                            "items": {
                                "type""object",
                                "properties": {
                                    "FundParentID": {
                                        "type""string"
                                    },...

 

=============

 

============= Code Snippet ==========

"Create CSV table" code:  (AUTOMATICALLY GENERATED BY THE GUI = THIS IS THE INCORRECT SYNTAX)

 
{
    "inputs": {
        "from""@body('Parse_JSON')?['body']?['PortfolioTrades']",
        "format""CSV"
    }
}

=============

 

============= Code Snippet ==========

"CORRECTED Create CSV table" code:  (Manually created using Expression = This syntax worked for me.)

 
{
    "inputs": {
        "from""@body('Parse_JSON')['PortfolioTrades']",
        "format""CSV"
    }
}

=============

Helpful resources

Announcements
UG GA Amplification 768x460.png

Launching new user group features

Learn how to create your own user groups today!

Community Connections 768x460.jpg

Community & How To Videos

Check out the new Power Platform Community Connections gallery!

M365 768x460.jpg

Microsoft 365 Collaboration Conference | December 7–9, 2021

Join us, in-person, December 7–9 in Las Vegas, for the largest gathering of the Microsoft community in the world.

Users online (1,330)