Using API to manually call for a Direct Debit

New to API and Freeagent and working through this with make.com to help.

Problem: Freeagent requests a Gocardless payment the minute Automatically send is initiated on the web interface- even setting a Payment due by will not allow it to be delayed.
Solution: If unticking the Automatically send and instead send as email is used this gives the user the invoice and the 14 days we want to give before it is debited from the account
Problem: The only way on the web interface is to manually go in and press the “Take Payment Now” button.

I would like to use the:

POST https://api.freeagent.com/v2/invoices/:id/direct_debit

But I keep getting error 400.

for the purpose of testing I am not yet passing variable ids

A few questions:

  1. Should it simply work by replacing :id with the invoice number as shown at the end of the invoice url?
  2. Are the only two headers needed the Accept application/json and the Active-content application/json ?
  3. Do I need to pass any other information in headers? Body or Query string?

PS: I have managed to collect invoices that have active direct debits that are pre-auth and 14 days old using GET commands. I can’t seem to get any POST or PUT commands working.

The login used for the authentication has the highest permissions.

I understand this seems like a really stupid question but I want to learn and have read the API docs with no success.

Got it sorted.

The Body needed

{

}

Didn’t see any reference to that in the manual.

Hi there, I’m glad you got it sorted :+1: I’ve made a note to review the API docs so everything is as detailed as possible for our users. Thanks!