OneDrive Upload file Action Consistent Errors

I am trying to set up an automation that pulls data from a Quick Dashboard and uploads it to OneDrive/Sharepoint. I have set up the flow to successfully download the csv file of the table I want, but I am not able to figure out what I am doing wrong when configuring the Action. I have worked with my IT department and got all of the registrations set up and have pulled in the Drive and Drive item IDs from the Microsoft Graph API but every combination I have tried to request the upload has failed.

As for the actions I have in sequence before this step, I have tried both a Copy file and Read file action, both of which do not throw errors during debugging.

Any suggestions would be welcome. :slight_smile:

Hi @dmalone, are you able to share the error and/or a screenshot?

Hi @sanchezrd34 here is the error message:

Action 1.14 Upload file: Execution encountered an error: {“reason”: “ActionIntegration.uploadFile.InvalidInput”, “type”: “System”, “message”: “Action Integration Error | Message: Validation error during call to Action Integration: <ValidationException()>”, “code”: 400}.

Here are the steps leading up to the action in question as well.

@sanchezrd34 any ideas?

Hey @dmalone, were you able to find a resolution to this issue? I have been testing the features with the OneDrive actions to see how I can create and update files in Excel, but have run into a lot of issues.

When I was trying to generate rows of data in Excel, the agent wouldn’t actually fill in the row values no matter what I tried. I ended up creating a function in Lambda and making my own connector to OneDrive to update Excel files from Flows. From what I can tell, that is probably the best course of action for what you are looking to accomplish as well.

@DylanMorozowski, I was not. I’m half convinced it might be a credential issue on our system but based on what I’ve seen in the forum it seems several other users have ran into similar issues. I will have to take a look at building a Lambda function to see if that works, thanks for the suggestion!

Hi @dmalone, thanks for your patience and for providing the error details and screenshots.

The error you’re seeing — ActionIntegration.uploadFile.InvalidInput with ValidationException (code 400) — is a validation error on the input parameters being passed to the OneDrive Upload File action. Based on your screenshots and similar reports from other community members, here are a few things I’d recommend checking:

1) Verify the Drive ID format

The Upload File action expects the Drive ID in the format returned by the Get Drive action (e.g., b!xxxxxxxx).

If you’re pulling the Drive ID directly from the Microsoft Graph API Explorer, it may not match what Quick expects. I’d recommend adding a Get Drive step before the Upload File step in your flow and passing its output directly as the Drive ID input.

2) Verify the Parent Item ID (destination folder)

The Upload File action requires a valid parent folder Item ID — not a path string.

You can get this by running a List Item or List Child Folders action on the drive and using the folder’s Item ID from the output. If you’re uploading to the root of the drive, try using root as the parent reference.

3) Verify the file content input

The Upload File action supports files up to 250 MB. Ensure the file content from your previous step (Copy File or Read File) is correctly piped to the Upload File action’s content input.

Check if the Read File step properly outputs the raw file content and maps that directly to the Upload File input.

4) Check API permissions in your Entra app registration

The Upload File action requires the Files.ReadWrite delegated permission on your Microsoft Entra app registration, with admin consent granted.

Refer to: OneDrive action integration setup guide

@rwsurend, can you give me an example of how each of the fields should be formatted? Specifically the User id field in any One Drive action. I haven’t seen any explicit documentation anywhere of how exactly that needs to be structured.

Hi @dmalone, great follow-up question — you’re right that the documentation doesn’t spell out the expected field formats explicitly, so let me break them down with concrete examples.

User ID (userId)

This field maps to the Microsoft Graph API user identifier. The value depends on your connector’s authentication method:

  • Default OAuth or Custom OAuth (delegated permissions): Use me — this represents the currently signed-in user.
  • Service-to-Service OAuth (application permissions): You need the user’s Object ID (GUID) from Microsoft Entra. You can retrieve this by running the GetSignedInUser action first — use the id field from its response. It will look something like: a1b2c3d4-e5f6-7890-abcd-ef1234567890

If you’re unsure which auth method your connector is using, try me first.

Drive ID (driveId)

Use the output from the GetDrive action (pass userId = me or your Object ID). The response will include an id field in a format like: b!aBcDeFgHiJkLmNoPqRsTuVwXyZ012345

Don’t hard-code a value from Microsoft Graph Explorer — always pass the output directly from GetDrive.

Item ID (driveItemId)

This is the unique identifier for a file or folder. Use the id from the response of a ListItem, ListChildren, or GetItem action. The format is an alphanumeric string like: 01ABCDEFGHIJKLMNOP2345QRSTUVWXYZ67

If you’re targeting the root folder of the drive, you can use root.

Recommended action sequence for Upload File:

  1. GetSignedInUser → note the id (this is your userId)
  2. GetDrive (userId = me) → note the id (this is your driveId)
  3. ListChildren (userId = me, driveId = from step 2, driveItemId = root) → find your target folder and note its id (this is your parent driveItemId)
  4. UploadFile (userId = me, driveId = from step 2, driveItemId = from step 3, file_path = your file)

The key takeaway is: wire each action’s output directly to the next action’s input fields rather than manually copying IDs. This ensures the formats stay consistent and avoids the InvalidInput / ValidationException errors.

Let me know if that helps or if you run into any other issues!

@rwsurend, the action GetSignedInUser does not exist. Are you telling me that just entering the text string “a1b2c3d4-e5f6-7890-abcd-ef1234567890” into the User ID field will not work, it needs to be passed in from some previous action?

Hi @dmalone, apologies for the confusion in my previous reply — let me correct that.

Quick Automate uses Service-to-Service OAuth (application permissions), which means there’s no “signed-in user” context. So me won’t work as the User ID, and GetSignedInUser won’t be available in your setup either.

To answer your specific question — yes, you can absolutely type the GUID directly into the User ID field. It does not need to come from a previous action. The same goes for Drive ID and Item ID — you can hard-code them if you have the values. That said, I’d recommend using previous action steps for Drive ID and Item ID to keep things dynamic.

1) Where to find your User ID

What you need here is the Object ID (GUID) of the user whose OneDrive you’re uploading to. You can find this in the Microsoft Entra admin center — navigate to Users → select the user → on the Overview page, grab the Object ID. It’ll be something like a1b2c3d4-e5f6-7890-abcd-ef1234567890. You can type that directly into the field — it doesn’t need to come from a previous action.

2) Drive ID (driveId)

I’d recommend adding a GetDrive action step before your Upload File and passing the userId from above. The response will include an id field — that’s your Drive ID. Format looks like: b!aBcDeFgHiJkLmNoPqRsTuVwXyZ012345

3) Item ID (driveItemId)

Use a ListChildren action with driveItemId = root to list the root folder’s contents, find your target folder, and grab its id. If you’re uploading directly to the root, just use root.

Recommended sequence:

  1. GetDrive (userId = your GUID) → grab id from response
  2. ListChildren (userId = same GUID, driveId = from step 1, driveItemId = root) → find target folder, grab its id
  3. UploadFile (userId = same GUID, driveId = from step 1, driveItemId = folder ID from step 2, file_path = your file)

One more thing to double-check — make sure your Entra app registration has Application permissions (not Delegated) for Files.ReadWrite.All and User.Read.All, with admin consent granted. Refer to: OneDrive action integration setup guide

Let me know how it goes!

Thanks for posting your questions on the Quick Community Q&A Forum!

@rwsurend , still no luck. I’m getting the same error. I confirmed with our IT admin and we have all of the necessary permissions enabled. Based on what I see in similar posts on this forum it looks like the OneDrive actions are unusable and need review from your team. I have the user ID and know that it is the correct value but the only output I get is this same error every time:

Action 1.13 Get drive: Execution encountered an error: {“reason”: “ActionIntegration.getDrive.InvalidInput”, “type”: “System”, “message”: “Action Integration Error | Message: Access denied error during call to Action Integration: <AccessDeniedException()>”, “code”: 400}

Happy to try something else, but at this point I’m likely going to explore other avenues to get the data I want into my system.

I have the issue for a simple task uploading a file to OneDrive in default My Assistant, with has not happened in last version.

The error is: {
“requestId”: “a945d35f-0b08-4b10-8062-94b385d7520a”,
“errorMessage”: “1 validation error detected: Value at ‘action.actionReviewResponse.payload.httpInvokeActionInput.contentType’ failed to satisfy constraint: Member must satisfy enum value set: [application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, text/csv, application/rtf, application/yaml, application/vnd.ms-outlook, application/json, text/plain, text/html, application/msword, multipart/form-data, image/gif, message/rfc822, application/vnd.ms-powerpoint, application/vnd.ms-excel, text/markdown, application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/pdf, text/vtt, image/png, application/vnd.openxmlformats-officedocument.presentationml.presentation, text/xml, application/xml, application/x-yaml, image/svg+xml, image/jpeg, application/octet-stream, multipart-form-data/mixed, application/x-www-form-urlencoded]”,
“errorCode”: 400,
“userMessageId”: “”,
“timestamp”: “2026-04-30T17:49:07.700Z”,
“region”: “us-east-1”
}

@dmalone - Based on your screenshots it looks like you are using the ReadFile Action’s output directly in the UploadFile action. This will contain the contents of the file, but not the file itself. I am able to replicate the error you see if this is passed in the “Request” field of the OneDrive UploadFile Action.

  1. Can you confirm this is how you have configured the OneDrive UploadFile Action? If not can you share the screenshots of the OneDrive UploadFile Action Properties.
  2. If so, you must create a valid file to upload first (or perhaps bytes but not applicable here). You can do this by using the CreateFile Action right after your ReadFile Action and passing the output variable in the “Request” field of the OneDrive UploadFile Action Properties.

@mzraghib I have modified the automation since my original post. I am now doing a Mouse click action before the UploadFile action which I set an output variable that I use in the request field of the OneDrive action.

Hi @dmalone and @anhpnh,

Since you both seem to be encountering similar issues that others have experienced as well (especially with authentication seeming to be sound), I would definitely recommend creating a support ticket with AWS Support, as they will be able to assist further and see if this could be a larger issue/bug.

Thank you!

@dmalone what request field did you need to set to get the upload file action to work? I gave up on this process and created a custom OpenAPI connection to make updates to Excel, but I’d love to be able to upload Word or PPTX files without building another custom connector.

If you have a good work-around, I would love to see it!

Hi @dmalone and @anhpnh,

Just checking back in since this thread hasn’t received a response in a while. Were you able to see my most recent post in regard to creating a support ticket? Please help the community by following up in general within the next 3 business days!

Thanks!