Deals

Deals

Deals in de pipeline ophalen, aanmaken, bijwerken en verplaatsen. Scope: deals.read / deals.write.

Deals ophalen

GET /v1/deals
deals.read

Legacy pipeline_id / phase_id blijven geaccepteerd

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Query
Naam Type Beschrijving
page integer Paginanummer (vanaf 1, default 1)
per_page integer Items per pagina (default 25, max 200)
client_id string
status string Filter op status
pipeline_id string Filter by pipeline_id (UUID)
phase_id string Filter by phase_id (UUID)
legacy_pipeline_id integer Legacy integer filter; removed in v2.
legacy_phase_id integer Legacy integer filter; removed in v2.
Request body

Geen

Response
data object[]
guid string
Example: d4e5f6a7-b8c9-0123-def0-234567890123
title string
Example: Website redesign
amount number
Example: 4500
status string
Enum
open won lost
Example: open
priority string
Enum
low medium high
Example: medium
pipeline_guid string
Example: e5f6a7b8-c9d0-1234-ef01-345678901234
phase_guid string
Example: f6a7b8c9-d0e1-2345-f012-456789012345
client_guid string
Example: b2c3d4e5-f6a7-8901-bcde-f12345678901
expected_close_date string
Example: 2026-08-01
created_at string
Example: 2026-07-01T10:00:00+02:00
meta object
page integer
Example: 1
per_page integer
Example: 25
total integer
Example: 1
pages integer
Example: 1

Examples

GET /v1/deals
curl -X GET "https://api.appficient.nl/v1/deals" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Deal aanmaken

POST /v1/deals
deals.write

Legacy pipeline_id / phase_id blijven geaccepteerd

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Headers
Naam Type Beschrijving
Idempotency-Key string Optional on POST only; cached 24h; replay returns X-Idempotent-Replay
Request body
title string
Example: Website redesign
client_guid string
Example: b2c3d4e5-f6a7-8901-bcde-f12345678901
amount number
Example: 4500
priority string
Enum
low medium high
Example: medium
status string
Enum
open won lost
Example: open
Response
data object
guid string
Example: d4e5f6a7-b8c9-0123-def0-234567890123
title string
Example: Website redesign
amount number
Example: 4500
status string
Enum
open won lost
Example: open
priority string
Enum
low medium high
Example: medium
pipeline_guid string
Example: e5f6a7b8-c9d0-1234-ef01-345678901234
phase_guid string
Example: f6a7b8c9-d0e1-2345-f012-456789012345
client_guid string
Example: b2c3d4e5-f6a7-8901-bcde-f12345678901
expected_close_date string
Example: 2026-08-01
created_at string
Example: 2026-07-01T10:00:00+02:00
meta object[]

Examples

POST /v1/deals
curl -X POST "https://api.appficient.nl/v1/deals" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
  "title": "Website redesign",
  "client_guid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
  "amount": 4500.00,
  "priority": "medium",
  "status": "open"
}'

Curl, Node en response staan rechts naast dit endpoint.

Deal ophalen

GET /v1/deals/{id}
deals.read
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string Resource id (UUID, lowercase)
Request body

Geen

Response
data object Required

ID-only (UUID) FKs.

id string
title string
amount number
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
pipeline_id string
phase_id string
client_id string
expected_close_date string
created_at string
meta object Required

Examples

GET /v1/deals/{id}
curl -X GET "https://api.appficient.nl/v1/deals/{id}" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Deal bijwerken

PATCH /v1/deals/{id}
deals.write
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string Resource id (UUID, lowercase)
Request body
title string
client_id string
pipeline_id string
phase_id string
legacy_pipeline_id integer

Legacy integer input only; removed in v2.

legacy_phase_id integer

Legacy integer input only; removed in v2.

amount number
description string
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
expected_close_date string
Response
data object Required

ID-only (UUID) FKs.

id string
title string
amount number
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
pipeline_id string
phase_id string
client_id string
expected_close_date string
created_at string
meta object Required

Examples

PATCH /v1/deals/{id}
curl -X PATCH "https://api.appficient.nl/v1/deals/{id}" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "string",
    "client_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "pipeline_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "phase_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "legacy_pipeline_id": 0,
    "legacy_phase_id": 0,
    "amount": 0,
    "description": "string",
    "priority": "medium",
    "status": "open",
    "expected_close_date": "2026-07-01"
}'

Curl, Node en response staan rechts naast dit endpoint.

Deal verwijderen

DELETE /v1/deals/{id}
deals.read
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string Resource id (UUID, lowercase)
Request body

Geen

Response
data object Required

ID-only (UUID) FKs.

id string
title string
amount number
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
pipeline_id string
phase_id string
client_id string
expected_close_date string
created_at string
meta object Required

Examples

DELETE /v1/deals/{id}
curl -X DELETE "https://api.appficient.nl/v1/deals/{id}" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Deal verplaatsen

POST /v1/deals/{id}/move
deals.write

Prefer `phase_id` (legacy `phase_id` ok); `status` enum open|won|lost

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string Resource id (UUID, lowercase)
Headers
Naam Type Beschrijving
Idempotency-Key string Optional on POST only; cached 24h; replay returns X-Idempotent-Replay
Request body
phase_id string
legacy_phase_id integer

Legacy integer input only; removed in v2.

status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
Response
data object Required

ID-only (UUID) FKs.

id string
title string
amount number
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
pipeline_id string
phase_id string
client_id string
expected_close_date string
created_at string
meta object Required

Examples

POST /v1/deals/{id}/move
curl -X POST "https://api.appficient.nl/v1/deals/{id}/move" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{
    "phase_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "legacy_phase_id": 0,
    "status": "open"
}'

Curl, Node en response staan rechts naast dit endpoint.

Deal als gewonnen markeren

POST /v1/deals/{id}/win
deals.write
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string Resource id (UUID, lowercase)
Request body

Geen

Response
data object Required

ID-only (UUID) FKs.

id string
title string
amount number
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
pipeline_id string
phase_id string
client_id string
expected_close_date string
created_at string
meta object Required

Examples

POST /v1/deals/{id}/win
curl -X POST "https://api.appficient.nl/v1/deals/{id}/win" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Deal als verloren markeren

POST /v1/deals/{id}/lose
deals.write
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Path
Naam Type Beschrijving
id Required string Resource id (UUID, lowercase)
Request body

Geen

Response
data object Required

ID-only (UUID) FKs.

id string
title string
amount number
status string

Strict on `POST /v1/deals/{id}/move`. On create/update the API does not reject other strings; UI/domain uses these three (recommended).

Enum
open won lost
Example: open
priority string

Free string in API (default `medium` when empty). UI/domain uses low|medium|high (recommended).

Enum
low medium high
Example: medium
pipeline_id string
phase_id string
client_id string
expected_close_date string
created_at string
meta object Required

Examples

POST /v1/deals/{id}/lose
curl -X POST "https://api.appficient.nl/v1/deals/{id}/lose" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Dealbronnen ophalen

GET /v1/deal-sources
deals.read
Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Request body

Geen

Response
success boolean Required

true bij geslaagde call

Example: true
data object[]
name string
Example: Website
order integer
Example: 1

Examples

GET /v1/deal-sources
curl -X GET "https://api.appficient.nl/v1/deal-sources" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Pipelinefasen ophalen

GET /v1/phases
deals.read

Optioneel pipeline_guid

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Query
Naam Type Beschrijving
pipeline_id string Filter phases by pipeline id
Request body

Geen

Response
data array Required
id string
pipeline_id string
name string
order integer
meta object Required

Examples

GET /v1/phases
curl -X GET "https://api.appficient.nl/v1/phases" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.

Pipelines ophalen

GET /v1/pipelines
deals.read

Inclusief nested phases

Authorization: HTTP
name: httpBearer
type: http
scheme: bearer
Request body

Geen

Response
data array Required
id string
name string
active boolean
phases array
id string
name string
order integer
meta object Required

Examples

GET /v1/pipelines
curl -X GET "https://api.appficient.nl/v1/pipelines" \
  -H "Authorization: Bearer apf_xxxxxxxx" \
  -H "Accept: application/json"

Curl, Node en response staan rechts naast dit endpoint.