Skip to content
DataMiner DoJo

More results...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors
Search in posts
Search in pages
Search in posts
Search in pages
Log in
Menu
  • Updates & Insights
  • Questions
  • Learning
    • E-learning Courses
    • Empower Replay: Limited Edition
    • Tutorials
    • Open Classroom Training
    • Certification
      • DataMiner Fundamentals
      • DataMiner Configurator
      • DataMiner Automation
      • Scripts & Connectors Developer: HTTP Basics
      • Scripts & Connectors Developer: SNMP Basics
      • Visual Overview – Level 1
      • Verify a certificate
    • Video Library
    • Books We Like
    • >> Go to DataMiner Docs
  • Expert Center
    • Solutions & Use Cases
      • Solutions
      • Use Case Library
    • Markets & Industries
      • Media production
      • Government & defense
      • Content distribution
      • Service providers
      • Partners
      • OSS/BSS
    • Agile
      • Agile Webspace
      • Everything Agile
        • The Agile Manifesto
        • Best Practices
        • Retro Recipes
      • Methodologies
        • The Scrum Framework
        • Kanban
        • Extreme Programming
      • Roles
        • The Product Owner
        • The Agile Coach
        • The Quality & UX Coach (QX)
    • DataMiner DevOps Professional Program
      • About the DevOps Program
      • DataMiner DevOps Support
  • Downloads
  • More
    • DataMiner Releases & Updates
    • Feature Suggestions
    • Climb the leaderboard!
    • Swag Shop
    • Contact
    • Global Feedback Survey
  • PARTNERS
    • All Partners
    • Technology Partners
    • Strategic Partner Program
    • Deal Registration
  • >> Go to dataminer.services

Send a POST request with multipart/form-data using the tag in a protocol

Solved1.79K views11th August 2023#multipart form-data HTTP protocol session
4
MAXIMILIANO FILHO [DevOps Member]918 7th August 2023 0 Comments

Hello,

I need to send a .csv file to an API using a POST request. How can I do this using the <session> tag in the protocol? You can see below the CURL example:

curl -X POST https://[ip addrs]/api/v1/catalogs/imports?clean_catalog=1 -H “accept: application/json” -H “Content-Type: multipart/form-data” -F csv=@file.csv;type=text/csv

Thanks in advance.

MAXIMILIANO FILHO [DevOps Member] Answered question 11th August 2023

2 Answers

  • Active
  • Voted
  • Newest
  • Oldest
1
Floris Cockaerts [SLC] [DevOps Advocate]2.43K Posted 8th August 2023 1 Comment

Hi Maximiliano,

This would be done by setting the Request verb to POST, configure the url and headers accordingly, and configure a Data element to point at a parameter that can be set with the content of your csv file:

Implementing HTTP communication | DataMiner Docs

As to getting the file content into the data parameter, there is the read file action (read file | DataMiner Docs) that should be executed before the session is executed, or you use a QAction if the data needs to be altered first.

MAXIMILIANO FILHO [DevOps Member] Posted new comment 11th August 2023
MAXIMILIANO FILHO [DevOps Member] commented 11th August 2023

I replied below, I can’t add code here

1
MAXIMILIANO FILHO [DevOps Member]918 Posted 11th August 2023 2 Comments

Hi Floris,

I tried this code, but does not work

I read the csv file and set it in the parameter 400.
Maybe I’m forgetting something.

This is the CURL

curl -X POST https://[address]/api/v1/catalogs/imports?clean_catalog=1 -H “accept: application/json” -H “Content-Type: multipart/form-data” -F csv=@file.csv;type=text/csv

Thanks in advance

Floris Cockaerts [SLC] [DevOps Advocate] Posted new comment 16th August 2023
Floris Cockaerts [SLC] [DevOps Advocate] commented 16th August 2023

Hi Maximiliano, I’ve been out of the office until now, I’ll recreate your scenarios today and see where there are still differences that we can correct for in the protocol xml.

Floris Cockaerts [SLC] [DevOps Advocate] commented 16th August 2023

Hi,
I’ve made an example on github: https://github.com/FlorisCO/Dojo-HttpPostCsv/blob/RC/protocol.xml

A few remarks:
– I dropped the Authorization header because I was testing without any security
– I changed the Content-Type to text/csv in session 400. It allows me to send a csv body, rather than a file.
– However, if your endpoint does expect this to be sent as a file, using multipart doesn’t automatically add the necessary encapsulation in DataMiner. If you set a header like this, you need to add the boundary in the header and body of the POST. For this, I made a second session with id 450.
– The Response Header element is intended to capture the value provided in the response, it requires the pid attribute to be configured.

Does this fix the communication with your endpoint?

Please login to be able to comment or post an answer.

My DevOps rank

DevOps Members get more insights on their profile page.

My user earnings

0 Dojo credits

Spend your credits in our swag shop.

0 Reputation points

Boost your reputation, climb the leaderboard.

Promo banner DataMiner DevOps Professiona Program
DataMiner Integration Studio (DIS)
Empower Katas
Privacy Policy • Terms & Conditions • Contact

© 2025 Skyline Communications. All rights reserved.

DOJO Q&A widget

Can't find what you need?

? Explore the Q&A DataMiner Docs