Contracts & compliance – build on Flowtly

Use this curated snapshot of the Flowtly OpenAPI schema to plan integrations, automate workflows, and sync the data your teams rely on.

Documentation status

Last synced on 2024-07-08 12:00 (app version 2.0.0)

Only a subset of entities is made public. Run both sync commands to refresh this documentation when the Flowtly app ships new capabilities.

Contracts & compliance

Manage agreements, retention policies, and procurement workflows.

Entity overview

Agreement

Expose contract metadata to downstream systems so budgeting, procurement, and HR workflows always reference the same source of truth.

Endpoints

GET /api/agreements

List agreements

Retrieve Hydra collections of agreements with pagination and filtering over type, employee, and activity flags.

GET /api/agreements/action-needed

List agreements needing action

Retrieve agreements flagged for missing approvals or open tasks.

POST /api/agreements

Create agreement

Post a new agreement with vendor/client metadata, billing cadence, and amount information.

GET /api/agreements/{id}

Get agreement by ID

Fetch a single agreement resource to inspect status, value, and related employees.

PATCH /api/agreements/{id}

Update agreement

Patch agreement status, dates, or owners after review.

Use cases

Sync signed customer contracts from your CLM to keep revenue forecasts and compliance reviews aligned.
Push vendor agreements with spend caps into Flowtly so finance can monitor renewals automatically.

Schema fields

Agreement-agreement.read
Field Type Description
id integer Internal Flowtly identifier assigned to the agreement.
employee string | null IRI of the employee responsible for the contract.
type string High-level classification such as vendor, customer, or employment.
variant string Custom subtype used to drive automation and reporting.
amount number Net or gross monetary value captured for the agreement.
minutesPerWeek integer Expected number of working minutes per week.
jobSize integer Job size metric used for scheduling forecasts.
amountType string Defines whether the amount is stored as netto or brutto.
billingType string Billing cadence (per-month, per-hour, etc.).
positionName string | null Free-text position label tied to the agreement.
position string | null IRI reference to the standardized position record.
dateFrom string Start date/time of the contract validity.
dateTo string | null End date/time of the contract (nullable for open-ended).
currency string Currency IRI used for monetary values.
cost string | null IRI pointing to the associated cost record.
active boolean Indicates whether Flowtly currently treats the agreement as active.
hoursPerWeek integer Expected working hours per week.
status string Flowtly workflow status such as draft or active.

Examples

POST /api/agreements

Register a vendor agreement

Creates a vendor subscription agreement, tying it to the responsible employee and currency reference used inside Flowtly.

Request payload
{
    "employee": "/api/employees/emp_439",
    "type": "vendor",
    "variant": "software",
    "amount": 18500,
    "currency": "/api/currencies/EUR",
    "dateFrom": "2024-07-01T00:00:00+00:00",
    "dateTo": "2024-12-31T00:00:00+00:00",
    "amountType": "netto",
    "billingType": "per-month",
    "positionName": "Implementation partner",
    "hoursPerWeek": 12
}
Response payload
{
    "@id": "/api/agreements/agr_Y29H",
    "@type": "Agreement",
    "id": 5021,
    "employee": "/api/employees/emp_439",
    "type": "vendor",
    "variant": "software",
    "amount": 18500,
    "currency": "/api/currencies/EUR",
    "dateFrom": "2024-07-01T00:00:00+00:00",
    "dateTo": "2024-12-31T00:00:00+00:00",
    "amountType": "netto",
    "billingType": "per-month",
    "positionName": "Implementation partner",
    "hoursPerWeek": 12,
    "active": true,
    "status": "draft"
}

Entity overview

Employee

Create and manage employees for assignments, approvals, and access control.

Endpoints

GET /api/employees

List employees

Retrieve employee profiles with pagination and filters.

POST /api/employees

Create employee

Add a new employee with name, email, and optional avatar.

GET /api/employees/{id}

Get employee by ID

Read a specific employee profile.

PATCH /api/employees/{id}

Update employee

Patch employee details such as name or email.

DELETE /api/employees/{id}

Delete employee

Remove an employee profile.

GET /api/employees/{id}/working-hours-stats/{date}

Working-hours stats

Retrieve aggregated working-hours statistics for a given date.

Schema fields

User-user.read
Field Type Description
id integer Internal employee identifier.
email string Employee email address.
firstname string Employee first name.
lastname string Employee last name.
avatarUrl string | null Avatar URL for the employee.
Whatsapp