Skip to Main Content
IBM Power Ideas Portal


This portal is to open public enhancement requests against IBM Power Systems products, including IBM i. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Future consideration
Workspace IBM i
Categories Db2 for i
Created by Guest
Created on Mar 20, 2025

Allow Request Body (request-message) on HTTP_DELETE* functions

I have a third party delete method API I am trying to call with HTTP_DELETE_VERBOSE. This API has parameters that I need to pass in a Request BODY (request-message), however, HTTP_DELETE* functions do not have a parameter in which to pass this request-message.

Idea priority Urgent
  • Guest
    Reply
    |
    Apr 22, 2025

    Incidentally, if one must do such a thing on the IBM i, the curl command string:

    curl -X DELETE -d '{"foo": "bar"}' 'https://yourhost/yourroute'

    ... will pass your desired non-Standard DELETE request with the request body {"foo": "bar"}. This is how it would be implemented were it to be added as a Db2 service (through calling the underlying libcurl library rather than the curl command line interface). The command-line curl command can be called in PASE from CL/RPG/Db2 in ways well-documented throughout the IBM i open source community.

  • Admin
    Carmelita Ruvalcaba
    Reply
    |
    Apr 22, 2025

    The CAAC has reviewed this IBM Idea and recommends that IBM not implement this request.

    RFC9110 https://www.rfc-editor.org/rfc/rfc9110.html#name-delete states, "A client SHOULD NOT generate content in a DELETE request unless it is made directly to an origin server that has previously indicated, in or out of band, that such a request has a purpose and will be adequately supported. An origin server SHOULD NOT rely on private agreements to receive content, since participants in HTTP communication are often unaware of intermediaries along the request chain."

    RFC9110 further states, "[C]ontent received in a DELETE request has no generally defined semantics, cannot alter the meaning or target of the request, and might lead some implementations to reject the request and close the connection because of its potential as a request smuggling attack."

    If IBM were to provide such a feature, IBM cannot guarantee that it will work in all contexts, even if the Client and Server agree on the semantics, due to intelligent request filtering by intermediaries such as firewalls (as alluded to in the RFC), leading to ambiguous network scenarios.

    Note that query strings ("?foo=bar&arf=woof") are allowed in the URL for the DELETE request, so any necessary information can be passed in that fashion. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Methods/DELETE

    Background: The COMMON Americas Advisory Council (CAAC) members have a broad range of experience in working with small and medium-sized IBM i customers. CAAC has a key role in working with IBM i development to help assess the value and impact of individual IBM Ideas on the broader IBM i community and has therefore reviewed your Idea.

    For more information about CAAC, see www.common.org/caac

    Carmelita Ruvalcaba - CAAC Program Manager

  • Guest
    Reply
    |
    Apr 8, 2025
    IBM will use this Idea as input to planning, but no commitment is made or implied. This Idea will be updated in the future if IBM implements it. IBM will use votes and comments from others in the community to help prioritize this Idea.

    This request is to support an uncommon combination of HTTP options. While it can be implemented, we need additional community support before it will be considered to add to our future plan.

    Db2 for i development team
    IBM Power Systems Development