canonical: https://jentic.com/apis/kissflow.com/kissflow

# KiSSFLOW REST API

Jentic publishes the only available OpenAPI specification for KiSSFLOW REST API, keeping it validated and agent-ready. Kissflow is a process and workflow platform, and its REST API exposes the operations that drive a request through a process: create a draft, submit it, approve, reject, complete an input step, seek clarification, and read progress. The 13-endpoint surface is shaped around a single process_name path parameter so the same calls reach any process in the account, with authentication by an api_key header and an optional email_id header for acting on behalf of another user.

## For AI agents

Submit, approve, reject, and inspect Kissflow process requests across any process configured in a Kissflow account.

## Scope

Does not author processes, manage user accounts, or build forms - use for driving requests through existing Kissflow processes only.

## Capabilities

- Create and immediately submit a request inside a named Kissflow process
- Approve, reject, or complete an input step on an in-flight request
- Seek clarification on a submitted request before approving
- List paginated requests from a process and read full request details
- Read the workflow progress of a request to see the current step
- Verify Kissflow API connectivity and act on behalf of another user with the email_id header

## Use cases

### Drive process requests from a chat surface

Operations teams can let employees submit standard requests like leave or travel through chat or a custom form, with the bot calling POST /{process_name}/submit to create and submit the request in a single call. The same surface lets approvers approve or reject from chat via POST /{process_name}/{request_id}/approve.

Example prompt: POST a payload to /{process_name}/submit with the form fields and surface the returned request_id back to the user.

### Approval routing through an existing tool

When approvers prefer their existing inbox or task tool, an integration can read pending requests with GET /{process_name}/list/p{page}/{size} and post the action with POST /{process_name}/{request_id}/approve or .../reject. This keeps Kissflow as the system of record while the approval UX lives elsewhere.

Example prompt: List pending requests, route each one to the approver's tool, and POST the approve or reject endpoint with their decision.

### Process progress dashboard

A status dashboard can poll GET /{process_name}/{request_id}/progress for in-flight requests and combine it with GET /{process_name}/{request_id}/read to show field values and the current step. The combination is enough to render a complete request card without screen-scraping Kissflow.

Example prompt: Call GET /{process_name}/{request_id}/progress for each open request and write the current step to the dashboard.

### Agent integration via Jentic

An operations agent can use Jentic to discover the Kissflow approve and submit operations, load their schemas, and execute them with a vaulted api_key. The agent never sees the raw key and can act on behalf of another user by passing the email_id header through Jentic.

Example prompt: Search Jentic for 'submit a Kissflow process request', load POST /{process_name}/submit, and execute it with the process name and form payload.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/process` | List processes on the account |
| POST | `/{process_name}/submit` | Create and submit a request |
| POST | `/{process_name}/{request_id}/approve` | Approve a request |
| POST | `/{process_name}/{request_id}/reject` | Reject a request |
| POST | `/{process_name}/{request_id}/done` | Complete an input step |
| GET | `/{process_name}/{request_id}/read` | Read request details |
| GET | `/{process_name}/{request_id}/progress` | Read workflow progress |
| GET | `/{process_name}/list/p{page}/{size}` | List paginated requests |

## Key resources

- **Process** — List the processes available on the account
- **Request lifecycle** — Create draft, submit, update, delete, approve, reject, complete, and clarify requests
- **Reporting** — List paginated requests and read individual request details and progress
- **Connectivity** — Verify API reachability before running workflows

## Why Jentic

- **Setup:** Wiring KiSSFLOW by hand means learning its api_key header auth and building the per-account {account_id}.appspot.com host yourself. Through Jentic you install once, import KiSSFLOW from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** KiSSFLOW puts the process name in the URL path (/{process_name}/submit), so a rule can pin your agent to one process: it can submit and read requests for that process and nothing else. You choose the operations it may call, so state changes like approve, reject, or done are not included unless you add them.
- **Credential handling:** Your KiSSFLOW API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'submit a request to a Kissflow process' or 'check request progress', and Jentic returns the matching Kissflow operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Tallyfy API** — Tallyfy is a workflow platform with a similar request and approval model
- **Process Street API** — Process Street drives checklist-style procedures rather than form-based workflows
- **SmartSuite API** — SmartSuite is a work-management platform that overlaps with Kissflow's process layer
- **Slack API** — Slack is the surface where Kissflow approvals are most often actioned

## FAQ

### Why is there no official OpenAPI spec for KiSSFLOW REST API?

Kissflow does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call KiSSFLOW REST API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the KiSSFLOW REST API use?

Kissflow authenticates with an api_key header. An optional email_id header lets the caller act on behalf of another user. Jentic stores the api_key in the vault and supports passing through a chosen email_id at execution time.

### Can I approve a request with the KiSSFLOW REST API?

Yes. POST to /{process_name}/{request_id}/approve. Reject with the parallel /reject endpoint and complete an input step with /done. Each call uses the same path shape and authenticates with the api_key header.

### What are the rate limits for the KiSSFLOW REST API?

The OpenAPI specification does not declare explicit rate limits across the 13 endpoints. Use GET /{process_name}/list/p{page}/{size} with a sensible page size for reporting rather than re-pulling the full list, and back off if a 429 is returned.

### How do I submit a Kissflow request with the KiSSFLOW REST API through Jentic?

Run pip install jentic, search Jentic for 'submit a Kissflow process request', load the POST /{process_name}/submit operation, and execute it with the process name and form payload. Jentic supplies the api_key header from the vault.

### Can I limit what my agent is allowed to do with the Kissflow REST API?

Yes. Because you run Jentic One yourself, your own rules decide which Kissflow operations and credentials the agent may use. Since Kissflow puts the process name in the URL path, such as /{process_name}/submit, you can pin the agent to a single process and grant only read and submit calls for it. State-changing operations like approve, reject, and done stay off unless you explicitly add them, so the agent can never take an action you did not allow.
