File in API call multipart/form-data

Hi, I’m creating a custom app, but I have a problem during a creation of a module.
I need to insert in the API body a document that I need to send. Before this module I inserted the module HTTP Get File that response with a buffer, I need to insert this buffer inside the body but, I don’t know how to do.
Someone can help me? I tried to copy some solution but no one works.

Thanks in advance

Welcome to the Make community!

Some screenshots would help. You can also show us your blueprint.

Hi Samliew,
this is the JSON of the action that I created

{
	// Request to API endpoint with parameter "id" defined in Mappable parameters.
	"url": "/folders/{{ parameters.folder_id }}/documents/{{ parameters.document_id }}/file",     // Relative to base URL
	"method": "POST",
	"headers": {
		"bodyType": "multipart_form_data"
    },                       
	"qs": {},                              
	"body": {
		 "formDataFields": [
            {
                "key": "file",
                "data": "{{ parameters.data }}",
                "fileName": "{{ parameters.filename }}",
                "fieldType": "file"
            }
        ]
	},
	

	// Response handling
	"response": {
		"output": "{{undefined}}"  // Returns no output bundle as no API output is expected.
	}
}

The reference of the API call is this

curl --location --request POST
'https://demo.validsign.com/be/folders/1234/documents/1234/file' \
--header 'content-type: multipart/form-data' \
--form 'file=@"/C:/MyFile.pdf"'

The path of the file will be replaced with the buffer of the function Get File
Thank you in advance

blueprint.json (34.2 KB)

This doesn’t look right.

Try

"Content-Type": "multipart/form-data"

Don’t work.

This is the input of my custom app

[
    {
        "folder_id": 10855,
        "array_file": [
            {
                "data": "IMTBuffer(53270, binary, 6638df3f2c7855ae5cb6176d0798ecad1d92e068): 255044462d312e340a25d3ebe9e10a312030206f626a0a3c3c2f5469746c65202847697448756220436f70696c6f7420666f7220427573696e657373202d20496e7465726e616c205465726d7320616e6420436f6e646974696f6e73290a2f50726f6475",
                "filename": "file.pdf"
            }
        ],
        "document_id": 9339
    }
]

This is the input of the HTTP request that do the same work.

[
    {
        "ca": null,
        "qs": [],
        "url": "https://demo.validsign.com/be/folders/10811/documents/9302/file",
        "gzip": true,
        "method": "post",
        "headers": [
            {
                "name": "Authorization",
                "value": "Bearer {key_value}"
            }
        ],
        "timeout": null,
        "useMtls": false,
        "authPass": null,
        "authUser": null,
        "bodyType": "multipart_form_data",
        "serializeUrl": false,
        "shareCookies": false,
        "parseResponse": true,
        "followRedirect": true,
        "formDataFields": [
            {
                "key": "file",
                "data": "IMTBuffer(284573, binary, 1960f0f8913447bbda1ba6ba31aaf5c8fdae2f29): 255044462d312e370a25e2e3cfd30a382030206f626a0a3c3c202f54797065202f50616765202f506172656e74203120302052202f4c6173744d6f6469666965642028443a32303234303231363137303932332b30302730302729202f5265736f757263",
                "fileName": "Verbale_Consegna_Materiali_Fabiana_Gatto.pdf",
                "fieldType": "file"
            }
        ],
        "useQuerystring": false,
        "followAllRedirects": false,
        "rejectUnauthorized": true
    }
]

Try adding a “download file” module. That’s helped me before.

You can’t really do that in a custom app, or am I missing something?

Yes, there is a “Get File” before the api call