Showing results for 
Search instead for 
Did you mean: 
New Member

MS Flow - Failed to Create Flow using Flow management "Create Flow" connector 'Create_Flow' of type 'OpenApiConnection' is not valid

Hi ,

I am trying to create a flow inside flow by using a flow managment connectors like "Get flow" & "Create flow".
for this I am referring below article which is similar to my requirement. 

I have created flow based on the above article but I am facing below Issue.

Error :The 'inputs.parameters' of workflow operation 'Create_Flow' of type 'OpenApiConnection' is not valid. Error details: The API operation does not allow writing a value for parameter 'Flow/properties/connectionReferences[0]/displayName'. This parameter is read only.


I am able to Create a dynamic definition Properly but still facing issue at the step of  "Crate Flow" 


Please find below screen for my flow.




"Create Flow" Step with parameter :




Also Providing definition that I have created dynamically:


  "parameters": {
    "$connections": {
      "defaultValue": {},
    "$authentication": {
      "defaultValue": {},
  "triggers": {
    "When_a_file_is_created_(properties_only)": {
      "recurrence": {
      "metadata": {
        "flowSystemMetadata": {
      "inputs": {
        "host": {
        "queries": {
          "folderpath""/Shared Documents"
  "actions": {
    "Send_an_email_(V2)": {
      "runAfter": {},
      "inputs": {
        "host": {
        "parameters": {
          "emailMessage/Subject""Test email for flow as template",
  "description""Testing new description"





This is currently a limitation. When the JSON of the connection references is exported, it includes the display name of each connection. When trying to import those connections, it still includes that display name, causing the error.


Below is the workaround for this. Basically, you have to do is load the connections JSON, iterate through each one, remove the displayName property, assemble that into an array, and pass that to the 'Create Flow' step.

  1. Add a new 'initialize variable' step (after getting the connections file content):
    1. Name: ConnectionsJson
    2. Type: Array
    3. Value: json(outputs('Get_connections_file')?['body'])
  2. Add a new 'initialize variable' step:
    1. Name: NewConnectionsArray
    2. Type: Array
    3. Value: [nothing]
  3. Add a new 'apply to each' step.
  4. Add a new 'compose' step inside the 'apply to each':
    1. Input: removeProperty(items('Apply_to_each'),'displayName')
  5. Add a new 'append item to array' step inside the 'apply to each':
    1. Name: NewConnectionsArray
    2. Value: Output (from 'Compose')
  6. Update the 'Create Flow' to use the 'NewConnectionsArray' variable.

Best Regards,

Harish M

Please mark as verified if the answer is helpful.
Frequent Visitor

Hello @ham , Thanks for this workaround. This works.

Helpful resources

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

MPA User Group

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group


Are Your Ready?

Test your skills now with the Cloud Skill Challenge.

Top Solution Authors
Users online (58,621)