PostHog · Capability

PostHog API — surveys

PostHog API — surveys. 36 operations. Lead operation: surveys. Self-contained Naftiko capability covering one Posthog business surface.

Run with Naftiko Posthogsurveys

What You Can Do

GET
Surveyslist — surveyslist
/v1/api/projects/{project-id}/surveys
GET
Surveyslist — surveyslist
/v1/api/projects/{project-id}/surveys
POST
Surveyscreate — surveyscreate
/v1/api/projects/{project-id}/surveys
POST
Surveyscreate — surveyscreate
/v1/api/projects/{project-id}/surveys
GET
Surveysallactivityretrieve — surveysallactivityretrieve
/v1/api/projects/{project-id}/surveys/activity
GET
Surveysallactivityretrieve — surveysallactivityretrieve
/v1/api/projects/{project-id}/surveys/activity
GET
Surveysresponsescountretrieve — Get response counts for all surveys.
/v1/api/projects/{project-id}/surveys/responses-count
GET
Surveysresponsescountretrieve — Get response counts for all surveys.
/v1/api/projects/{project-id}/surveys/responses-count
GET
Surveysglobalstatsretrieve — Get aggregated response statistics across all surveys.
/v1/api/projects/{project-id}/surveys/stats
GET
Surveysglobalstatsretrieve — Get aggregated response statistics across all surveys.
/v1/api/projects/{project-id}/surveys/stats
GET
Surveysretrieve — surveysretrieve
/v1/api/projects/{project-id}/surveys/{id}
GET
Surveysretrieve — surveysretrieve
/v1/api/projects/{project-id}/surveys/{id}
PUT
Surveysupdate — surveysupdate
/v1/api/projects/{project-id}/surveys/{id}
PUT
Surveysupdate — surveysupdate
/v1/api/projects/{project-id}/surveys/{id}
PATCH
Surveyspartialupdate — surveyspartialupdate
/v1/api/projects/{project-id}/surveys/{id}
PATCH
Surveyspartialupdate — surveyspartialupdate
/v1/api/projects/{project-id}/surveys/{id}
DELETE
Surveysdestroy — surveysdestroy
/v1/api/projects/{project-id}/surveys/{id}
DELETE
Surveysdestroy — surveysdestroy
/v1/api/projects/{project-id}/surveys/{id}
GET
Surveysactivityretrieve — surveysactivityretrieve
/v1/api/projects/{project-id}/surveys/{id}/activity
GET
Surveysactivityretrieve — surveysactivityretrieve
/v1/api/projects/{project-id}/surveys/{id}/activity
GET
Surveysarchivedresponseuuidsretrieve — Get list of archived response UUIDs for HogQL filtering.
/v1/api/projects/{project-id}/surveys/{id}/archived-response-uuids
GET
Surveysarchivedresponseuuidsretrieve — Get list of archived response UUIDs for HogQL filtering.
/v1/api/projects/{project-id}/surveys/{id}/archived-response-uuids
POST
Surveysduplicatetoprojectscreate — Duplicate a survey to multiple projects in a single transaction.
/v1/api/projects/{project-id}/surveys/{id}/duplicate-to-projects
POST
Surveysduplicatetoprojectscreate — Duplicate a survey to multiple projects in a single transaction.
/v1/api/projects/{project-id}/surveys/{id}/duplicate-to-projects
POST
Surveysgeneratetranslationscreate — surveysgeneratetranslationscreate
/v1/api/projects/{project-id}/surveys/{id}/generate-translations
POST
Surveysgeneratetranslationscreate — surveysgeneratetranslationscreate
/v1/api/projects/{project-id}/surveys/{id}/generate-translations
POST
Surveysresponsesarchivecreate — Archive a single survey response.
/v1/api/projects/{project-id}/surveys/{id}/responses/{response-uuid}/archive
POST
Surveysresponsesarchivecreate — Archive a single survey response.
/v1/api/projects/{project-id}/surveys/{id}/responses/{response-uuid}/archive
POST
Surveysresponsesunarchivecreate — Unarchive a single survey response.
/v1/api/projects/{project-id}/surveys/{id}/responses/{response-uuid}/unarchive
POST
Surveysresponsesunarchivecreate — Unarchive a single survey response.
/v1/api/projects/{project-id}/surveys/{id}/responses/{response-uuid}/unarchive
GET
Surveysstatsretrieve — Get survey response statistics for a specific survey.
/v1/api/projects/{project-id}/surveys/{id}/stats
GET
Surveysstatsretrieve — Get survey response statistics for a specific survey.
/v1/api/projects/{project-id}/surveys/{id}/stats
POST
Surveyssummarizeresponsescreate — surveyssummarizeresponsescreate
/v1/api/projects/{project-id}/surveys/{id}/summarize-responses
POST
Surveyssummarizeresponsescreate — surveyssummarizeresponsescreate
/v1/api/projects/{project-id}/surveys/{id}/summarize-responses
POST
Surveyssummaryheadlinecreate — surveyssummaryheadlinecreate
/v1/api/projects/{project-id}/surveys/{id}/summary-headline
POST
Surveyssummaryheadlinecreate — surveyssummaryheadlinecreate
/v1/api/projects/{project-id}/surveys/{id}/summary-headline

MCP Tools

surveyslist

surveyslist

read-only idempotent
surveyslist-2

surveyslist

read-only idempotent
surveyscreate

surveyscreate

surveyscreate-2

surveyscreate

surveysallactivityretrieve

surveysallactivityretrieve

read-only idempotent
surveysallactivityretrieve-2

surveysallactivityretrieve

read-only idempotent
get-response-counts-all-surveys

Get response counts for all surveys.

read-only idempotent
get-response-counts-all-surveys-2

Get response counts for all surveys.

read-only idempotent
get-aggregated-response-statistics-across

Get aggregated response statistics across all surveys.

read-only idempotent
get-aggregated-response-statistics-across-2

Get aggregated response statistics across all surveys.

read-only idempotent
surveysretrieve

surveysretrieve

read-only idempotent
surveysretrieve-2

surveysretrieve

read-only idempotent
surveysupdate

surveysupdate

idempotent
surveysupdate-2

surveysupdate

idempotent
surveyspartialupdate

surveyspartialupdate

idempotent
surveyspartialupdate-2

surveyspartialupdate

idempotent
surveysdestroy

surveysdestroy

idempotent
surveysdestroy-2

surveysdestroy

idempotent
surveysactivityretrieve

surveysactivityretrieve

read-only idempotent
surveysactivityretrieve-2

surveysactivityretrieve

read-only idempotent
get-list-archived-response-uuids

Get list of archived response UUIDs for HogQL filtering.

read-only idempotent
get-list-archived-response-uuids-2

Get list of archived response UUIDs for HogQL filtering.

read-only idempotent
duplicate-survey-multiple-projects-single

Duplicate a survey to multiple projects in a single transaction.

duplicate-survey-multiple-projects-single-2

Duplicate a survey to multiple projects in a single transaction.

surveysgeneratetranslationscreate

surveysgeneratetranslationscreate

surveysgeneratetranslationscreate-2

surveysgeneratetranslationscreate

archive-single-survey-response

Archive a single survey response.

archive-single-survey-response-2

Archive a single survey response.

unarchive-single-survey-response

Unarchive a single survey response.

unarchive-single-survey-response-2

Unarchive a single survey response.

get-survey-response-statistics-specific

Get survey response statistics for a specific survey.

read-only idempotent
get-survey-response-statistics-specific-2

Get survey response statistics for a specific survey.

read-only idempotent
surveyssummarizeresponsescreate

surveyssummarizeresponsescreate

surveyssummarizeresponsescreate-2

surveyssummarizeresponsescreate

surveyssummaryheadlinecreate

surveyssummaryheadlinecreate

surveyssummaryheadlinecreate-2

surveyssummaryheadlinecreate

Capability Spec

posthog-surveys.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: PostHog API — surveys
  description: 'PostHog API — surveys. 36 operations. Lead operation: surveys. Self-contained Naftiko capability covering
    one Posthog business surface.'
  tags:
  - Posthog
  - surveys
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    POSTHOG_API_KEY: POSTHOG_API_KEY
capability:
  consumes:
  - type: http
    namespace: posthog-surveys
    baseUri: ''
    description: PostHog API — surveys business capability. Self-contained, no shared references.
    resources:
    - name: api-projects-project_id-surveys
      path: /api/projects/{project_id}/surveys/
      operations:
      - name: surveyslist
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: archived
          in: query
          type: boolean
        - name: limit
          in: query
          type: integer
          description: Number of results to return per page.
        - name: offset
          in: query
          type: integer
          description: The initial index from which to return the results.
        - name: search
          in: query
          type: string
          description: A search term.
      - name: surveyslist
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: archived
          in: query
          type: boolean
        - name: limit
          in: query
          type: integer
          description: Number of results to return per page.
        - name: offset
          in: query
          type: integer
          description: The initial index from which to return the results.
        - name: search
          in: query
          type: string
          description: A search term.
      - name: surveyscreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveyscreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-surveys-activity
      path: /api/projects/{project_id}/surveys/activity/
      operations:
      - name: surveysallactivityretrieve
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: surveysallactivityretrieve
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-projects-project_id-surveys-responses_count
      path: /api/projects/{project_id}/surveys/responses_count/
      operations:
      - name: surveysresponsescountretrieve
        method: GET
        description: Get response counts for all surveys.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: surveysresponsescountretrieve
        method: GET
        description: Get response counts for all surveys.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-projects-project_id-surveys-stats
      path: /api/projects/{project_id}/surveys/stats/
      operations:
      - name: surveysglobalstatsretrieve
        method: GET
        description: Get aggregated response statistics across all surveys.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: date_from
          in: query
          type: string
          description: Optional ISO timestamp for start date (e.g. 2024-01-01T00:00:00Z)
        - name: date_to
          in: query
          type: string
          description: Optional ISO timestamp for end date (e.g. 2024-01-31T23:59:59Z)
      - name: surveysglobalstatsretrieve
        method: GET
        description: Get aggregated response statistics across all surveys.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: date_from
          in: query
          type: string
          description: Optional ISO timestamp for start date (e.g. 2024-01-01T00:00:00Z)
        - name: date_to
          in: query
          type: string
          description: Optional ISO timestamp for end date (e.g. 2024-01-31T23:59:59Z)
    - name: api-projects-project_id-surveys-id
      path: /api/projects/{project_id}/surveys/{id}/
      operations:
      - name: surveysretrieve
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
      - name: surveysretrieve
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
      - name: surveysupdate
        method: PUT
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveysupdate
        method: PUT
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveyspartialupdate
        method: PATCH
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: surveyspartialupdate
        method: PATCH
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: surveysdestroy
        method: DELETE
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
      - name: surveysdestroy
        method: DELETE
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
    - name: api-projects-project_id-surveys-id-activity
      path: /api/projects/{project_id}/surveys/{id}/activity/
      operations:
      - name: surveysactivityretrieve
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
      - name: surveysactivityretrieve
        method: GET
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
    - name: api-projects-project_id-surveys-id-archived-response-uuids
      path: /api/projects/{project_id}/surveys/{id}/archived-response-uuids/
      operations:
      - name: surveysarchivedresponseuuidsretrieve
        method: GET
        description: Get list of archived response UUIDs for HogQL filtering.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
      - name: surveysarchivedresponseuuidsretrieve
        method: GET
        description: Get list of archived response UUIDs for HogQL filtering.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
    - name: api-projects-project_id-surveys-id-duplicate_to_projects
      path: /api/projects/{project_id}/surveys/{id}/duplicate_to_projects/
      operations:
      - name: surveysduplicatetoprojectscreate
        method: POST
        description: Duplicate a survey to multiple projects in a single transaction.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveysduplicatetoprojectscreate
        method: POST
        description: Duplicate a survey to multiple projects in a single transaction.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-surveys-id-generate_translations
      path: /api/projects/{project_id}/surveys/{id}/generate_translations/
      operations:
      - name: surveysgeneratetranslationscreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveysgeneratetranslationscreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-surveys-id-responses-response_uuid-archive
      path: /api/projects/{project_id}/surveys/{id}/responses/{response_uuid}/archive/
      operations:
      - name: surveysresponsesarchivecreate
        method: POST
        description: Archive a single survey response.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: response_uuid
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveysresponsesarchivecreate
        method: POST
        description: Archive a single survey response.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: response_uuid
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-surveys-id-responses-response_uuid-unarchive
      path: /api/projects/{project_id}/surveys/{id}/responses/{response_uuid}/unarchive/
      operations:
      - name: surveysresponsesunarchivecreate
        method: POST
        description: Unarchive a single survey response.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: response_uuid
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveysresponsesunarchivecreate
        method: POST
        description: Unarchive a single survey response.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: response_uuid
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-surveys-id-stats
      path: /api/projects/{project_id}/surveys/{id}/stats/
      operations:
      - name: surveysstatsretrieve
        method: GET
        description: Get survey response statistics for a specific survey.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: date_from
          in: query
          type: string
          description: Optional ISO timestamp for start date (e.g. 2024-01-01T00:00:00Z)
        - name: date_to
          in: query
          type: string
          description: Optional ISO timestamp for end date (e.g. 2024-01-31T23:59:59Z)
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
      - name: surveysstatsretrieve
        method: GET
        description: Get survey response statistics for a specific survey.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: date_from
          in: query
          type: string
          description: Optional ISO timestamp for start date (e.g. 2024-01-01T00:00:00Z)
        - name: date_to
          in: query
          type: string
          description: Optional ISO timestamp for end date (e.g. 2024-01-31T23:59:59Z)
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
    - name: api-projects-project_id-surveys-id-summarize_responses
      path: /api/projects/{project_id}/surveys/{id}/summarize_responses/
      operations:
      - name: surveyssummarizeresponsescreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveyssummarizeresponsescreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-surveys-id-summary_headline
      path: /api/projects/{project_id}/surveys/{id}/summary_headline/
      operations:
      - name: surveyssummaryheadlinecreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: surveyssummaryheadlinecreate
        method: POST
        description: ''
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this survey.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: bearer
      token: '{{env.POSTHOG_API_KEY}}'
  exposes:
  - type: rest
    namespace: posthog-surveys-rest
    port: 8080
    description: REST adapter for PostHog API — surveys. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/api/projects/{project-id}/surveys
      name: api-projects-project-id-surveys
      description: REST surface for api-projects-project_id-surveys.
      operations:
      - method: GET
        name: surveyslist
        description: surveyslist
        call: posthog-surveys.surveyslist
        with:
          archived: rest.archived
          limit: rest.limit
          offset: rest.offset
          search: rest.search
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveyslist
        description: surveyslist
        call: posthog-surveys.surveyslist
        with:
          archived: rest.archived
          limit: rest.limit
          offset: rest.offset
          search: rest.search
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: surveyscreate
        description: surveyscreate
        call: posthog-surveys.surveyscreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: surveyscreate
        description: surveyscreate
        call: posthog-surveys.surveyscreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/activity
      name: api-projects-project-id-surveys-activity
      description: REST surface for api-projects-project_id-surveys-activity.
      operations:
      - method: GET
        name: surveysallactivityretrieve
        description: surveysallactivityretrieve
        call: posthog-surveys.surveysallactivityretrieve
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysallactivityretrieve
        description: surveysallactivityretrieve
        call: posthog-surveys.surveysallactivityretrieve
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/responses-count
      name: api-projects-project-id-surveys-responses-count
      description: REST surface for api-projects-project_id-surveys-responses_count.
      operations:
      - method: GET
        name: surveysresponsescountretrieve
        description: Get response counts for all surveys.
        call: posthog-surveys.surveysresponsescountretrieve
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysresponsescountretrieve
        description: Get response counts for all surveys.
        call: posthog-surveys.surveysresponsescountretrieve
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/stats
      name: api-projects-project-id-surveys-stats
      description: REST surface for api-projects-project_id-surveys-stats.
      operations:
      - method: GET
        name: surveysglobalstatsretrieve
        description: Get aggregated response statistics across all surveys.
        call: posthog-surveys.surveysglobalstatsretrieve
        with:
          date_from: rest.date_from
          date_to: rest.date_to
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysglobalstatsretrieve
        description: Get aggregated response statistics across all surveys.
        call: posthog-surveys.surveysglobalstatsretrieve
        with:
          date_from: rest.date_from
          date_to: rest.date_to
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}
      name: api-projects-project-id-surveys-id
      description: REST surface for api-projects-project_id-surveys-id.
      operations:
      - method: GET
        name: surveysretrieve
        description: surveysretrieve
        call: posthog-surveys.surveysretrieve
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysretrieve
        description: surveysretrieve
        call: posthog-surveys.surveysretrieve
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: surveysupdate
        description: surveysupdate
        call: posthog-surveys.surveysupdate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: surveysupdate
        description: surveysupdate
        call: posthog-surveys.surveysupdate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: surveyspartialupdate
        description: surveyspartialupdate
        call: posthog-surveys.surveyspartialupdate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: surveyspartialupdate
        description: surveyspartialupdate
        call: posthog-surveys.surveyspartialupdate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: surveysdestroy
        description: surveysdestroy
        call: posthog-surveys.surveysdestroy
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: surveysdestroy
        description: surveysdestroy
        call: posthog-surveys.surveysdestroy
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/activity
      name: api-projects-project-id-surveys-id-activity
      description: REST surface for api-projects-project_id-surveys-id-activity.
      operations:
      - method: GET
        name: surveysactivityretrieve
        description: surveysactivityretrieve
        call: posthog-surveys.surveysactivityretrieve
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysactivityretrieve
        description: surveysactivityretrieve
        call: posthog-surveys.surveysactivityretrieve
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/archived-response-uuids
      name: api-projects-project-id-surveys-id-archived-response-uuids
      description: REST surface for api-projects-project_id-surveys-id-archived-response-uuids.
      operations:
      - method: GET
        name: surveysarchivedresponseuuidsretrieve
        description: Get list of archived response UUIDs for HogQL filtering.
        call: posthog-surveys.surveysarchivedresponseuuidsretrieve
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysarchivedresponseuuidsretrieve
        description: Get list of archived response UUIDs for HogQL filtering.
        call: posthog-surveys.surveysarchivedresponseuuidsretrieve
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/duplicate-to-projects
      name: api-projects-project-id-surveys-id-duplicate-to-projects
      description: REST surface for api-projects-project_id-surveys-id-duplicate_to_projects.
      operations:
      - method: POST
        name: surveysduplicatetoprojectscreate
        description: Duplicate a survey to multiple projects in a single transaction.
        call: posthog-surveys.surveysduplicatetoprojectscreate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: surveysduplicatetoprojectscreate
        description: Duplicate a survey to multiple projects in a single transaction.
        call: posthog-surveys.surveysduplicatetoprojectscreate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/generate-translations
      name: api-projects-project-id-surveys-id-generate-translations
      description: REST surface for api-projects-project_id-surveys-id-generate_translations.
      operations:
      - method: POST
        name: surveysgeneratetranslationscreate
        description: surveysgeneratetranslationscreate
        call: posthog-surveys.surveysgeneratetranslationscreate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: surveysgeneratetranslationscreate
        description: surveysgeneratetranslationscreate
        call: posthog-surveys.surveysgeneratetranslationscreate
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/responses/{response-uuid}/archive
      name: api-projects-project-id-surveys-id-responses-response-uuid-archive
      description: REST surface for api-projects-project_id-surveys-id-responses-response_uuid-archive.
      operations:
      - method: POST
        name: surveysresponsesarchivecreate
        description: Archive a single survey response.
        call: posthog-surveys.surveysresponsesarchivecreate
        with:
          id: rest.id
          response_uuid: rest.response_uuid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: surveysresponsesarchivecreate
        description: Archive a single survey response.
        call: posthog-surveys.surveysresponsesarchivecreate
        with:
          id: rest.id
          response_uuid: rest.response_uuid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/responses/{response-uuid}/unarchive
      name: api-projects-project-id-surveys-id-responses-response-uuid-unarchive
      description: REST surface for api-projects-project_id-surveys-id-responses-response_uuid-unarchive.
      operations:
      - method: POST
        name: surveysresponsesunarchivecreate
        description: Unarchive a single survey response.
        call: posthog-surveys.surveysresponsesunarchivecreate
        with:
          id: rest.id
          response_uuid: rest.response_uuid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: surveysresponsesunarchivecreate
        description: Unarchive a single survey response.
        call: posthog-surveys.surveysresponsesunarchivecreate
        with:
          id: rest.id
          response_uuid: rest.response_uuid
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/projects/{project-id}/surveys/{id}/stats
      name: api-projects-project-id-surveys-id-stats
      description: REST surface for api-projects-project_id-surveys-id-stats.
      operations:
      - method: GET
        name: surveysstatsretrieve
        description: Get survey response statistics for a specific survey.
        call: posthog-surveys.surveysstatsretrieve
        with:
          date_from: rest.date_from
          date_to: rest.date_to
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: surveysstatsretrieve
        description: Get survey response statistics for a specific survey.
        call: posthog-surveys.surveysstatsretrieve
        with:
          date_from: rest.date_from
          date_to: rest.date_to
          id: re

# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/posthog/refs/heads/main/capabilities/posthog-surveys.yaml