Download OpenAPI specification:Download
Welcome to the Payaca API
Get all custom field definitions for a specific role
groupRole required | string Value: "project" |
{- "customFields": [
- {
- "type": "boolean",
- "identifier": "my_custom_field",
- "label": "My custom field",
- "exampleValue": true,
- "schema": "{\"type\":[\"boolean\",\"null\"],\"$schema\":\"http://json-schema.org/draft/2020-12/schema\"}"
}
]
}
Create one or more for a specific role
groupRole required | string Value: "project" |
required | Array of objects or objects or objects [ 1 .. 50 ] items | ||||||
Array ([ 1 .. 50 ] items) One of
|
{- "customFields": [
- {
- "type": "boolean",
- "identifier": "my_custom_field",
- "label": "My custom field"
}
]
}
{- "customFields": [
- {
- "type": "boolean",
- "identifier": "my_custom_field",
- "label": "My custom field",
- "exampleValue": true,
- "schema": "{\"type\":[\"boolean\",\"null\"],\"$schema\":\"http://json-schema.org/draft/2020-12/schema\"}"
}
]
}
Create one or more within a specific fieldset
groupRole required | string Value: "project" |
fieldsetIdentifier required | string |
required | Array of objects or objects [ 1 .. 20 ] items | ||||||||
Array ([ 1 .. 20 ] items) Any of
|
{- "customFields": [
- {
- "type": "select",
- "options": [
- "Option 1",
- "Option 2",
- "Option 3"
], - "identifier": "my_custom_field",
- "label": "My custom field"
}
]
}
{- "type": "fieldset",
- "children": [
- {
- "type": "select",
- "options": [
- "Option 1",
- "Option 2",
- "Option 3"
], - "identifier": "my_custom_field",
- "label": "My custom field",
- "exampleValue": true,
- "schema": "{\"type\":[\"boolean\",\"null\"],\"$schema\":\"http://json-schema.org/draft/2020-12/schema\"}"
}
], - "identifier": "my_custom_field",
- "label": "My custom field",
- "exampleValue": true,
- "schema": "{\"type\":[\"boolean\",\"null\"],\"$schema\":\"http://json-schema.org/draft/2020-12/schema\"}"
}
Get all tax rates
offset | integer or null >= 0 Default: 0 |
limit | integer ( 0 .. 100 ] Default: 50 |
{- "taxRates": {
- "items": [
- {
- "id": "123",
- "label": "20% VAT",
- "isReverseCharge": false,
- "percentage": 20
}
], - "total": 0,
- "offset": 0,
- "limit": 0
}
}
Creates a new project for the specified customer.
id required | string Example: 123 |
reference | string or null | ||||||||||
Structured (object) or String (string) or null | |||||||||||
Any of
| |||||||||||
tags | Array of strings or null | ||||||||||
By title (object) or By id (object) or null The pipeline to create the Project within | |||||||||||
Any of
| |||||||||||
By title (object) or By id (object) or null The stage of the pipeline to start the Project in. If set, | |||||||||||
Any of
| |||||||||||
object or null The email address of the Payaca user to assign the Project to | |||||||||||
| |||||||||||
notes | Array of strings or null | ||||||||||
object or null Provide values for any custom fields the Account has configured for their Projects. The key should be the custom field identifier | |||||||||||
|
{- "reference": "ABC123",
- "siteAddress": {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom"
}, - "tags": [
- "Priority",
- "Install"
], - "pipeline": {
- "title": "Install"
}, - "pipelineStage": {
- "title": "New lead"
}, - "assignTo": {
- "email": "johanna.employeeson@payaca.com"
}, - "notes": [
- "Design and estimate required"
], - "customFields": {
- "property1": null,
- "property2": null
}
}
{- "customer": {
- "id": "123",
- "reference": "ABC123",
- "pipeline": {
- "title": "Install"
}, - "pipelineStage": {
- "title": "New Lead"
}, - "customer": {
- "id": "123",
- "name": "Harper Property Management",
- "contacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful",
- "isPrimaryContact": true
}
], - "addresses": [
- {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom",
- "regionallyUniqueIdentifier": "1234",
- "accessContacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful"
}
], - "isBillingAddress": true
}
]
}, - "tags": [
- "string"
], - "assignedTo": {
- "fullName": "Johanna Employeeson",
- "email": "johanna.employeeson@payaca.com"
}, - "siteAddress": {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom",
- "regionallyUniqueIdentifier": "1234",
- "accessContacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful"
}
]
}, - "customFields": {
- "property1": null,
- "property2": null
}, - "notes": [
- "string"
]
}
}
Creates a new Customer, or if any Customer with an email exists, adds to that one instead. If multiple Customers are found, the earliest created one is used.
name | string or null | ||||||||||
required | Array of objects non-empty | ||||||||||
Array (non-empty)
| |||||||||||
Array of objects or null | |||||||||||
Array
|
{- "name": "Harper Property Management",
- "contacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful",
- "isPrimaryContact": true
}
], - "addresses": [
- {
- "address": {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom"
}, - "isBillingAddress": true,
- "accessContacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful"
}
]
}
]
}
{- "customer": {
- "id": "123",
- "name": "Harper Property Management",
- "contacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful",
- "isPrimaryContact": true
}
], - "addresses": [
- {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom",
- "regionallyUniqueIdentifier": "1234",
- "accessContacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful"
}
], - "isBillingAddress": true
}
]
}
}
Creates Notes against the specified Project.
id required | string Example: 123 |
[- "Design and estimate required"
]
{- "notes": [
- "string"
]
}
Creates a Proposal against the specified Project.
id required | string Example: 123 |
reference | string or null | ||||
validForDays | integer or null | ||||
required | Array of objects non-empty | ||||
Array (non-empty)
|
{- "reference": "ABC123",
- "validForDays": 30,
- "itemGroups": [
- {
- "description": "Group name",
- "items": {
- "required": [
- {
- "internalIdentifier": "BATT-ABC",
- "description": "4 KW solar panels 4.5 KW battery",
- "unitPrice": 1000000,
- "quantity": 1,
- "discount": {
- "percentage": 10,
- "description": "Valued customer discount"
}, - "taxRate": {
- "id": "ABC123"
}
}
], - "optional": [
- {
- "internalIdentifier": "BATT-ABC",
- "description": "4 KW solar panels 4.5 KW battery",
- "unitPrice": 1000000,
- "quantity": 1,
- "discount": {
- "percentage": 10,
- "description": "Valued customer discount"
}, - "taxRate": {
- "id": "ABC123"
}, - "selected": true
}
], - "multiChoice": [
- {
- "internalIdentifier": "BATT-ABC",
- "description": "4 KW solar panels 4.5 KW battery",
- "unitPrice": 1000000,
- "quantity": 1,
- "discount": {
- "percentage": 10,
- "description": "Valued customer discount"
}, - "taxRate": {
- "id": "ABC123"
}, - "selected": true
}
]
}
}
]
}
{- "proposal": {
- "reference": "ABC123",
- "type": "QUOTE",
- "validForDays": 30,
- "itemGroups": [
- {
- "description": "Group name",
- "items": {
- "required": [
- {
- "internalIdentifier": "BATT-ABC",
- "description": "4 KW solar panels 4.5 KW battery",
- "price": {
- "unitPrice": 10000,
- "cisDeductionRate": 20,
- "discount": {
- "percentage": 10,
- "description": "Valued customer discount"
}, - "taxRate": {
- "id": "123",
- "label": "20% VAT",
- "isReverseCharge": false,
- "percentage": 20
}
}, - "totals": {
- "subtotal": 10000,
- "tax": 2000,
- "discount": 1000,
- "cis": 2000,
- "total": 12000
}, - "quantity": 1,
- "selection": {
- "type": "OPTIONAL",
- "selected": true
}
}
], - "optional": [
- {
- "internalIdentifier": "BATT-ABC",
- "description": "4 KW solar panels 4.5 KW battery",
- "price": {
- "unitPrice": 10000,
- "cisDeductionRate": 20,
- "discount": {
- "percentage": 10,
- "description": "Valued customer discount"
}, - "taxRate": {
- "id": "123",
- "label": "20% VAT",
- "isReverseCharge": false,
- "percentage": 20
}
}, - "totals": {
- "subtotal": 10000,
- "tax": 2000,
- "discount": 1000,
- "cis": 2000,
- "total": 12000
}, - "quantity": 1,
- "selection": {
- "type": "OPTIONAL",
- "selected": true
}
}
], - "multiChoice": [
- {
- "internalIdentifier": "BATT-ABC",
- "description": "4 KW solar panels 4.5 KW battery",
- "price": {
- "unitPrice": 10000,
- "cisDeductionRate": 20,
- "discount": {
- "percentage": 10,
- "description": "Valued customer discount"
}, - "taxRate": {
- "id": "123",
- "label": "20% VAT",
- "isReverseCharge": false,
- "percentage": 20
}
}, - "totals": {
- "subtotal": 10000,
- "tax": 2000,
- "discount": 1000,
- "cis": 2000,
- "total": 12000
}, - "quantity": 1,
- "selection": {
- "type": "OPTIONAL",
- "selected": true
}
}
]
}
}
], - "totals": {
- "total": 12000
}
}
}
Updates an existing Project.
id required | string Example: 123 |
object or null Provide values for any custom fields the Account has configured for their Projects. The key should be the custom field identifier | |||
|
{- "customFields": {
- "property1": null,
- "property2": null
}
}
{- "customer": {
- "id": "123",
- "reference": "ABC123",
- "pipeline": {
- "title": "Install"
}, - "pipelineStage": {
- "title": "New Lead"
}, - "customer": {
- "id": "123",
- "name": "Harper Property Management",
- "contacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful",
- "isPrimaryContact": true
}
], - "addresses": [
- {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom",
- "regionallyUniqueIdentifier": "1234",
- "accessContacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful"
}
], - "isBillingAddress": true
}
]
}, - "tags": [
- "string"
], - "assignedTo": {
- "fullName": "Johanna Employeeson",
- "email": "johanna.employeeson@payaca.com"
}, - "siteAddress": {
- "line1": "123 Wallaby Street",
- "line2": "string",
- "city": "Bristol",
- "postcode": "BS1 AAA",
- "country": "United Kingdom",
- "regionallyUniqueIdentifier": "1234",
- "accessContacts": [
- {
- "fullName": "John Doe",
- "email": "john.doe@email.com",
- "phoneNumber": "+44 7777 777777",
- "description": "Very friendly and helpful"
}
]
}, - "customFields": {
- "property1": null,
- "property2": null
}, - "notes": [
- "string"
]
}
}