Documents: General documents
List ids and versions of general documents
Returns all documents in the administration. The list contains the document id and the version of the document.
Check if the version of the document is newer than the version you have stored locally, use the POST
variant for fetching documents with the given ids.
Parameters
Parameter | Type | Description |
---|---|---|
filter |
String |
String terms, example: key1:value1,key2:value2. |
Example: retrieves all ids for synchronization
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents/synchronization.json?
Response
Status: 200 OK
[
{
"id": "446241569720239894",
"version": 1739789145
},
{
"id": "446241569737017112",
"version": 1739789145
},
{
"id": "446241569755891482",
"version": 1739789145
}
]
Example: retrieves all ids for synchronization using a filter
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents/synchronization.json?filter=period%3Athis_month
Response
Status: 200 OK
[
{
"id": "446241570019084071",
"version": 1739789145
},
{
"id": "446241570050541353",
"version": 1739789145
},
{
"id": "446241570072561451",
"version": 1739789146
}
]
Fetch general documents with given ids
Given a list of document ids, returns the document information belonging to the documents. Returns a maximum of 100 documents, even if more ids are provided.
Parameters
Parameter | Type | Description |
---|---|---|
ids |
Array[integer] |
Required |
Example: retrieves documents for given ids
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"ids":[446241570259207994,446241570267596604]}' \
https://moneybird.com/api/v2/123/documents/general_documents/synchronization.json
Response
Status: 200 OK
[
{
"id": "446241570259207994",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 3,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:46.190Z",
"updated_at": "2025-02-17T10:45:46.190Z",
"version": 1739789146,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:46.193Z",
"updated_at": "2025-02-17T10:45:46.193Z"
}
]
},
{
"id": "446241570267596604",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 4,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:46.198Z",
"updated_at": "2025-02-17T10:45:46.198Z",
"version": 1739789146,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:46.201Z",
"updated_at": "2025-02-17T10:45:46.201Z"
}
]
}
]
Get general documents
Returns a paginated list of documents of this type in the administration.
The filter
argument allows you to filter on the list of documents. Filters are a combination of keys and values,
separated by a comma: key:value,key2:value2
. The most common filter method will be period
: period:this_month
.
Filtering works the same as in the web application, for more advanced examples, change the filtering in the web
application and learn from the resulting URI.
Parameters
Parameter | Type | Description |
---|---|---|
filter |
String |
Required String terms, example: |
new_filter |
String |
String terms, example: |
page |
Integer |
|
per_page |
Integer |
|
exclude_new_general_journal_documents |
Boolean |
Example: returns a list of general_documents
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents.json?
Response
Status: 200 OK
[
{
"id": "446241564257158722",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 5,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:40.466Z",
"updated_at": "2025-02-17T10:45:40.466Z",
"version": 1739789140,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:40.469Z",
"updated_at": "2025-02-17T10:45:40.469Z"
}
]
},
{
"id": "446241564241430080",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 4,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:40.449Z",
"updated_at": "2025-02-17T10:45:40.449Z",
"version": 1739789140,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:40.456Z",
"updated_at": "2025-02-17T10:45:40.456Z"
}
]
},
{
"id": "446241564197389886",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 3,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:40.405Z",
"updated_at": "2025-02-17T10:45:40.405Z",
"version": 1739789140,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:40.423Z",
"updated_at": "2025-02-17T10:45:40.423Z"
}
]
}
]
Example: returns paginated general documents on page 1
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents.json?per_page=1
Response
Status: 200 OK
[
{
"id": "446241564527691349",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 5,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:40.724Z",
"updated_at": "2025-02-17T10:45:40.724Z",
"version": 1739789140,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:40.727Z",
"updated_at": "2025-02-17T10:45:40.727Z"
}
]
}
]
Example: returns paginated general documents on page 2
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents.json?page=2&per_page=1
Response
Status: 200 OK
[
{
"id": "446241564751038054",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 4,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:40.936Z",
"updated_at": "2025-02-17T10:45:40.936Z",
"version": 1739789140,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:40.940Z",
"updated_at": "2025-02-17T10:45:40.940Z"
}
]
}
]
Example: returns an error when too many general documents are requested
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents.json?per_page=101
Response
Status: 400 Bad Request
{
"error": "Per Page is too big",
"symbolic": {
"per_page": "max"
}
}
Get general documents
Example: returns the wanted general_document
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents/446241565221848712.json?
Response
Status: 200 OK
{
"id": "446241565221848712",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "Contract",
"date": "2025-02-17",
"due_date": null,
"entry_number": 2,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:41.386Z",
"updated_at": "2025-02-17T10:45:41.386Z",
"version": 1739789141,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:41.389Z",
"updated_at": "2025-02-17T10:45:41.389Z"
}
]
}
Example: only returns general_documents
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XGET \
https://moneybird.com/api/v2/123/documents/general_documents/446241565385426575.json?
Response
Status: 404 Not Found
{
"error": "record not found",
"symbolic": {
"id": "not_found"
}
}
Create a new general documents
Parameters
Parameter | Type | Description |
---|---|---|
general_document[reference] |
String |
Required. |
general_document[date] |
String |
Required Required. |
general_document[due_date] |
String |
|
general_document[reminder_date] |
String |
|
general_document[contact_id] |
Integer |
Should be a valid contact id. |
general_document[reminder][date] |
String |
Required |
general_document[reminder][message] |
String |
Example: creates the general_document
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"general_document":{"reference":"foobar","contact_id":446241566006183610}}' \
https://moneybird.com/api/v2/123/documents/general_documents.json
Response
Status: 201 Created
{
"id": "446241566150887109",
"administration_id": 123,
"contact_id": "446241566006183610",
"contact": {
"id": "446241566006183610",
"administration_id": 123,
"company_name": "Foobar Holding B.V.",
"firstname": "",
"lastname": "",
"address1": "Hoofdstraat 12",
"address2": "",
"zipcode": "1234AB",
"city": "Amsterdam",
"country": "NL",
"phone": "",
"delivery_method": "Email",
"customer_id": "1",
"tax_number": "",
"chamber_of_commerce": "",
"bank_account": "",
"is_trusted": false,
"max_transfer_amount": null,
"attention": "",
"email": "info@example.com",
"email_ubl": true,
"send_invoices_to_attention": "",
"send_invoices_to_email": "info@example.com",
"send_estimates_to_attention": "",
"send_estimates_to_email": "info@example.com",
"sepa_active": false,
"sepa_iban": "",
"sepa_iban_account_name": "",
"sepa_bic": "",
"sepa_mandate_id": "",
"sepa_mandate_date": null,
"sepa_sequence_type": "RCUR",
"credit_card_number": "",
"credit_card_reference": "",
"credit_card_type": null,
"tax_number_validated_at": null,
"tax_number_valid": null,
"invoice_workflow_id": null,
"estimate_workflow_id": null,
"si_identifier": "",
"si_identifier_type": null,
"moneybird_payments_mandate": false,
"created_at": "2025-02-17T10:45:42.133Z",
"updated_at": "2025-02-17T10:45:42.133Z",
"version": 1739789142,
"sales_invoices_url": "https://moneybird.dev/123/sales_invoices/668c2e483f7f84ee578a1a6129e4027347db0322a7ab85917e9026a9941db442/all",
"notes": [],
"custom_fields": [],
"contact_people": [],
"archived": false
},
"reference": "foobar",
"date": "2025-02-17",
"due_date": null,
"entry_number": 3,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:42.272Z",
"updated_at": "2025-02-17T10:45:42.272Z",
"version": 1739789142,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:42.275Z",
"updated_at": "2025-02-17T10:45:42.275Z"
}
]
}
Example: requires all input
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{}' \
https://moneybird.com/api/v2/123/documents/general_documents.json
Response
Status: 400 Bad Request
{
"error": "General Document is required",
"symbolic": {
"general_document": "required"
}
}
Delete a general documents
Parameters
Parameter | Type | Description |
---|---|---|
refresh_journal_entries |
Boolean |
Example: deletes the general_document
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/documents/general_documents/446241566984505082.json
Response
Status: 200 OK
200
Update a general documents
Parameters
Parameter | Type | Description |
---|---|---|
general_document[reference] |
String |
Required. |
general_document[date] |
String |
Required Required. |
general_document[due_date] |
String |
|
general_document[reminder_date] |
String |
|
general_document[contact_id] |
Integer |
Should be a valid contact id. |
general_document[reminder][date] |
String |
Required |
general_document[reminder][message] |
String |
|
remove_contact |
Boolean |
Example: updates the general_document
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPATCH \
-d '{"general_document":{"reference":"updated reference"}}' \
https://moneybird.com/api/v2/123/documents/general_documents/446241566536763103.json
Response
Status: 200 OK
{
"id": "446241566536763103",
"administration_id": 123,
"contact_id": null,
"contact": null,
"reference": "updated reference",
"date": "2025-02-17",
"due_date": null,
"entry_number": 2,
"state": "saved",
"exchange_rate": "1.0",
"created_at": "2025-02-17T10:45:42.639Z",
"updated_at": "2025-02-17T10:45:42.779Z",
"version": 1739789142,
"notes": [],
"attachments": [],
"events": [
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_saved",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:42.645Z",
"updated_at": "2025-02-17T10:45:42.645Z"
},
{
"administration_id": 123,
"user_id": 17397890963220,
"action": "document_updated",
"link_entity_id": null,
"link_entity_type": null,
"data": {},
"created_at": "2025-02-17T10:45:42.786Z",
"updated_at": "2025-02-17T10:45:42.786Z"
}
]
}
Add attachment to general document
Example: uploads an attachment
Request
curl -s -H "Content-Type: multipart/mixed" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-F file=@/tmp/upload.pdf \
https://moneybird.com/api/v2/123/documents/general_documents/446241567181637384/attachments.json
Response
Status: 200 OK
200
Download attachment
Download the attachment. The response will be a redirect to a temporarily available URL
where the attachment can be downloaded. Use the Location
header in the response
to download the attachment.
Delete an attachment
Deletes an attachment of an attachable.
Example: destroys an attachment
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/documents/general_documents/446241570464728905/attachments/446241570601043787.json
Response
Adds note to entity
Parameters
Parameter | Type | Description |
---|---|---|
note[note] |
String |
Required. Text for the note or to-do. |
note[todo] |
Boolean |
If |
note[assignee_id] |
Integer |
Assign to-do to user. Should be a valid user id. If assignee_id is provided the note will be a to-do. |
Example: create a note
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XPOST \
-d '{"note":{"note":"Text of the note","assignee_id":446241565651764900,"todo":true}}' \
https://moneybird.com/api/v2/123/documents/general_documents/446241565631841954/notes.json
Response
Status: 201 Created
{
"id": "446241565725165222",
"administration_id": 123,
"entity_id": "446241565631841954",
"entity_type": "Document",
"user_id": 17397890963220,
"assignee_id": "446241565651764900",
"todo": true,
"note": "Text of the note",
"completed_at": null,
"completed_by_id": null,
"todo_type": null,
"data": {},
"created_at": "2025-02-17T10:45:41.864Z",
"updated_at": "2025-02-17T10:45:41.864Z"
}
Destroys note from entity
Example: destroy a note
Request
curl -s -H "Content-Type: application/json" -H "Authorization: Bearer 84ec207ad0154a508f798e615a998ac1fd752926d00f955fb1df3e144cba44ab" \
-XDELETE \
-d '{}' \
https://moneybird.com/api/v2/123/documents/general_documents/446241565853091507/notes/446241565862528693.json