Has anybody successfully converted their HTTP Call (deprecated) to a Make API Call?

I have been converting a working HTTP Call function (soon to be deprecated) to a Make API Call, and creating API profiles. I'm getting a Plugin Error as attached. I have all my headers in my API Profiles with non-empty string names and I still get this error. Please advise!


Best Answers

  • Genevieve P.
    Genevieve P. Employee
    Answer ✓

    Hey @molson

    Yes! I've been able to make a number of successful calls.

    Can you verify that the API Profile you've set up has correct headers associated with it? Here's more information on headers from the Documentation on this module:

    Headers

    Headers are the values you need for the request, and the key-value pairs. They're usually used to handle authorization (permissions). For example, in Smartsheet calls, you'd have a key Header named Authorization with the value set to Bearer [Enter your API token].


    Headers that are required for every call to a system can be set up in the Profile. Additional headers for specific actions can be set up in the Make API Call module in your workflow.


    Here's what my Smartsheet API profile looks like:

    Does this look like how yours is set up? If this hasn't helped, can you post a screen capture of your Profile, and then also of how your API module is set up (blocking out anything sensitive).

    Thanks!

    Genevieve

    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

  • Genevieve P.
    Genevieve P. Employee
    Answer ✓

    Hey @molson

    You'll want the base URL for this call to either just be:

    https://api.smartsheet.com/2.0

    or

     https://api.smartsheet.com/2.0/groups/

    As soon as you have parameters, these should be then included in the API module in the workflow in Bridge versus as part of the set-up of the Base URL. I personally only have https://api.smartsheet.com/2.0 as my base URL so that I can customize it each time:

    Cheers,

    Genevieve

    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

Answers

  • Genevieve P.
    Genevieve P. Employee
    Answer ✓

    Hey @molson

    Yes! I've been able to make a number of successful calls.

    Can you verify that the API Profile you've set up has correct headers associated with it? Here's more information on headers from the Documentation on this module:

    Headers

    Headers are the values you need for the request, and the key-value pairs. They're usually used to handle authorization (permissions). For example, in Smartsheet calls, you'd have a key Header named Authorization with the value set to Bearer [Enter your API token].


    Headers that are required for every call to a system can be set up in the Profile. Additional headers for specific actions can be set up in the Make API Call module in your workflow.


    Here's what my Smartsheet API profile looks like:

    Does this look like how yours is set up? If this hasn't helped, can you post a screen capture of your Profile, and then also of how your API module is set up (blocking out anything sensitive).

    Thanks!

    Genevieve

    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

  • molson
    molson ✭✭✭✭

    Thank you Genevieve! We were having the Authorization under the Secret Headers and the Content-Type separately under the Headers. We put them both under Secret Headers and voila, it worked!

    Appreciate your help on this!

  • Glad to hear this worked for you! 🙂

    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

  • molson
    molson ✭✭✭✭

    Hello @Genevieve P. ,

    I'm having one last issue on my conversion from HTTP Call to Make API Call:

    I have the param ?includeAll=true in one of my HTTP Call's URL but when I transfer this base URL to a Call API Profile, it does not accept it. It gives me the error below.

    Plugin Error ERR_PROCESSING : failed to execute extension register : Unable to save profile "Smartsheet Group API (Get Group)": the Base URL is invalid: https://api.smartsheet.com/2.0/groups/?includeAll=true

    If I don't include the "?includeAll=true", it accepts it but when I run the workflow, I only get the default 100 rows.

    How do I go around this limitation?

    Kindly advise!

  • Genevieve P.
    Genevieve P. Employee
    Answer ✓

    Hey @molson

    You'll want the base URL for this call to either just be:

    https://api.smartsheet.com/2.0

    or

     https://api.smartsheet.com/2.0/groups/

    As soon as you have parameters, these should be then included in the API module in the workflow in Bridge versus as part of the set-up of the Base URL. I personally only have https://api.smartsheet.com/2.0 as my base URL so that I can customize it each time:

    Cheers,

    Genevieve

    Join us at Smartsheet ENGAGE 2024 🎉
    October 8 - 10, Seattle, WA | Register now

  • molson
    molson ✭✭✭✭

    Thank you Genevieve, that definitely worked! Really appreciate your help on this.