---
title: "Execute the configured approval policy against given facts"
method: POST
path: "/v1/web/policy/create-vendor-approval/execute"
tags: ["Policy"]
---

# Execute the configured approval policy against given facts

`POST /v1/web/policy/create-vendor-approval/execute`

## Request body

- object
  - `userGroupIds` string[], required
  - `userRoleIds` string[], required
  - `source` union, required
    - 'bill'
    - 'expense'
    - 'manual'

## Response `200`

Default Response

- object
  - `matchedRule` object, nullable, required
    - `conditions` object, required — [Sift](https://github.com/crcn/sift.js) query for corresponding facts
    - `outcome` union, required
      - object
        - `status` union, required
          - 'approved'
          - 'declined'
      - object
        - `status` 'requiresApproval', required
        - `approvers` object, required
          - `userIds` string[]
          - `userGroupIds` string[]
          - `userRoleIds` string[]
          - `userTypes` string[]

## Other responses

- `400` — Default Response
- `401` — The access to this resource has been denied
- `403` — The access to this resource is forbidden
- `404` — The resource was not found
- `default` — Catch-all error response for any unexpected internal errors

---

[API](https://skmtc.net/funneldash/apis/surface-web-api.md) · [All operations](https://skmtc.net/funneldash/apis/surface-web-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/funneldash/surface-web-api/revisions/ac700d65f443/schema)
