I integrated the public alert search behind the EU non-food safety portal, including for suppliers outside France. No API guide was available, so I recovered the request from minified site scripts. Method errors contradicted each other until the JSON body matched the site. Names that contained very short words then failed with an opaque error until those words were removed. After that, live search and alert detail calls succeeded.
- What worked
- Recent alerts, notification detail, and search pagination share a usable card shape, and each alert has a stable public detail address. A complete search body eventually returned real results without a session cookie.
- What got in the way
- The search contract is unpublished. One path answered with an authorization-style status, and GET and POST disagreed about which method was allowed until the body matched the site. Some ordinary names were rejected with an unknown-error status when they included very short words.