Payaca API (1.0.0)

Download OpenAPI specification:Download

Tech Team: tech@payaca.com License: Proprietary

Welcome to the Payaca API

Customers

Customers: Create or update

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.

Authorizations:
basicAuth
Request Body schema: application/json
name
string or null
required
Array of objects non-empty
Array of objects or null

Responses

Request samples

Content type
application/json
{
  • "name": "Harper Property Management",
  • "contacts": [
    ],
  • "addresses": [
    ]
}

Response samples

Content type
application/json
{
  • "customer": {
    }
}

Projects

Projects: Create

Creates a new project for the specified customer.

Authorizations:
basicAuth
path Parameters
id
required
string
Example: 123
Request Body schema: application/json
reference
string or null
Structured (object) or String (string) or null
tags
Array of strings or null
By title (object) or By id (object) or null

The pipeline to create the Project within

By title (object) or By id (object) or null

The stage of the pipeline to start the Project in. If set, pipeline must also be provided

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

Responses

Request samples

Content type
application/json
{
  • "reference": "ABC123",
  • "siteAddress": {
    },
  • "tags": [
    ],
  • "pipeline": {
    },
  • "pipelineStage": {
    },
  • "assignTo": {
    },
  • "notes": [
    ],
  • "customFields": {
    }
}

Response samples

Content type
application/json
{
  • "customer": {
    }
}

Projects: Update

Updates an existing Project.

Authorizations:
basicAuth
path Parameters
id
required
string
Example: 123
Request Body schema: application/json
object or null

Provide values for any custom fields the Account has configured for their Projects. The key should be the custom field identifier

Responses

Request samples

Content type
application/json
{
  • "customFields": {
    }
}

Response samples

Content type
application/json
{
  • "customer": {
    }
}

Custom Fields

Custom Fields: Get all for a specific role

Get all custom field definitions for a specific role

Authorizations:
basicAuth
path Parameters
groupRole
required
string
Value: "project"

Responses

Response samples

Content type
application/json
{
  • "customFields": [
    ]
}

Custom Fields: Create one or more for a specific role

Create one or more for a specific role

Authorizations:
basicAuth
path Parameters
groupRole
required
string
Value: "project"
Request Body schema: application/json
required
Array of Simple field (object) or Select field (object) or Fieldset (object) [ 1 .. 50 ] items

Responses

Request samples

Content type
application/json
{
  • "customFields": [
    ]
}

Response samples

Content type
application/json
{
  • "customFields": [
    ]
}

Custom Fields: Create one or more within a specific fieldset

Create one or more within a specific fieldset

Authorizations:
basicAuth
path Parameters
groupRole
required
string
Value: "project"
fieldsetIdentifier
required
string
Request Body schema: application/json
required
Array of Select field (object) or Simple field (object) [ 1 .. 20 ] items

Responses

Request samples

Content type
application/json
{
  • "customFields": [
    ]
}

Response samples

Content type
application/json
{
  • "identifier": "my_custom_field",
  • "label": "My custom field",
  • "exampleValue": true,
  • "schema": "{\"type\":[\"boolean\",\"null\"],\"$schema\":\"http://json-schema.org/draft/2020-12/schema\"}",
  • "type": "fieldset",
  • "children": [
    ]
}

Tax Rates

Tax Rates: Get all

Get all tax rates

Authorizations:
basicAuth
query Parameters
offset
integer or null >= 0
Default: 0
limit
integer ( 0 .. 100 ]
Default: 50

Responses

Response samples

Content type
application/json
{
  • "taxRates": {
    }
}

Project Notes

Project Notes: Create

Creates Notes against the specified Project.

Authorizations:
basicAuth
path Parameters
id
required
string
Example: 123
Request Body schema: application/json
Array ([ 1 .. 10 ] items)
string

Responses

Request samples

Content type
application/json
[
  • "Design and estimate required"
]

Response samples

Content type
application/json
{
  • "notes": [
    ]
}

Project Proposals

Project Proposal: Create

Creates a Proposal against the specified Project.

Authorizations:
basicAuth
path Parameters
id
required
string
Example: 123
Request Body schema: application/json
reference
string or null
validForDays
integer or null
required
Array of objects non-empty

Responses

Request samples

Content type
application/json
{
  • "reference": "ABC123",
  • "validForDays": 30,
  • "itemGroups": [
    ]
}

Response samples

Content type
application/json
{
  • "proposal": {
    }
}