Webhooks

Webhooks

Trigger AppPilot-flows vanuit je integratie met een eventnaam, in plaats van zelf te pollen.

Zo werkt het

De publieke External API biedt POST /v1/webhooks/trigger (scope webhooks.write). Je stuurt een eventnaam; Appficient matcht die op AppPilot-triggers (of custom keys) en start de bijbehorende runs.

Voor endpointdetails zie ook de referentie Webhooks API.

bash
curl -sS -X POST https://api.appficient.nl/v1/webhooks/trigger \
  -H "Authorization: Bearer apf_jouw_key_hier" \
  -H "Content-Type: application/json" \
  -d '{
    "event": "invoice.paid",
    "entity_type": "invoice",
    "entity_id": 522,
    "data": { "guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890" }
  }'

Request en response

Request body (verplicht: event; optioneel: data, entity_type, entity_id):

json
{
  "event": "invoice.paid",
  "entity_type": "invoice",
  "entity_id": 522,
  "data": {
    "guid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
}

Response:

json
{
  "data": {
    "event": "invoice.paid",
    "matched": 1,
    "runs": [
      {
        "flow_guid": "c9d0e1f2-a3b4-5678-9012-789012345678",
        "run_guid": "d0e1f2a3-b4c5-6789-0123-890123456789",
        "status": "queued"
      }
    ]
  },
  "meta": {}
}

Events

Ingebouwde eventnamen. Extra custom keys worden ook geaccepteerd.

EventWanneer
ticket.inbound_messageInbound ticketbericht ontvangen
ticket.createdNieuw ticket aangemaakt
ticket.status_changedTicketstatus gewijzigd
ticket.closedTicket gesloten
ticket.messageTicketbericht geplaatst
ticket.staleTicket te lang zonder opvolging
quote.fase_changedOfferte van fase gewisseld
quote.viewedOfferte bekeken
quote.acceptedOfferte geaccepteerd
quote.createdOfferte aangemaakt
quote.converted_to_projectOfferte omgezet naar project
quote.silentOfferte zonder reactie
deal.wonDeal gewonnen
deal.lostDeal verloren
deal.phase_changedDeal van fase gewisseld
deal.quote_acceptedDeal-offerte geaccepteerd
deal.createdDeal aangemaakt
deal.stalledDeal vastgelopen
deal.phase_idleDeal te lang in dezelfde fase
deal.close_dueDeal-sluitdatum nabij
deal.no_followupDeal zonder follow-up
sales.document_sentVerkoopdocument verstuurd
invoice.createdFactuur aangemaakt
invoice.creditedFactuur gecrediteerd
invoice.paidFactuur betaald
invoice.lateFactuur te laat
project.createdProject aangemaakt
project.completedProject afgerond
project.status_changedProjectstatus gewijzigd
project.phase_completedProjectfase afgerond
workorder.completedWerkbon afgerond
customer.createdNieuwe klant aangemaakt
customer.updatedKlant bijgewerkt
customer.first_invoice_paidEerste factuur van een klant betaald
customer.inactiveKlant inactief
customer.no_followupKlant zonder follow-up
customer.payment_overdueBetaling van een klant vervallen
subscription.expiringAbonnement verloopt
mail.unansweredMail zonder antwoord
document.draftDocument als concept
work.recurringTerugkerend werk
planning.scheduledPlanning ingepland
planning.rescheduledPlanning verzet
planning.updatedPlanning bijgewerkt
planning.unscheduledPlanning uit de agenda gehaald
planning.deletedPlanning verwijderd

Betrouwbaarheid

  • Rate limit op deze route: 30/minuut.
  • Verwerk runs idempotent aan jouw kant als je dezelfde trigger opnieuw stuurt.