Early access: these pages are being written and reviewed. Facts in the header boxes come straight from the product.
Send an invoice by email
POST
/api/v1/invoices/{id}/send
const url = 'https://api.pitch2sale.com/api/v1/invoices/example/send';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"to_email":"","message":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.pitch2sale.com/api/v1/invoices/example/send \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "to_email": "", "message": "example" }'Draft invoices only. Marks the invoice as sent, then emails it. Email failures do not undo the status change; check email_sent and email_error.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
string
Request Bodyrequired
Section titled “Request Bodyrequired”Responses
Section titled “Responses”The sent invoice and the email outcome
Media typeapplication/json
object
invoice
required
object
_id
required
string
invoice_number
required
string
status
required
string
lead_id
required
string
lead_name
required
string | null
total
required
number
amount_paid
required
number
balance_due
required
number
key
additional properties
any
email_sent
required
boolean
email_error
string
Examplegenerated
{ "invoice": { "_id": "example", "invoice_number": "example", "status": "example", "lead_id": "example", "lead_name": "example", "total": 1, "amount_paid": 1, "balance_due": 1 }, "email_sent": true, "email_error": "example"}Validation failed
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}Authentication required or token invalid
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}Role permission or token scope missing
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}Rate limit exceeded
Media typeapplication/json
object
error
required
string
code
string
message
string
details
Array<object>
object
field
required
string
message
required
string
code
required
string
Examplegenerated
{ "error": "example", "code": "example", "message": "example", "details": [ { "field": "example", "message": "example", "code": "example" } ]}