ACMEcrm API (0.4.0)

Download OpenAPI specification:

License: Apache-2.0

Sales system of ACME analog Inc. and system of record for customers & resellers, products, price lists, quotes and orders (production contracts).

Orders are confirmed via the e-approval system: above defined thresholds an authorized signatory must approve (resolved via ACMEhr — approval limits/deputies). Confirmed orders (products, quantities, delivery dates) drive factory, port and treasury.

Pipeline (sales overlay). /pipeline is a sales-facing projection of the deal lifecycle across leads, quotes and orders onto five ordered stages (NEU · QUALIFIZIERT · ANGEBOT · VERHANDLUNG · GEWONNEN). A Deal may be a bare lead or linked to its backing quote/order as it progresses; probability is derived from stage. The overlay carries sales attributes the transactional models don't (assigned owner, contact, stage), so PATCH /pipeline/{id} can set the stage directly (for board drag-drop / inline edit) while the transactional endpoints remain the source of truth for quotes and orders. Read model — see each operation for the status→stage derivation.

Contacts & mail. A Customer is the company (system of record); /contacts are the people at a customer (a contact may be linked to one customer). A Deal references both its customerId and the contactId it is with, so a company/contact detail view can list its opportunities (/pipeline?customerId=…/?contactId=…) alongside its correspondence (/threads?customerId=…/?contactId=…). Mail threads are a lightweight overlay for the CRM UI; a real mail-sync backend is future work (currently mocked, like /pipeline).

Web forms & newsletter. /forms are lead-capture forms / newsletter signups. Their layout (fields, required flags) and the actions a valid submission triggers (send email · create contact/opportunity · schedule appointment · newsletter subscribe/unsubscribe) are maintained in the Admin area. POST /forms/{id}/submit is the public (unauthenticated) submission tool: it validates the required fields, stores the submission on success and runs the configured actions. Captured submissions are readable by CRM users via /forms/{id}/submissions.

Roles (ACMEbase): WATCH reads, WORK writes operationally (quotes/orders/approval), ADMIN maintains master data (products/price lists). Per operation under x-required-role; hierarchy ADMIN > WORK > WATCH.

Customers

Customers and resellers (sales partners).

List customers/resellers

Authorizations:
bearerAuth
query Parameters
kind
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
resellerId
string

Customers of a reseller.

q
string

Responses

Response Schema: application/json
Array
id
required
string
name
required
string
kind
required
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
required
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
email
string or null <email>
country
string or null
parentResellerId
string or null

For end customers of a reseller.

priceListId
string or null

Assigned price list.

Response samples

Content type
application/json
[
  • {
    • "id": "string",
    • "name": "Kontor Nord GmbH",
    • "kind": "CUSTOMER",
    • "status": "PROSPECT",
    • "email": "user@example.com",
    • "country": "DE",
    • "parentResellerId": "string",
    • "priceListId": "string"
    }
]

Create customer/reseller

Authorizations:
bearerAuth
Request Body schema: application/json
required
name
required
string
kind
required
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
email
string <email>
country
string
parentResellerId
string or null
priceListId
string or null

Responses

Response Schema: application/json
id
required
string
name
required
string
kind
required
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
required
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
email
string or null <email>
country
string or null
parentResellerId
string or null

For end customers of a reseller.

priceListId
string or null

Assigned price list.

Request samples

Content type
application/json
{
  • "name": "string",
  • "kind": "CUSTOMER",
  • "status": "PROSPECT",
  • "email": "user@example.com",
  • "country": "string",
  • "parentResellerId": "string",
  • "priceListId": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "Kontor Nord GmbH",
  • "kind": "CUSTOMER",
  • "status": "PROSPECT",
  • "email": "user@example.com",
  • "country": "DE",
  • "parentResellerId": "string",
  • "priceListId": "string"
}

Read customer

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
name
required
string
kind
required
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
required
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
email
string or null <email>
country
string or null
parentResellerId
string or null

For end customers of a reseller.

priceListId
string or null

Assigned price list.

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "Kontor Nord GmbH",
  • "kind": "CUSTOMER",
  • "status": "PROSPECT",
  • "email": "user@example.com",
  • "country": "DE",
  • "parentResellerId": "string",
  • "priceListId": "string"
}

Update customer

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string
kind
required
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
email
string <email>
country
string
parentResellerId
string or null
priceListId
string or null

Responses

Response Schema: application/json
id
required
string
name
required
string
kind
required
string (CustomerKind)
Enum: "CUSTOMER" "RESELLER"
status
required
string (CustomerStatus)
Enum: "PROSPECT" "ACTIVE" "BLOCKED"
email
string or null <email>
country
string or null
parentResellerId
string or null

For end customers of a reseller.

priceListId
string or null

Assigned price list.

Request samples

Content type
application/json
{
  • "name": "string",
  • "kind": "CUSTOMER",
  • "status": "PROSPECT",
  • "email": "user@example.com",
  • "country": "string",
  • "parentResellerId": "string",
  • "priceListId": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "Kontor Nord GmbH",
  • "kind": "CUSTOMER",
  • "status": "PROSPECT",
  • "email": "user@example.com",
  • "country": "DE",
  • "parentResellerId": "string",
  • "priceListId": "string"
}

Products

Product catalog (analog goods from the ACME factory).

List products

Authorizations:
bearerAuth
query Parameters
category
string
active
boolean
q
string

Responses

Response Schema: application/json
Array
id
required
string
sku
required
string
name
required
string
category
string or null
unit
string
Default: "piece"
active
required
boolean
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

Response samples

Content type
application/json
[
  • {
    • "id": "string",
    • "sku": "ACME-RADIO-01",
    • "name": "Tube radio „Nostalgie“",
    • "category": "string",
    • "unit": "piece",
    • "active": true,
    • "listPrice": {
      }
    }
]

Create product (master data)

Authorizations:
bearerAuth
Request Body schema: application/json
required
sku
required
string
name
required
string
category
string
unit
string
active
boolean
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

Responses

Response Schema: application/json
id
required
string
sku
required
string
name
required
string
category
string or null
unit
string
Default: "piece"
active
required
boolean
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

Request samples

Content type
application/json
{
  • "sku": "string",
  • "name": "string",
  • "category": "string",
  • "unit": "string",
  • "active": true,
  • "listPrice": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "sku": "ACME-RADIO-01",
  • "name": "Tube radio „Nostalgie“",
  • "category": "string",
  • "unit": "piece",
  • "active": true,
  • "listPrice": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    }
}

Read product

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
sku
required
string
name
required
string
category
string or null
unit
string
Default: "piece"
active
required
boolean
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

Response samples

Content type
application/json
{
  • "id": "string",
  • "sku": "ACME-RADIO-01",
  • "name": "Tube radio „Nostalgie“",
  • "category": "string",
  • "unit": "piece",
  • "active": true,
  • "listPrice": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    }
}

Update product (master data)

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
sku
required
string
name
required
string
category
string
unit
string
active
boolean
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

Responses

Response Schema: application/json
id
required
string
sku
required
string
name
required
string
category
string or null
unit
string
Default: "piece"
active
required
boolean
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

Request samples

Content type
application/json
{
  • "sku": "string",
  • "name": "string",
  • "category": "string",
  • "unit": "string",
  • "active": true,
  • "listPrice": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "sku": "ACME-RADIO-01",
  • "name": "Tube radio „Nostalgie“",
  • "category": "string",
  • "unit": "piece",
  • "active": true,
  • "listPrice": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    }
}

PriceLists

Price lists (list/reseller) with tiered prices + price resolution.

List price lists

Authorizations:
bearerAuth
query Parameters
kind
string (PriceListKind)
Enum: "LIST" "RESELLER" "CUSTOM"

Responses

Response Schema: application/json
Array
id
required
string
name
required
string
currency
required
string = 3 characters
kind
required
string (PriceListKind)
Enum: "LIST" "RESELLER" "CUSTOM"
object (DateRange)

Validity period. until=null = open-ended.

required
Array of objects (PriceListItem)

Response samples

Content type
application/json
[
  • {
    • "id": "string",
    • "name": "string",
    • "currency": "EUR",
    • "kind": "LIST",
    • "validity": {
      },
    • "items": [
      ]
    }
]

Create price list (master data)

Authorizations:
bearerAuth
Request Body schema: application/json
required
name
required
string
currency
required
string = 3 characters
kind
required
string (PriceListKind)
Enum: "LIST" "RESELLER" "CUSTOM"
validFrom
string <date>
validUntil
string or null <date>
Array of objects (PriceListItem)

Responses

Response Schema: application/json
id
required
string
name
required
string
currency
required
string = 3 characters
kind
required
string (PriceListKind)
Enum: "LIST" "RESELLER" "CUSTOM"
object (DateRange)

Validity period. until=null = open-ended.

required
Array of objects (PriceListItem)

Request samples

Content type
application/json
{
  • "name": "string",
  • "currency": "str",
  • "kind": "LIST",
  • "validFrom": "2019-08-24",
  • "validUntil": "2019-08-24",
  • "items": [
    • {
      }
    ]
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "currency": "EUR",
  • "kind": "LIST",
  • "validity": {
    • "from": "2019-08-24",
    • "until": "2019-08-24"
    },
  • "items": [
    • {
      }
    ]
}

Read price list

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
name
required
string
currency
required
string = 3 characters
kind
required
string (PriceListKind)
Enum: "LIST" "RESELLER" "CUSTOM"
object (DateRange)

Validity period. until=null = open-ended.

required
Array of objects (PriceListItem)

Response samples

Content type
application/json
{
  • "id": "string",
  • "name": "string",
  • "currency": "EUR",
  • "kind": "LIST",
  • "validity": {
    • "from": "2019-08-24",
    • "until": "2019-08-24"
    },
  • "items": [
    • {
      }
    ]
}

Resolve effective unit price

Returns the unit price applicable for customer + product + quantity (incl. tier/reseller).

Authorizations:
bearerAuth
query Parameters
customerId
required
string
productId
required
string
quantity
integer >= 1
Default: 1

Responses

Response Schema: application/json
productId
required
string
customerId
required
string
quantity
required
integer
unitPrice
required
number
currency
string
priceListId
string or null
source
string
Enum: "PRICE_LIST" "LIST_PRICE"

Response samples

Content type
application/json
{
  • "productId": "string",
  • "customerId": "string",
  • "quantity": 0,
  • "unitPrice": 0,
  • "currency": "string",
  • "priceListId": "string",
  • "source": "PRICE_LIST"
}

Quotes

Quotes — draft through acceptance, conversion into an order.

List quotes

Authorizations:
bearerAuth
query Parameters
customerId
string
status
string (QuoteStatus)
Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED"

Responses

Response Schema: application/json
Array
id
required
string
customerId
required
string
customerName
string
status
required
string (QuoteStatus)
Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED"
currency
required
string
validUntil
string or null <date>
required
Array of objects (Line)
netTotal
required
number
createdOn
string or null <date>

Response samples

Content type
application/json
[
  • {
    • "id": "string",
    • "customerId": "string",
    • "customerName": "string",
    • "status": "DRAFT",
    • "currency": "string",
    • "validUntil": "2019-08-24",
    • "lines": [
      ],
    • "netTotal": 0,
    • "createdOn": "2019-08-24"
    }
]

Create quote

Unit prices are resolved from the customer's price list if not provided.

Authorizations:
bearerAuth
Request Body schema: application/json
required
customerId
required
string
validUntil
string or null <date>
required
Array of objects (LineWrite) non-empty

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
status
required
string (QuoteStatus)
Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED"
currency
required
string
validUntil
string or null <date>
required
Array of objects (Line)
netTotal
required
number
createdOn
string or null <date>

Request samples

Content type
application/json
{
  • "customerId": "string",
  • "validUntil": "2019-08-24",
  • "lines": [
    • {
      }
    ]
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "status": "DRAFT",
  • "currency": "string",
  • "validUntil": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "netTotal": 0,
  • "createdOn": "2019-08-24"
}

Read quote

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
status
required
string (QuoteStatus)
Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED"
currency
required
string
validUntil
string or null <date>
required
Array of objects (Line)
netTotal
required
number
createdOn
string or null <date>

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "status": "DRAFT",
  • "currency": "string",
  • "validUntil": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "netTotal": 0,
  • "createdOn": "2019-08-24"
}

Update quote (status/validity)

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
status
string (QuoteStatus)
Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED"
validUntil
string or null <date>

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
status
required
string (QuoteStatus)
Enum: "DRAFT" "SENT" "ACCEPTED" "REJECTED" "EXPIRED"
currency
required
string
validUntil
string or null <date>
required
Array of objects (Line)
netTotal
required
number
createdOn
string or null <date>

Request samples

Content type
application/json
{
  • "status": "DRAFT",
  • "validUntil": "2019-08-24"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "status": "DRAFT",
  • "currency": "string",
  • "validUntil": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "netTotal": 0,
  • "createdOn": "2019-08-24"
}

Convert quote into order

Marks the quote as accepted and creates an order from it.

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Orders

Orders incl. e-approval (submission, approval/rejection, production, fulfillment).

List orders

Consumers read the approved orders via status=APPROVED for the production cycle.

Authorizations:
bearerAuth
query Parameters
customerId
string
status
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"

Responses

Response Schema: application/json
Array
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Response samples

Content type
application/json
[
  • {
    • "id": "string",
    • "customerId": "string",
    • "customerName": "string",
    • "customerCountry": "string",
    • "quoteId": "string",
    • "status": "CREATED",
    • "orderDate": "2019-08-24",
    • "lines": [
      ],
    • "total": {
      },
    • "approval": {
      },
    • "shippingMode": "string",
    • "note": "string"
    }
]

Create order

Authorizations:
bearerAuth
Request Body schema: application/json
required
customerId
required
string
quoteId
string or null
required
Array of objects (LineWrite) non-empty
shippingMode
string or null
note
string or null

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Request samples

Content type
application/json
{
  • "customerId": "string",
  • "quoteId": "string",
  • "lines": [
    • {
      }
    ],
  • "shippingMode": "string",
  • "note": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Delete all orders (data reset)

Destructive reset of the order stock — intended only for the data/economy reset, hence ADMIN. Not for normal operation.

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/problem+json
{
  • "title": "string",
  • "status": 0,
  • "detail": "string",
  • "instance": "string"
}

Read order

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Submit order for approval (e-approval)

Sets the status to PENDING_APPROVAL or — below the threshold — directly to APPROVED.

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Approval decision (e-approval)

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
approverId
required
string

Person (ACMEhr) making the decision.

decision
required
string
Enum: "APPROVE" "REJECT"
comment
string or null

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Request samples

Content type
application/json
{
  • "approverId": "string",
  • "decision": "APPROVE",
  • "comment": "string"
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Record produced quantities (partial fulfillment)

Reports the quantities produced on a day per line; reduces remainingQuantity. The production cycle calls this after manufacturing. Once the order is thereby complete, it moves to FULFILLED.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
required
Array of objects non-empty

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Request samples

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

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Mark order as fully fulfilled

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Cancel order

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
required
string
customerName
string
customerCountry
string or null
quoteId
string or null
status
required
string (OrderStatus)
Enum: "CREATED" "PENDING_APPROVAL" "APPROVED" "REJECTED" "FULFILLED" "CANCELLED"
orderDate
required
string <date>
required
Array of objects (Line)
required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Approval)

E-approval status of an order/procurement.

shippingMode
string or null

Shipping mode (e.g. AIR = air freight, otherwise sea freight).

note
string or null

Response samples

Content type
application/json
{
  • "id": "string",
  • "customerId": "string",
  • "customerName": "string",
  • "customerCountry": "string",
  • "quoteId": "string",
  • "status": "CREATED",
  • "orderDate": "2019-08-24",
  • "lines": [
    • {
      }
    ],
  • "total": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "approval": {
    • "required": true,
    • "approverId": "string",
    • "decision": "APPROVE",
    • "decidedOn": "2019-08-24",
    • "comment": "string"
    },
  • "shippingMode": "string",
  • "note": "string"
}

Contacts

People at a customer (company). A contact may be linked to one customer.

List contacts

Authorizations:
bearerAuth
query Parameters
customerId
string

Contacts of a customer.

q
string

Responses

Response Schema: application/json
Array
id
required
string
customerId
string or null

The company this contact belongs to.

name
required
string
role
string or null
email
string or null <email>
phone
string or null
primary
boolean
Default: false

Primary contact of the customer.

newsletter
boolean
Default: false

Newsletter opt-in (set by form newsletter actions).

Response samples

Content type
application/json
[
  • {
    • "id": "contact-1001",
    • "customerId": "string",
    • "name": "Sara Mena",
    • "role": "CTO",
    • "email": "user@example.com",
    • "phone": "string",
    • "primary": false,
    • "newsletter": false
    }
]

Create contact

Authorizations:
bearerAuth
Request Body schema: application/json
required
customerId
string or null
name
required
string
role
string or null
email
string or null <email>
phone
string or null
primary
boolean
newsletter
boolean

Responses

Response Schema: application/json
id
required
string
customerId
string or null

The company this contact belongs to.

name
required
string
role
string or null
email
string or null <email>
phone
string or null
primary
boolean
Default: false

Primary contact of the customer.

newsletter
boolean
Default: false

Newsletter opt-in (set by form newsletter actions).

Request samples

Content type
application/json
{
  • "customerId": "string",
  • "name": "string",
  • "role": "string",
  • "email": "user@example.com",
  • "phone": "string",
  • "primary": true,
  • "newsletter": true
}

Response samples

Content type
application/json
{
  • "id": "contact-1001",
  • "customerId": "string",
  • "name": "Sara Mena",
  • "role": "CTO",
  • "email": "user@example.com",
  • "phone": "string",
  • "primary": false,
  • "newsletter": false
}

Read contact

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
customerId
string or null

The company this contact belongs to.

name
required
string
role
string or null
email
string or null <email>
phone
string or null
primary
boolean
Default: false

Primary contact of the customer.

newsletter
boolean
Default: false

Newsletter opt-in (set by form newsletter actions).

Response samples

Content type
application/json
{
  • "id": "contact-1001",
  • "customerId": "string",
  • "name": "Sara Mena",
  • "role": "CTO",
  • "email": "user@example.com",
  • "phone": "string",
  • "primary": false,
  • "newsletter": false
}

Update contact

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
customerId
string or null
name
required
string
role
string or null
email
string or null <email>
phone
string or null
primary
boolean
newsletter
boolean

Responses

Response Schema: application/json
id
required
string
customerId
string or null

The company this contact belongs to.

name
required
string
role
string or null
email
string or null <email>
phone
string or null
primary
boolean
Default: false

Primary contact of the customer.

newsletter
boolean
Default: false

Newsletter opt-in (set by form newsletter actions).

Request samples

Content type
application/json
{
  • "customerId": "string",
  • "name": "string",
  • "role": "string",
  • "email": "user@example.com",
  • "phone": "string",
  • "primary": true,
  • "newsletter": true
}

Response samples

Content type
application/json
{
  • "id": "contact-1001",
  • "customerId": "string",
  • "name": "Sara Mena",
  • "role": "CTO",
  • "email": "user@example.com",
  • "phone": "string",
  • "primary": false,
  • "newsletter": false
}

Pipeline

Sales pipeline overlay — a stage projection over leads/quotes/orders for the CRM board, table and funnel. Read-mostly; stage is settable for drag-drop / inline edit.

List pipeline deals

The sales pipeline as a list of Deals, each projected onto one of five stages.

Status → stage derivation (for deals backed by a quote/order): quote DRAFTNEU; quote SENTQUALIFIZIERT; quote ACCEPTED or order CREATEDANGEBOT; order PENDING_APPROVALVERHANDLUNG; order APPROVED or FULFILLEDGEWONNEN. Lost deals (quote REJECTED/EXPIRED, order REJECTED/CANCELLED) are excluded by default. Bare leads (no quote yet) sit in the stage last set on them (default NEU).

Authorizations:
bearerAuth
query Parameters
stage
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

owner
string

Filter by owner initials.

customerId
string

Deals of a customer.

contactId
string

Deals with a contact.

q
string

Free-text over company/contact.

Responses

Response Schema: application/json
Array
id
required
string
source
required
string (DealSource)
Enum: "LEAD" "QUOTE" "ORDER"

What the deal is currently backed by in the transactional model.

quoteId
string or null
orderId
string or null
customerId
string or null
contactId
string or null

The contact this deal is with.

company
required
string
contact
string or null
stage
required
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

probability
required
integer [ 0 .. 100 ]

Derived from stage.

required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Owner)

Sales owner assigned to a deal (avatar initials + display name).

lastActivity
string or null

Human label

lastActivityAt
string or null <date-time>
ageDays
integer or null

Days since the deal entered its current stage.

Response samples

Content type
application/json
[
  • {
    • "id": "deal-1024",
    • "source": "LEAD",
    • "quoteId": "string",
    • "orderId": "string",
    • "customerId": "string",
    • "contactId": "string",
    • "company": "Nordwind Logistik",
    • "contact": "Michael Braun · CPO",
    • "stage": "NEU",
    • "probability": 100,
    • "value": {
      },
    • "owner": {
      },
    • "lastActivity": "string",
    • "lastActivityAt": "2019-08-24T14:15:22Z",
    • "ageDays": 0
    }
]

Create a pipeline deal (lead)

Adds a new deal to the pipeline. Without a customerId/backing quote it is a bare lead (enters NEU by default); the sales team later attaches a quote/order as it progresses.

Authorizations:
bearerAuth
Request Body schema: application/json
required
company
required
string
contact
string or null
customerId
string or null
contactId
string or null
stage
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

ownerInitials
string or null

Responses

Response Schema: application/json
id
required
string
source
required
string (DealSource)
Enum: "LEAD" "QUOTE" "ORDER"

What the deal is currently backed by in the transactional model.

quoteId
string or null
orderId
string or null
customerId
string or null
contactId
string or null

The contact this deal is with.

company
required
string
contact
string or null
stage
required
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

probability
required
integer [ 0 .. 100 ]

Derived from stage.

required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Owner)

Sales owner assigned to a deal (avatar initials + display name).

lastActivity
string or null

Human label

lastActivityAt
string or null <date-time>
ageDays
integer or null

Days since the deal entered its current stage.

Request samples

Content type
application/json
{
  • "company": "string",
  • "contact": "string",
  • "customerId": "string",
  • "contactId": "string",
  • "stage": "NEU",
  • "value": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "ownerInitials": "string"
}

Response samples

Content type
application/json
{
  • "id": "deal-1024",
  • "source": "LEAD",
  • "quoteId": "string",
  • "orderId": "string",
  • "customerId": "string",
  • "contactId": "string",
  • "company": "Nordwind Logistik",
  • "contact": "Michael Braun · CPO",
  • "stage": "NEU",
  • "probability": 100,
  • "value": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "owner": {
    • "initials": "JS",
    • "name": "Jana Schmidt"
    },
  • "lastActivity": "string",
  • "lastActivityAt": "2019-08-24T14:15:22Z",
  • "ageDays": 0
}

Read a pipeline deal

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
source
required
string (DealSource)
Enum: "LEAD" "QUOTE" "ORDER"

What the deal is currently backed by in the transactional model.

quoteId
string or null
orderId
string or null
customerId
string or null
contactId
string or null

The contact this deal is with.

company
required
string
contact
string or null
stage
required
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

probability
required
integer [ 0 .. 100 ]

Derived from stage.

required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Owner)

Sales owner assigned to a deal (avatar initials + display name).

lastActivity
string or null

Human label

lastActivityAt
string or null <date-time>
ageDays
integer or null

Days since the deal entered its current stage.

Response samples

Content type
application/json
{
  • "id": "deal-1024",
  • "source": "LEAD",
  • "quoteId": "string",
  • "orderId": "string",
  • "customerId": "string",
  • "contactId": "string",
  • "company": "Nordwind Logistik",
  • "contact": "Michael Braun · CPO",
  • "stage": "NEU",
  • "probability": 100,
  • "value": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "owner": {
    • "initials": "JS",
    • "name": "Jana Schmidt"
    },
  • "lastActivity": "string",
  • "lastActivityAt": "2019-08-24T14:15:22Z",
  • "ageDays": 0
}

Update a pipeline deal (stage / owner / value / contact)

Sets sales-overlay attributes. Moving stage reflects the board drag-drop / inline edit; where a deal is backed by a quote/order the server advances the underlying record along its legal transition, otherwise it records the stage on the overlay.

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
stage
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

company
string
contact
string or null
contactId
string or null
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

ownerInitials
string or null

Responses

Response Schema: application/json
id
required
string
source
required
string (DealSource)
Enum: "LEAD" "QUOTE" "ORDER"

What the deal is currently backed by in the transactional model.

quoteId
string or null
orderId
string or null
customerId
string or null
contactId
string or null

The contact this deal is with.

company
required
string
contact
string or null
stage
required
string (PipelineStage)
Enum: "NEU" "QUALIFIZIERT" "ANGEBOT" "VERHANDLUNG" "GEWONNEN"

Ordered sales stage. probability is derived from it: NEU 15 · QUALIFIZIERT 35 · ANGEBOT 60 · VERHANDLUNG 80 · GEWONNEN 100 (%).

probability
required
integer [ 0 .. 100 ]

Derived from stage.

required
object (Money)

Monetary amount. unlimited=true → no amount limit (then amount/currency are empty).

object (Owner)

Sales owner assigned to a deal (avatar initials + display name).

lastActivity
string or null

Human label

lastActivityAt
string or null <date-time>
ageDays
integer or null

Days since the deal entered its current stage.

Request samples

Content type
application/json
{
  • "stage": "NEU",
  • "company": "string",
  • "contact": "string",
  • "contactId": "string",
  • "value": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "ownerInitials": "string"
}

Response samples

Content type
application/json
{
  • "id": "deal-1024",
  • "source": "LEAD",
  • "quoteId": "string",
  • "orderId": "string",
  • "customerId": "string",
  • "contactId": "string",
  • "company": "Nordwind Logistik",
  • "contact": "Michael Braun · CPO",
  • "stage": "NEU",
  • "probability": 100,
  • "value": {
    • "amount": 50000,
    • "currency": "EUR",
    • "unlimited": false
    },
  • "owner": {
    • "initials": "JS",
    • "name": "Jana Schmidt"
    },
  • "lastActivity": "string",
  • "lastActivityAt": "2019-08-24T14:15:22Z",
  • "ageDays": 0
}

Mail

Mail threads (correspondence) attached to a customer/contact. UI overlay — a real mail-sync backend is future work (currently mocked).

List mail threads

Correspondence attached to a customer and/or contact. Filter by either.

Authorizations:
bearerAuth
query Parameters
customerId
string
contactId
string
q
string

Responses

Response Schema: application/json
Array
id
required
string
subject
required
string
customerId
string or null
contactId
string or null
participants
Array of strings
messageCount
integer
lastMessageAt
string or null <date-time>
preview
string or null

Snippet of the latest message.

Array of objects (MailMessage)

Response samples

Content type
application/json
[
  • {
    • "id": "thread-1001",
    • "subject": "Angebot Rahmen XL",
    • "customerId": "string",
    • "contactId": "string",
    • "participants": [
      ],
    • "messageCount": 0,
    • "lastMessageAt": "2019-08-24T14:15:22Z",
    • "preview": "string",
    • "messages": [
      ]
    }
]

Read a mail thread (with messages)

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
subject
required
string
customerId
string or null
contactId
string or null
participants
Array of strings
messageCount
integer
lastMessageAt
string or null <date-time>
preview
string or null

Snippet of the latest message.

Array of objects (MailMessage)

Response samples

Content type
application/json
{
  • "id": "thread-1001",
  • "subject": "Angebot Rahmen XL",
  • "customerId": "string",
  • "contactId": "string",
  • "participants": [
    • "string"
    ],
  • "messageCount": 0,
  • "lastMessageAt": "2019-08-24T14:15:22Z",
  • "preview": "string",
  • "messages": [
    • {
      }
    ]
}

Forms

Web forms / newsletter signups. Layout and trigger actions are configured in Admin; POST /forms/{id}/submit is the public submission tool (validate → store → trigger).

List web forms

Configured web forms / newsletter signups (definition maintained in Admin).

Authorizations:
bearerAuth

Responses

Response Schema: application/json
Array
id
required
string
name
required
string
slug
required
string

Public identifier used to embed the form.

description
string or null
enabled
boolean
Default: true
required
Array of objects (FormField)
Array of objects (FormAction)

Triggered on a valid submission.

createdOn
string or null <date>

Response samples

Content type
application/json
[
  • {
    • "id": "form-lead",
    • "name": "Kontaktformular",
    • "slug": "kontakt",
    • "description": "string",
    • "enabled": true,
    • "fields": [
      ],
    • "actions": [
      ],
    • "createdOn": "2019-08-24"
    }
]

Create a web form (Admin)

Authorizations:
bearerAuth
Request Body schema: application/json
required
name
required
string
slug
required
string
description
string or null
enabled
boolean
required
Array of objects (FormField)
Array of objects (FormAction)

Responses

Response Schema: application/json
id
required
string
name
required
string
slug
required
string

Public identifier used to embed the form.

description
string or null
enabled
boolean
Default: true
required
Array of objects (FormField)
Array of objects (FormAction)

Triggered on a valid submission.

createdOn
string or null <date>

Request samples

Content type
application/json
{
  • "name": "string",
  • "slug": "string",
  • "description": "string",
  • "enabled": true,
  • "fields": [
    • {
      }
    ],
  • "actions": [
    • {
      }
    ]
}

Response samples

Content type
application/json
{
  • "id": "form-lead",
  • "name": "Kontaktformular",
  • "slug": "kontakt",
  • "description": "string",
  • "enabled": true,
  • "fields": [
    • {
      }
    ],
  • "actions": [
    • {
      }
    ],
  • "createdOn": "2019-08-24"
}

Read a web form (definition)

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
id
required
string
name
required
string
slug
required
string

Public identifier used to embed the form.

description
string or null
enabled
boolean
Default: true
required
Array of objects (FormField)
Array of objects (FormAction)

Triggered on a valid submission.

createdOn
string or null <date>

Response samples

Content type
application/json
{
  • "id": "form-lead",
  • "name": "Kontaktformular",
  • "slug": "kontakt",
  • "description": "string",
  • "enabled": true,
  • "fields": [
    • {
      }
    ],
  • "actions": [
    • {
      }
    ],
  • "createdOn": "2019-08-24"
}

Update a web form (Admin — fields, required flags, trigger actions)

Authorizations:
bearerAuth
path Parameters
id
required
string
Request Body schema: application/json
required
name
required
string
slug
required
string
description
string or null
enabled
boolean
required
Array of objects (FormField)
Array of objects (FormAction)

Responses

Response Schema: application/json
id
required
string
name
required
string
slug
required
string

Public identifier used to embed the form.

description
string or null
enabled
boolean
Default: true
required
Array of objects (FormField)
Array of objects (FormAction)

Triggered on a valid submission.

createdOn
string or null <date>

Request samples

Content type
application/json
{
  • "name": "string",
  • "slug": "string",
  • "description": "string",
  • "enabled": true,
  • "fields": [
    • {
      }
    ],
  • "actions": [
    • {
      }
    ]
}

Response samples

Content type
application/json
{
  • "id": "form-lead",
  • "name": "Kontaktformular",
  • "slug": "kontakt",
  • "description": "string",
  • "enabled": true,
  • "fields": [
    • {
      }
    ],
  • "actions": [
    • {
      }
    ],
  • "createdOn": "2019-08-24"
}

Submit a web form (public)

Public submission tool for the embedded web form / newsletter signup — no auth (overrides the global bearer security). Validates the submitted values against the form's required fields (422 listing the offending fields on failure); on success stores the submission and runs the configured trigger actions (send email, create contact/opportunity, schedule appointment, newsletter subscribe/unsubscribe). Returns the stored submission incl. which actions were triggered.

path Parameters
id
required
string
Request Body schema: application/json
required
required
object

Responses

Response Schema: application/json
id
required
string
formId
required
string
required
object
submittedAt
required
string <date-time>
Array of objects (TriggeredAction)

Request samples

Content type
application/json
{
  • "values": {
    • "name": "Sara Mena",
    • "email": "sara@example.com",
    • "newsletter": true
    }
}

Response samples

Content type
application/json
{
  • "id": "string",
  • "formId": "string",
  • "values": { },
  • "submittedAt": "2019-08-24T14:15:22Z",
  • "triggered": [
    • {
      }
    ]
}

List captured submissions of a form

Authorizations:
bearerAuth
path Parameters
id
required
string

Responses

Response Schema: application/json
Array
id
required
string
formId
required
string
required
object
submittedAt
required
string <date-time>
Array of objects (TriggeredAction)

Response samples

Content type
application/json
[
  • {
    • "id": "string",
    • "formId": "string",
    • "values": { },
    • "submittedAt": "2019-08-24T14:15:22Z",
    • "triggered": [
      ]
    }
]