Skip to content
Pitch2SaleDevelopers
Open the app
Early access: these pages are being written and reviewed. Facts in the header boxes come straight from the product.

Attach a file to an invoice

POST
/api/v1/invoices/{id}/attachments
curl --request POST \
--url https://api.pitch2sale.com/api/v1/invoices/example/attachments \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "file_name": "example", "file_url": "https://example.com", "file_size": 1, "mime_type": "example", "is_visible_to_client": true }'

Registers an already uploaded file by URL; visible to the client by default.

id
required
string
Media typeapplication/json
object
file_name
required
string
>= 1 characters <= 255 characters
file_url
required
string format: uri
<= 2048 characters
file_size
required
number
<= 26214400
mime_type
required
string
>= 1 characters <= 100 characters
is_visible_to_client
boolean
default: true

The new attachment

Media typeapplication/json
object
attachment
required
object
_id
required
string
key
additional properties
any
Examplegenerated
{
"attachment": {
"_id": "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"
}
]
}