| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 | --:api: find-structure:request: FindStructureRequest:response: FindStructureResponse--[role="xpack"][id="{upid}-{api}"]=== Find structure APIDetermines the structure of text and other information that will beuseful to import its contents to an {es} index. It accepts a +{request}+ objectand responds with a +{response}+ object.[id="{upid}-{api}-request"]==== Find structure requestA sample of the text to analyze must be added to the +{request}+object using the `FindStructureRequest#setSample` method.["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-request]--------------------------------------------------<1> Create a new `FindStructureRequest` object<2> Add the contents of `anInterestingFile` to the request==== Optional argumentsThe following arguments are optional:["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-request-options]--------------------------------------------------<1> Set the maximum number of lines to sample (the entire sample will be    used if it contains fewer lines)<2> Request that an explanation of the analysis be returned in the responseinclude::../execution.asciidoc[][id="{upid}-{api}-response"]==== Find structure responseA +{response}+ contains information about the text structure,as well as mappings and an ingest pipeline that could be usedto index the contents into {es}.["source","java",subs="attributes,callouts,macros"]--------------------------------------------------include-tagged::{doc-tests-file}[{api}-response]--------------------------------------------------<1> The `TextStructure` object contains the structure information
 |