Wufoo · Capability

Wufoo REST API — Reports

Reports surface of the Wufoo REST API v3. 5 operations spanning report listings, single-report lookup, and report-scoped entries, fields, and widgets. Lead operation: List All Reports. Self-contained Naftiko capability covering one Wufoo business surface.

Wufoo REST API — Reports is a Naftiko capability published by Wufoo, one of 8 capabilities the APIs.io network indexes for this provider. It bundles 5 operations across the GET method rooted at /v1/reports.

The capability includes 5 read-only operations. Lead operation: List all reports. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Wufoo, Reports, and Analytics.

Run with Naftiko WufooReportsAnalytics

What You Can Do

GET
Listreports — List all reports.
/v1/reports
GET
Getreport — Return a single report.
/v1/reports/{identifier}
GET
Listreportwidgets — List widgets.
/v1/reports/{identifier}/widgets
GET
Listreportentries — List report entries.
/v1/reports/{identifier}/entries
GET
Listreportfields — List report fields.
/v1/reports/{identifier}/fields

MCP Tools

list-reports

List all reports.

read-only idempotent
get-report

Return a single report.

read-only idempotent
list-report-widgets

List widgets in a report.

read-only idempotent
list-report-entries

List entries filtered by report.

read-only idempotent
list-report-fields

List report field structure.

read-only idempotent

Capability Spec

rest-v3-reports.yaml Raw ↑
naftiko: "1.0.0-alpha2"

info:
  label: "Wufoo REST API — Reports"
  description: >-
    Reports surface of the Wufoo REST API v3. 5 operations spanning report
    listings, single-report lookup, and report-scoped entries, fields, and
    widgets. Lead operation: List All Reports. Self-contained Naftiko capability
    covering one Wufoo business surface.
  tags:
    - Wufoo
    - Reports
    - Analytics
  created: "2026-05-23"
  modified: "2026-05-23"

binds:
  - namespace: env
    keys:
      WUFOO_SUBDOMAIN: WUFOO_SUBDOMAIN
      WUFOO_API_KEY: WUFOO_API_KEY

capability:

  consumes:
    - type: http
      namespace: "rest-v3-reports"
      baseUri: "https://{{env.WUFOO_SUBDOMAIN}}.wufoo.com/api/v3"
      description: "Wufoo REST API — Reports business capability. Self-contained, no shared references."
      authentication:
        type: basic
        username: "{{env.WUFOO_API_KEY}}"
        password: "footastic"
      resources:
        - name: "reports"
          path: "/reports.{format}"
          operations:
            - name: "listReports"
              method: GET
              description: "List all reports."
              inputParameters:
                - { name: format, in: path, type: string, required: true, description: "json or xml" }
                - { name: pretty, in: query, type: boolean, required: false, description: "Pretty-print." }
              outputRawFormat: json
              outputParameters: [{ name: result, type: object, value: "$." }]
        - name: "report"
          path: "/reports/{identifier}.{format}"
          operations:
            - name: "getReport"
              method: GET
              description: "Return a single report."
              inputParameters:
                - { name: identifier, in: path, type: string, required: true, description: "Report hash or title." }
                - { name: format, in: path, type: string, required: true, description: "json or xml" }
                - { name: pretty, in: query, type: boolean, required: false, description: "Pretty-print." }
              outputRawFormat: json
              outputParameters: [{ name: result, type: object, value: "$." }]
        - name: "report-widgets"
          path: "/reports/{identifier}/widgets.{format}"
          operations:
            - name: "listReportWidgets"
              method: GET
              description: "List widgets in the report."
              inputParameters:
                - { name: identifier, in: path, type: string, required: true, description: "Report hash or title." }
                - { name: format, in: path, type: string, required: true, description: "json or xml" }
                - { name: pretty, in: query, type: boolean, required: false, description: "Pretty-print." }
              outputRawFormat: json
              outputParameters: [{ name: result, type: object, value: "$." }]
        - name: "report-entries"
          path: "/reports/{identifier}/entries.{format}"
          operations:
            - name: "listReportEntries"
              method: GET
              description: "List entries filtered by the report."
              inputParameters:
                - { name: identifier, in: path, type: string, required: true, description: "Report hash or title." }
                - { name: format, in: path, type: string, required: true, description: "json or xml" }
                - { name: system, in: query, type: boolean, required: false, description: "Include system fields." }
                - { name: pretty, in: query, type: boolean, required: false, description: "Pretty-print." }
              outputRawFormat: json
              outputParameters: [{ name: result, type: object, value: "$." }]
        - name: "report-fields"
          path: "/reports/{identifier}/fields.{format}"
          operations:
            - name: "listReportFields"
              method: GET
              description: "List field structure for the report."
              inputParameters:
                - { name: identifier, in: path, type: string, required: true, description: "Report hash or title." }
                - { name: format, in: path, type: string, required: true, description: "json or xml" }
                - { name: system, in: query, type: boolean, required: false, description: "Include system fields." }
                - { name: pretty, in: query, type: boolean, required: false, description: "Pretty-print." }
              outputRawFormat: json
              outputParameters: [{ name: result, type: object, value: "$." }]

  exposes:
    - type: rest
      namespace: "rest-v3-reports-rest"
      port: 8080
      description: "REST adapter for Wufoo REST API — Reports."
      resources:
        - path: "/v1/reports"
          name: "reports"
          description: "Reports collection."
          operations:
            - method: GET
              name: "listReports"
              description: "List all reports."
              call: "rest-v3-reports.listReports"
              with: { format: "rest.format", pretty: "rest.pretty" }
              outputParameters: [{ type: object, mapping: "$." }]
        - path: "/v1/reports/{identifier}"
          name: "report"
          description: "Single report."
          operations:
            - method: GET
              name: "getReport"
              description: "Return a single report."
              call: "rest-v3-reports.getReport"
              with: { identifier: "rest.identifier", format: "rest.format", pretty: "rest.pretty" }
              outputParameters: [{ type: object, mapping: "$." }]
        - path: "/v1/reports/{identifier}/widgets"
          name: "report-widgets"
          description: "Widgets in a report."
          operations:
            - method: GET
              name: "listReportWidgets"
              description: "List widgets."
              call: "rest-v3-reports.listReportWidgets"
              with: { identifier: "rest.identifier", format: "rest.format", pretty: "rest.pretty" }
              outputParameters: [{ type: object, mapping: "$." }]
        - path: "/v1/reports/{identifier}/entries"
          name: "report-entries"
          description: "Entries filtered by report."
          operations:
            - method: GET
              name: "listReportEntries"
              description: "List report entries."
              call: "rest-v3-reports.listReportEntries"
              with: { identifier: "rest.identifier", format: "rest.format", system: "rest.system", pretty: "rest.pretty" }
              outputParameters: [{ type: object, mapping: "$." }]
        - path: "/v1/reports/{identifier}/fields"
          name: "report-fields"
          description: "Report field structure."
          operations:
            - method: GET
              name: "listReportFields"
              description: "List report fields."
              call: "rest-v3-reports.listReportFields"
              with: { identifier: "rest.identifier", format: "rest.format", system: "rest.system", pretty: "rest.pretty" }
              outputParameters: [{ type: object, mapping: "$." }]

    - type: mcp
      namespace: "rest-v3-reports-mcp"
      port: 9090
      transport: http
      description: "MCP adapter for Wufoo REST API — Reports."
      tools:
        - name: "list-reports"
          description: "List all reports."
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: "rest-v3-reports.listReports"
          with: { format: "tools.format", pretty: "tools.pretty" }
          outputParameters: [{ type: object, mapping: "$." }]
        - name: "get-report"
          description: "Return a single report."
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: "rest-v3-reports.getReport"
          with: { identifier: "tools.identifier", format: "tools.format", pretty: "tools.pretty" }
          outputParameters: [{ type: object, mapping: "$." }]
        - name: "list-report-widgets"
          description: "List widgets in a report."
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: "rest-v3-reports.listReportWidgets"
          with: { identifier: "tools.identifier", format: "tools.format", pretty: "tools.pretty" }
          outputParameters: [{ type: object, mapping: "$." }]
        - name: "list-report-entries"
          description: "List entries filtered by report."
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: "rest-v3-reports.listReportEntries"
          with: { identifier: "tools.identifier", format: "tools.format", system: "tools.system", pretty: "tools.pretty" }
          outputParameters: [{ type: object, mapping: "$." }]
        - name: "list-report-fields"
          description: "List report field structure."
          hints: { readOnly: true, destructive: false, idempotent: true }
          call: "rest-v3-reports.listReportFields"
          with: { identifier: "tools.identifier", format: "tools.format", system: "tools.system", pretty: "tools.pretty" }
          outputParameters: [{ type: object, mapping: "$." }]