PostHog · Capability

PostHog API — external_data_sources

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

Run with Naftiko Posthogexternal_data_sources

What You Can Do

GET
Environmentsexternaldatasourceslist — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources
POST
Environmentsexternaldatasourcescreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources
POST
Environmentsexternaldatasourcescheckcdcprerequisitescreate — Validate CDC prerequisites against a live Postgres connection.
/v1/api/environments/{environment-id}/external-data-sources/check-cdc-prerequisites
GET
Environmentsexternaldatasourcesconnectionslist — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/connections
POST
Environmentsexternaldatasourcesdatabaseschemacreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/database-schema
POST
Environmentsexternaldatasourcessourceprefixcreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/source-prefix
GET
Environmentsexternaldatasourceswizardretrieve — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/wizard
GET
Environmentsexternaldatasourcesretrieve — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}
PUT
Environmentsexternaldatasourcesupdate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}
PATCH
Environmentsexternaldatasourcespartialupdate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}
DELETE
Environmentsexternaldatasourcesdestroy — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}
PATCH
Environmentsexternaldatasourcesbulkupdateschemaspartialupdate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/bulk-update-schemas
POST
Environmentsexternaldatasourcescreatewebhookcreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/create-webhook
POST
Environmentsexternaldatasourcesdeletewebhookcreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/delete-webhook
GET
Environmentsexternaldatasourcesjobsretrieve — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/jobs
POST
Environmentsexternaldatasourcesrefreshschemascreate — Fetch current schema/table list from the source and create any new ExternalDataSchema rows (no data sync).
/v1/api/environments/{environment-id}/external-data-sources/{id}/refresh-schemas
POST
Environmentsexternaldatasourcesreloadcreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/reload
PATCH
Environmentsexternaldatasourcesrevenueanalyticsconfigpartialupdate — Update the revenue analytics configuration and return the full external data source.
/v1/api/environments/{environment-id}/external-data-sources/{id}/revenue-analytics-config
POST
Environmentsexternaldatasourcesupdatewebhookinputscreate — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/update-webhook-inputs
GET
Environmentsexternaldatasourceswebhookinforetrieve — Create, Read, Update and Delete External data Sources.
/v1/api/environments/{environment-id}/external-data-sources/{id}/webhook-info
GET
Externaldatasourceslist — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources
POST
Externaldatasourcescreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources
POST
Externaldatasourcescheckcdcprerequisitescreate — Validate CDC prerequisites against a live Postgres connection.
/v1/api/projects/{project-id}/external-data-sources/check-cdc-prerequisites
GET
Externaldatasourcesconnectionslist — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/connections
POST
Externaldatasourcesdatabaseschemacreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/database-schema
POST
Externaldatasourcessourceprefixcreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/source-prefix
GET
Externaldatasourceswizardretrieve — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/wizard
GET
Externaldatasourcesretrieve — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}
PUT
Externaldatasourcesupdate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}
PATCH
Externaldatasourcespartialupdate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}
DELETE
Externaldatasourcesdestroy — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}
PATCH
Externaldatasourcesbulkupdateschemaspartialupdate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/bulk-update-schemas
POST
Externaldatasourcescreatewebhookcreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/create-webhook
POST
Externaldatasourcesdeletewebhookcreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/delete-webhook
GET
Externaldatasourcesjobsretrieve — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/jobs
POST
Externaldatasourcesrefreshschemascreate — Fetch current schema/table list from the source and create any new ExternalDataSchema rows (no data sync).
/v1/api/projects/{project-id}/external-data-sources/{id}/refresh-schemas
POST
Externaldatasourcesreloadcreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/reload
PATCH
Externaldatasourcesrevenueanalyticsconfigpartialupdate — Update the revenue analytics configuration and return the full external data source.
/v1/api/projects/{project-id}/external-data-sources/{id}/revenue-analytics-config
POST
Externaldatasourcesupdatewebhookinputscreate — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/update-webhook-inputs
GET
Externaldatasourceswebhookinforetrieve — Create, Read, Update and Delete External data Sources.
/v1/api/projects/{project-id}/external-data-sources/{id}/webhook-info

MCP Tools

create-read-update-and-delete

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-2

Create, Read, Update and Delete External data Sources.

validate-cdc-prerequisites-against-live

Validate CDC prerequisites against a live Postgres connection.

read-only
create-read-update-and-delete-3

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-4

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-5

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-6

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-7

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-8

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-9

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-10

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-11

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-12

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-13

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-14

Create, Read, Update and Delete External data Sources.

read-only idempotent
fetch-current-schema-table-list

Fetch current schema/table list from the source and create any new ExternalDataSchema rows (no data sync).

read-only
create-read-update-and-delete-15

Create, Read, Update and Delete External data Sources.

update-revenue-analytics-configuration-and

Update the revenue analytics configuration and return the full external data source.

idempotent
create-read-update-and-delete-16

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-17

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-18

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-19

Create, Read, Update and Delete External data Sources.

validate-cdc-prerequisites-against-live-2

Validate CDC prerequisites against a live Postgres connection.

read-only
create-read-update-and-delete-20

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-21

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-22

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-23

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-24

Create, Read, Update and Delete External data Sources.

read-only idempotent
create-read-update-and-delete-25

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-26

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-27

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-28

Create, Read, Update and Delete External data Sources.

idempotent
create-read-update-and-delete-29

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-30

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-31

Create, Read, Update and Delete External data Sources.

read-only idempotent
fetch-current-schema-table-list-2

Fetch current schema/table list from the source and create any new ExternalDataSchema rows (no data sync).

read-only
create-read-update-and-delete-32

Create, Read, Update and Delete External data Sources.

update-revenue-analytics-configuration-and-2

Update the revenue analytics configuration and return the full external data source.

idempotent
create-read-update-and-delete-33

Create, Read, Update and Delete External data Sources.

create-read-update-and-delete-34

Create, Read, Update and Delete External data Sources.

read-only idempotent

Capability Spec

posthog-external-data-sources.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: PostHog API — external_data_sources
  description: 'PostHog API — external_data_sources. 40 operations. Lead operation: external_data_sources. Self-contained
    Naftiko capability covering one Posthog business surface.'
  tags:
  - Posthog
  - external_data_sources
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    POSTHOG_API_KEY: POSTHOG_API_KEY
capability:
  consumes:
  - type: http
    namespace: posthog-external-data-sources
    baseUri: ''
    description: PostHog API — external_data_sources business capability. Self-contained, no shared references.
    resources:
    - name: api-environments-environment_id-external_data_sources
      path: /api/environments/{environment_id}/external_data_sources/
      operations:
      - name: environmentsexternaldatasourceslist
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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: environmentsexternaldatasourcescreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-check_cdc_prerequisites
      path: /api/environments/{environment_id}/external_data_sources/check_cdc_prerequisites/
      operations:
      - name: environmentsexternaldatasourcescheckcdcprerequisitescreate
        method: POST
        description: Validate CDC prerequisites against a live Postgres connection.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-environments-environment_id-external_data_sources-connections
      path: /api/environments/{environment_id}/external_data_sources/connections/
      operations:
      - name: environmentsexternaldatasourcesconnectionslist
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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: api-environments-environment_id-external_data_sources-database_schema
      path: /api/environments/{environment_id}/external_data_sources/database_schema/
      operations:
      - name: environmentsexternaldatasourcesdatabaseschemacreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-source_prefix
      path: /api/environments/{environment_id}/external_data_sources/source_prefix/
      operations:
      - name: environmentsexternaldatasourcessourceprefixcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-wizard
      path: /api/environments/{environment_id}/external_data_sources/wizard/
      operations:
      - name: environmentsexternaldatasourceswizardretrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-environments-environment_id-external_data_sources-id
      path: /api/environments/{environment_id}/external_data_sources/{id}/
      operations:
      - name: environmentsexternaldatasourcesretrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
      - name: environmentsexternaldatasourcesupdate
        method: PUT
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: environmentsexternaldatasourcespartialupdate
        method: PATCH
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: environmentsexternaldatasourcesdestroy
        method: DELETE
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
    - name: api-environments-environment_id-external_data_sources-id-bulk_update_schemas
      path: /api/environments/{environment_id}/external_data_sources/{id}/bulk_update_schemas/
      operations:
      - name: environmentsexternaldatasourcesbulkupdateschemaspartialupdate
        method: PATCH
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - 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: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-environments-environment_id-external_data_sources-id-create_webhook
      path: /api/environments/{environment_id}/external_data_sources/{id}/create_webhook/
      operations:
      - name: environmentsexternaldatasourcescreatewebhookcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-id-delete_webhook
      path: /api/environments/{environment_id}/external_data_sources/{id}/delete_webhook/
      operations:
      - name: environmentsexternaldatasourcesdeletewebhookcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-id-jobs
      path: /api/environments/{environment_id}/external_data_sources/{id}/jobs/
      operations:
      - name: environmentsexternaldatasourcesjobsretrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
    - name: api-environments-environment_id-external_data_sources-id-refresh_schemas
      path: /api/environments/{environment_id}/external_data_sources/{id}/refresh_schemas/
      operations:
      - name: environmentsexternaldatasourcesrefreshschemascreate
        method: POST
        description: Fetch current schema/table list from the source and create any new ExternalDataSchema rows (no data sync).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-id-reload
      path: /api/environments/{environment_id}/external_data_sources/{id}/reload/
      operations:
      - name: environmentsexternaldatasourcesreloadcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-id-revenue_analytics_confi
      path: /api/environments/{environment_id}/external_data_sources/{id}/revenue_analytics_config/
      operations:
      - name: environmentsexternaldatasourcesrevenueanalyticsconfigpartialupdate
        method: PATCH
        description: Update the revenue analytics configuration and return the full external data source.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-environments-environment_id-external_data_sources-id-update_webhook_inputs
      path: /api/environments/{environment_id}/external_data_sources/{id}/update_webhook_inputs/
      operations:
      - name: environmentsexternaldatasourcesupdatewebhookinputscreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-environments-environment_id-external_data_sources-id-webhook_info
      path: /api/environments/{environment_id}/external_data_sources/{id}/webhook_info/
      operations:
      - name: environmentsexternaldatasourceswebhookinforetrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
    - name: api-projects-project_id-external_data_sources
      path: /api/projects/{project_id}/external_data_sources/
      operations:
      - name: externaldatasourceslist
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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: externaldatasourcescreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        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-external_data_sources-check_cdc_prerequisites
      path: /api/projects/{project_id}/external_data_sources/check_cdc_prerequisites/
      operations:
      - name: externaldatasourcescheckcdcprerequisitescreate
        method: POST
        description: Validate CDC prerequisites against a live Postgres connection.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-projects-project_id-external_data_sources-connections
      path: /api/projects/{project_id}/external_data_sources/connections/
      operations:
      - name: externaldatasourcesconnectionslist
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - 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: api-projects-project_id-external_data_sources-database_schema
      path: /api/projects/{project_id}/external_data_sources/database_schema/
      operations:
      - name: externaldatasourcesdatabaseschemacreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        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-external_data_sources-source_prefix
      path: /api/projects/{project_id}/external_data_sources/source_prefix/
      operations:
      - name: externaldatasourcessourceprefixcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        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-external_data_sources-wizard
      path: /api/projects/{project_id}/external_data_sources/wizard/
      operations:
      - name: externaldatasourceswizardretrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: api-projects-project_id-external_data_sources-id
      path: /api/projects/{project_id}/external_data_sources/{id}/
      operations:
      - name: externaldatasourcesretrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
      - name: externaldatasourcesupdate
        method: PUT
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: externaldatasourcespartialupdate
        method: PATCH
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
      - name: externaldatasourcesdestroy
        method: DELETE
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
    - name: api-projects-project_id-external_data_sources-id-bulk_update_schemas
      path: /api/projects/{project_id}/external_data_sources/{id}/bulk_update_schemas/
      operations:
      - name: externaldatasourcesbulkupdateschemaspartialupdate
        method: PATCH
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - 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: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-projects-project_id-external_data_sources-id-create_webhook
      path: /api/projects/{project_id}/external_data_sources/{id}/create_webhook/
      operations:
      - name: externaldatasourcescreatewebhookcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-external_data_sources-id-delete_webhook
      path: /api/projects/{project_id}/external_data_sources/{id}/delete_webhook/
      operations:
      - name: externaldatasourcesdeletewebhookcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-external_data_sources-id-jobs
      path: /api/projects/{project_id}/external_data_sources/{id}/jobs/
      operations:
      - name: externaldatasourcesjobsretrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
    - name: api-projects-project_id-external_data_sources-id-refresh_schemas
      path: /api/projects/{project_id}/external_data_sources/{id}/refresh_schemas/
      operations:
      - name: externaldatasourcesrefreshschemascreate
        method: POST
        description: Fetch current schema/table list from the source and create any new ExternalDataSchema rows (no data sync).
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-external_data_sources-id-reload
      path: /api/projects/{project_id}/external_data_sources/{id}/reload/
      operations:
      - name: externaldatasourcesreloadcreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-external_data_sources-id-revenue_analytics_config
      path: /api/projects/{project_id}/external_data_sources/{id}/revenue_analytics_config/
      operations:
      - name: externaldatasourcesrevenueanalyticsconfigpartialupdate
        method: PATCH
        description: Update the revenue analytics configuration and return the full external data source.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-projects-project_id-external_data_sources-id-update_webhook_inputs
      path: /api/projects/{project_id}/external_data_sources/{id}/update_webhook_inputs/
      operations:
      - name: externaldatasourcesupdatewebhookinputscreate
        method: POST
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: api-projects-project_id-external_data_sources-id-webhook_info
      path: /api/projects/{project_id}/external_data_sources/{id}/webhook_info/
      operations:
      - name: externaldatasourceswebhookinforetrieve
        method: GET
        description: Create, Read, Update and Delete External data Sources.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A UUID string identifying this external data source.
          required: true
    authentication:
      type: bearer
      token: '{{env.POSTHOG_API_KEY}}'
  exposes:
  - type: rest
    namespace: posthog-external-data-sources-rest
    port: 8080
    description: REST adapter for PostHog API — external_data_sources. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/api/environments/{environment-id}/external-data-sources
      name: api-environments-environment-id-external-data-sources
      description: REST surface for api-environments-environment_id-external_data_sources.
      operations:
      - method: GET
        name: environmentsexternaldatasourceslist
        description: Create, Read, Update and Delete External data Sources.
        call: posthog-external-data-sources.environmentsexternaldatasourceslist
        with:
          limit: rest.limit
          offset: rest.offset
          search: rest.search
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: environmentsexternaldatasourcescreate
        description: Create, Read, Update and Delete External data Sources.
        call: posthog-external-data-sources.environmentsexternaldatasourcescreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/environments/{environment-id}/external-data-sources/check-cdc-prerequisites
      name: api-environments-environment-id-external-data-sources-check-cdc-prerequisites
      description: REST surface for api-environments-environment_id-external_data_sources-check_cdc_prerequisites.
      operations:
      - method: POST
        name: environmentsexternaldatasourcescheckcdcprerequisitescreate
        description: Validate CDC prerequisites against a live Postgres connection.
        call: posthog-external-data-sources.environmentsexternaldatasourcescheckcdcprerequisitescreate
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/environments/{environment-id}/external-data-sources/connections
      name: api-environments-environment-id-external-data-sources-connections
      description: REST surface for api-environments-environment_id-external_data_sources-connections.
      operations:
      - method: GET
        name: environmentsexternaldatasourcesconnectionslist
        description: Create, Read, Update and Delete External data Sources.
        call: posthog-external-data-sources.environmentsexternaldatasourcesconnectionslist
        with:
          limit: rest.limit
          offset: rest.offset
          search: rest.search
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/environments/{environment-id}/external-data-sources/database-schema
      name: api-environments-environment-id-external-data-sources-database-schema
      description: REST surface for api-environments-environment_id-external_data_sources-database_schema.
      operations:
      - method: POST
        name: environmentsexternaldatasourcesdatabaseschemacreate
        description: Create, Read, Update and Delete External data Sources.
        call: posthog-external-data-sources.environmentsexternaldatasourcesdatabaseschemacreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/environments/{environment-id}/external-data-sources/source-prefix
      name: api-environments-environment-id-external-data-sources-source-prefix
      description: REST surface for api-environments-environment_id-external_data_sources-source_prefix.
      operations:
      - method: POST
        name: environmentsexternaldatasourcessourceprefixcreate
        description: Create, Read, Update and Delete External data Sources.
        call: posthog-external-data-sources.environmentsexternaldatasourcessourceprefixcreate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/environments/{environment-id}/external-data-sources/wizard
      name: api-environments-environment-id-external-data-sources-wizard
      description: REST surface for api-environments-environment_id-external_data_sources-wizard.
      operations:
      - method: GET
        name: environmentsexternaldatasourceswizardretrieve
        description: Create, Read, Update and Delete External data Sources.
        call: posthog-external-data-sources.environmentsexternaldatasourceswizardretrieve
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/environments/{environment-id}/external-data-sources/{id}
      name: api-environments-environm

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