I think I misunderstood the initial post. I initially read this as you had a tool (perhaps launched as a standalone package) and wanted to populate a text entry in Canvas from it, not that the assignment itself was an external tool.
To confirm, is the assignment type an external tool or does it include online text entry? If it is an external tool, then it would make sense that you cannot specify an online text entry for the submission type. Have you tried your post with basic_lti_launch instead?
If the assignment type is an LTI, then you want to take advantage of the LTI Grading Services. Step 7 of the workflow for the Assignment Selection Placement says "After completing the tool-side assignment, tools may optionally return a grade and/or submission. See the Grading documentation for more details."
When you get there, I think you're looking for the Score Extension: Creating submission data section that says "The Score service has been extended to allow an external tool to submission data back to the Canvas Gradebook. This data is then exposed in the Submission Details and Speedgrader Views so that both students and teachers can see what was submitted to the external tool without leaving Canvas. Support for basic urls, text, and LTI links are supported."
Later on, there is an explanation of the Submission Details Return Extension.
This discussion post is outdated and has been archived. Please use the Community question forums and official documentation for the most current and accurate information.