Duvo Ai Cases UI API

The Cases UI API from Duvo Ai — 1 operation(s) for cases ui.

Operations 1

POST /v2/queues/{queue_id}/cases/export Export Cases #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/duvo-ai:duvo-ai-cases-ui-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

duvo-ai-cases-ui-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Duvo Public Cases UI API
  description: 'Public API for programmatic access to Duvo. Authenticate with API keys created in the Duvo dashboard.


    ## Rate limits


    Requests are counted per API key. Every response advertises the quota with the IETF RateLimit fields, so a client can self-throttle without waiting for a rejection:


    - `RateLimit-Policy: "default";q=;w=` — the policy in force: `q` requests per `w` seconds.

    - `RateLimit: "default";r=;t=` — the live state: `r` requests left, quota resetting in `t` seconds.

    - Read the quota from the headers rather than hard-coding it; it differs per environment.

    - The same numbers are also sent as `ratelimit-limit`, `ratelimit-remaining` and `ratelimit-reset`.


    Once the quota is exhausted the API answers `429 Too Many Requests` with `Retry-After` set to the seconds to wait; honor it instead of retrying immediately.'
  version: 1.0.0
servers:
- url: https://api.duvo.ai
  description: Production server
tags:
- name: Cases UI
paths:
  /v2/queues/{queue_id}/cases/export:
    post:
      operationId: exportCases
      tags:
      - Cases UI
      description: 'Export a queue''s cases, respecting the same status, severity, failure source, approval, priority, label, date-range, json_data field, and free-text filters as the list view. Set awaiting_my_approval to export only the cases holding an unanswered approval row assigned to you; like the list view it resolves to the authenticated caller, so a credential with no user behind it is rejected rather than exporting an empty file. `format: "json"` (default) returns a re-importable JSON payload; `format: "csv"` returns a text/csv file with the columns id, title, status, priority, labels, created_at, updated_at, completed_at, postponed_to, data.'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                format:
                  default: json
                  type: string
                  enum:
                  - json
                  - csv
                filters:
                  default: {}
                  type: object
                  properties:
                    status:
                      type: array
                      items:
                        type: string
                        enum:
                        - all
                        - pending
                        - processing
                        - needs_input
                        - postponed
                        - needs_review
                        - resolved
                        - canceled
                        - claimed
                        - completed
                        - failed
                    issue_severity:
                      type: array
                      items:
                        type: string
                        enum:
                        - critical
                        - medium
                    failure_source:
                      description: 'Keep only failed Cases, by who failed them: `system` when Duvo could not finish the Case, `manual` when a person marked it failed.'
                      type: array
                      items:
                        type: string
                        enum:
                        - system
                        - manual
                    awaiting_my_approval:
                      type: boolean
                    priority:
                      type: array
                      items:
                        type: string
                        enum:
                        - none
                        - medium
                        - high
                    created_at_from:
                      type: string
                    created_at_to:
                      type: string
                    updated_at_from:
                      type: string
                    updated_at_to:
                      type: string
                    completed_at_from:
                      description: Keep Cases that reached an outcome at or after this time (inclusive). An ISO timestamp or a lookback such as `7d` or `12h`.
                      type: string
                    completed_at_to:
                      description: Keep Cases that reached an outcome before this time (exclusive). An ISO timestamp or a lookback such as `7d` or `12h`.
                      type: string
                    labels:
                      type: object
                      additionalProperties:
                        type: array
                        items:
                          type: string
                    json_data:
                      maxItems: 12
                      type: array
                      items:
                        type: object
                        properties:
                          path:
                            type: string
                            pattern: ^\$(\.[A-Za-z_][A-Za-z0-9_]{0,63})+$
                          operator:
                            type: string
                            enum:
                            - equals
                            - notEquals
                            - in
                            - notIn
                            - gt
                            - gte
                            - lt
                            - lte
                            - contains
                            - isSet
                            - isNotSet
                          value:
                            anyOf:
                            - anyOf:
                              - type: string
                              - type: number
                              - type: boolean
                            - minItems: 1
                              maxItems: 100
                              type: array
                              items:
                                anyOf:
                                - type: string
                                - type: number
                                - type: boolean
                        required:
                        - path
                        - operator
                        additionalProperties: false
                search:
                  type: string
                sort_by:
                  default: created_at
                  type: string
                  enum:
                  - created_at
                  - updated_at
                  - postponed_to
                sort_order:
                  default: asc
                  type: string
                  enum:
                  - asc
                  - desc
      parameters:
      - schema:
          type: string
          format: uuid
        in: path
        name: queue_id
        required: true
        description: The queue's unique identifier
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                - type: object
                  properties:
                    version:
                      type: number
                    queue_name:
                      type: string
                    exported_at:
                      type: string
                    cases:
                      type: array
                      items:
                        type: object
                        properties:
                          title:
                            type: string
                          data:
                            type: string
                          priority:
                            type: string
                            enum:
                            - none
                            - medium
                            - high
                        required:
                        - title
                        additionalProperties: false
                  required:
                  - version
                  - queue_name
                  - exported_at
                  - cases
                  additionalProperties: false
                - type: string
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
                additionalProperties: false
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
                additionalProperties: false
        '404':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: string
                required:
                - error
                additionalProperties: false
      summary: Export Cases
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: API key authentication. Get your API key from the Duvo dashboard.