Connectors

Stores, sources and destinations.

11 endpoints · Plakar Control Plane v0.18 · Base URL, authentication and errors

List the connectors

GET /api/v1/account/organizations/{id}/connectors
Badge

Path parameters

  • id string<uuid> required
    Organization ID, at or below the caller’s.

Query parameters

  • type string required
    Connector kind.
    Allowed: source, destination, store
  • offset integer
    Number of items to skip.
    Default: 0
  • limit integer
    Maximum number of items to return.
    Default: 50 Min: 1 Max: 50
  • search string
    Free-text search on connectors.
  • residency string
    Only connectors in this country.
  • inventory_id string<uuid>
    Only connectors of this inventory.
  • without_residency boolean
    Only connectors without a residency. Not combinable with residency.
    Default: false
  • exclude_locked boolean
    Exclude locked connectors.
    Default: false

Response 200 OK application/json

  • items array[object]
    • access object
      • can_author boolean
      • can_delete boolean
      • can_execute boolean
      • can_view boolean
    • created_at string<date-time>
    • data_classes array[string] nullable
    • endpoints array[object]
      • endpoint string
    • environment string nullable
    • fields map[object]
      • provider object nullable
        • id string<uuid>
      • value string
    • id string<uuid>
    • integration object
      • created_at string<date-time>
      • fields map[array[object]] nullable
      • id string<uuid>
      • name string nullable
      • protocols array[string] nullable
      • supports array[string] nullable
      • updated_at string<date-time>
      • version string nullable
    • inventory object nullable
      • access object
        • can_author boolean
        • can_delete boolean
        • can_execute boolean
        • can_view boolean
      • aws_configuration object
        • access_key object
          • provider object nullable
            • id string<uuid>
          • value string
        • credentials_type string
        • region string
        • secret_access_key object
          • provider object nullable
            • id string<uuid>
          • value string
      • coverage object
        • excluded integer
        • protected integer
        • unprotected integer
      • gcp_configuration object
        • gcp_project_id object
          • provider object nullable
            • id string<uuid>
          • value string
        • gcp_service_account_json object
          • provider object nullable
            • id string<uuid>
          • value string
      • id string<uuid>
      • k8s_configuration object
        • k8s_filter_namespaces string
        • k8s_kubeconf object
          • provider object nullable
            • id string<uuid>
          • value string
      • last_update string<date-time>
      • name string
      • openshift_configuration object
        • openshift_filter_namespaces string
        • openshift_kubeconf object
          • provider object nullable
            • id string<uuid>
          • value string
      • openstack_configuration object
        • openstack_application_credential_id object
          • provider object nullable
            • id string<uuid>
          • value string
        • openstack_application_credential_secret object
          • provider object nullable
            • id string<uuid>
          • value string
        • openstack_auth_url string
        • openstack_domain_name string
        • openstack_password object
          • provider object nullable
            • id string<uuid>
          • value string
        • openstack_project_id string
        • openstack_project_name string
        • openstack_region string
        • openstack_username object
          • provider object nullable
            • id string<uuid>
          • value string
      • ovh_configuration object
        • application_key object
          • provider object nullable
            • id string<uuid>
          • value string
        • application_secret object
          • provider object nullable
            • id string<uuid>
          • value string
        • consumer_key object
          • provider object nullable
            • id string<uuid>
          • value string
        • endpoint string
      • residency string nullable
      • scaleway_configuration object
        • scw_access_key object
          • provider object nullable
            • id string<uuid>
          • value string
        • scw_project_id object
          • provider object nullable
            • id string<uuid>
          • value string
        • scw_secret_key object
          • provider object nullable
            • id string<uuid>
          • value string
      • summaries array[object]
        • class string
        • count integer
        • name string
      • type string
      • vmware_configuration object
        • vsphere_password object
          • provider object nullable
            • id string<uuid>
          • value string
        • vsphere_server object
          • provider object nullable
            • id string<uuid>
          • value string
        • vsphere_tls_ca_bundle object
          • provider object nullable
            • id string<uuid>
          • value string
        • vsphere_tls_skip_verify string
        • vsphere_username object
          • provider object nullable
            • id string<uuid>
          • value string
    • last_check string<date-time> nullable
    • name string
    • protocol string
    • resource object nullable
      • class string
      • configured_connectors array[object]
        • country_detected string nullable
        • id string<uuid>
        • integration object
          • created_at string<date-time>
          • fields map[array[object]] nullable
          • id string<uuid>
          • name string nullable
          • protocols array[string] nullable
          • supports array[string] nullable
          • updated_at string<date-time>
          • version string nullable
        • name string
        • residency string nullable
        • type string
      • country_detected string nullable
      • coverage_status string
      • excluded_from_coverage boolean
      • id string<uuid>
      • inventory_id string<uuid>
      • inventory_name string
      • inventory_type string
      • locked boolean
      • name string
      • residency string nullable
      • service string
      • subclass string
      • tags array[string]
      • urn string
      • urn_id string<uuid>
    • revision integer
    • root string
    • temperature string nullable
    • type string
    • updated_at string<date-time>
  • total integer

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/account/organizations/{id}/connectors' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "items": [
    {
      "access": {
        "can_author": true,
        "can_delete": true,
        "can_execute": true,
        "can_view": true
      },
      "created_at": "2026-01-01T00:00:00Z",
      "data_classes": [
        "string"
      ],
      "endpoints": [
        {
          "endpoint": "string"
        }
      ],
      "environment": "string",
      "fields": {
        "key": {
          "provider": {
            "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
          },
          "value": "string"
        }
      },
      "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
      "integration": {
        "created_at": "2026-01-01T00:00:00Z",
        "fields": {
          "key": [
            {
              "default": "string",
              "description": "string",
              "display_name": "string",
              "enum": [
                "string"
              ],
              "inventory_value": "string",
              "name": "string",
              "pattern": "string",
              "required": true,
              "sensitive": true,
              "type": "string"
            }
          ]
        },
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
        "name": "string",
        "protocols": [
          "string"
        ],
        "supports": [
          "string"
        ],
        "updated_at": "2026-01-01T00:00:00Z",
        "version": "string"
      },
      "inventory": {
        "access": {
          "can_author": true,
          "can_delete": true,
          "can_execute": true,
          "can_view": true
        },
        "aws_configuration": {
          "access_key": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "credentials_type": "string",
          "region": "string",
          "secret_access_key": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        },
        "coverage": {
          "excluded": 0,
          "protected": 0,
          "unprotected": 0
        },
        "gcp_configuration": {
          "gcp_project_id": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "gcp_service_account_json": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        },
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
        "k8s_configuration": {
          "k8s_filter_namespaces": "string",
          "k8s_kubeconf": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        },
        "last_update": "2026-01-01T00:00:00Z",
        "name": "string",
        "openshift_configuration": {
          "openshift_filter_namespaces": "string",
          "openshift_kubeconf": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        },
        "openstack_configuration": {
          "openstack_application_credential_id": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "openstack_application_credential_secret": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "openstack_auth_url": "string",
          "openstack_domain_name": "string",
          "openstack_password": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "openstack_project_id": "string",
          "openstack_project_name": "string",
          "openstack_region": "string",
          "openstack_username": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        },
        "ovh_configuration": {
          "application_key": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "application_secret": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "consumer_key": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "endpoint": "string"
        },
        "residency": "string",
        "scaleway_configuration": {
          "scw_access_key": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "scw_project_id": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "scw_secret_key": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        },
        "summaries": [
          {
            "class": "string",
            "count": 0,
            "name": "string"
          }
        ],
        "type": "string",
        "vmware_configuration": {
          "vsphere_password": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "vsphere_server": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "vsphere_tls_ca_bundle": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          },
          "vsphere_tls_skip_verify": "string",
          "vsphere_username": {
            "provider": {
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
            },
            "value": "string"
          }
        }
      },
      "last_check": "2026-01-01T00:00:00Z",
      "name": "string",
      "protocol": "string",
      "resource": {
        "class": "string",
        "configured_connectors": [
          {
            "country_detected": "string",
            "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
            "integration": {
              "created_at": "2026-01-01T00:00:00Z",
              "fields": {
                "key": [
                  {
                    "default": "string",
                    "description": "string",
                    "display_name": "string",
                    "enum": [
                      "string"
                    ],
                    "inventory_value": "string",
                    "name": "string",
                    "pattern": "string",
                    "required": true,
                    "sensitive": true,
                    "type": "string"
                  }
                ]
              },
              "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
              "name": "string",
              "protocols": [
                "string"
              ],
              "supports": [
                "string"
              ],
              "updated_at": "2026-01-01T00:00:00Z",
              "version": "string"
            },
            "name": "string",
            "residency": "string",
            "type": "string"
          }
        ],
        "country_detected": "string",
        "coverage_status": "string",
        "excluded_from_coverage": true,
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
        "inventory_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
        "inventory_name": "string",
        "inventory_type": "string",
        "locked": true,
        "name": "string",
        "residency": "string",
        "service": "string",
        "subclass": "string",
        "tags": [
          "string"
        ],
        "urn": "string",
        "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "revision": 0,
      "root": "string",
      "temperature": "string",
      "type": "string",
      "updated_at": "2026-01-01T00:00:00Z"
    }
  ],
  "total": 0
}

Create a connector

POST /api/v1/account/organizations/{id}/connectors
Badge

Path parameters

  • id string<uuid> required
    Organization ID, at or below the caller’s.

Request body application/json required

  • data_classes array[string]
  • endpoints array[object]
    • endpoint string
  • environment string
  • fields map[object] required
    • provider object nullable
      • id string<uuid>
    • value string
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • name string required
  • protocol string required
  • temperature string nullable
  • type string required
  • urn_id string<uuid>

Response 200 OK application/json

  • data_classes array[string] nullable
  • endpoints array[object]
    • endpoint string
  • environment string nullable
  • fields map[object]
    • provider object nullable
      • id string<uuid>
    • value string
  • id string<uuid>
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • last_check string<date-time> nullable
  • name string
  • protocol string
  • temperature string nullable
  • type string
  • urn_id string<uuid>

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/account/organizations/{id}/connectors' \
  -H 'Authorization: Bearer <badge>' \
  -H 'Content-Type: application/json' \
  -d '{
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "fields": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "name": "string",
  "protocol": "string",
  "temperature": "string",
  "type": "string",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}'

Response 200

{
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "fields": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "last_check": "2026-01-01T00:00:00Z",
  "name": "string",
  "protocol": "string",
  "temperature": "string",
  "type": "string",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}

Create a connector from a form

POST /api/v1/account/organizations/{id}/connectors/form
Badge
Validates a configuration document against the protocol’s form schema, merged with the inherited inventory and bundle values, and stores the connector’s own values.

Path parameters

  • id string required

Request body application/json required

  • configuration map[any] required
  • data_classes array[string]
  • endpoints array[object]
    • endpoint string
  • environment string
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • name string required
  • protocol string required
  • temperature string nullable
  • type string required
  • urn_id string<uuid>

Response 200 OK application/json

  • configuration map[object]
    • provider object nullable
      • id string<uuid>
    • value string
  • id string<uuid>
  • urn_id string<uuid>

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/account/organizations/{id}/connectors/form' \
  -H 'Authorization: Bearer <badge>' \
  -H 'Content-Type: application/json' \
  -d '{
  "configuration": {
    "key": {}
  },
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "name": "string",
  "protocol": "string",
  "temperature": "string",
  "type": "string",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}'

Response 200

{
  "configuration": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}

Get a connector

GET /api/v1/connectors/{connector_id}
Badge

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • access object
    • can_author boolean
    • can_delete boolean
    • can_execute boolean
    • can_view boolean
  • created_at string<date-time>
  • data_classes array[string] nullable
  • endpoints array[object]
    • endpoint string
  • environment string nullable
  • fields map[object]
    • provider object nullable
      • id string<uuid>
    • value string
  • id string<uuid>
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • inventory object nullable
    • access object
      • can_author boolean
      • can_delete boolean
      • can_execute boolean
      • can_view boolean
    • aws_configuration object
      • access_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • credentials_type string
      • region string
      • secret_access_key object
        • provider object nullable
          • id string<uuid>
        • value string
    • coverage object
      • excluded integer
      • protected integer
      • unprotected integer
    • gcp_configuration object
      • gcp_project_id object
        • provider object nullable
          • id string<uuid>
        • value string
      • gcp_service_account_json object
        • provider object nullable
          • id string<uuid>
        • value string
    • id string<uuid>
    • k8s_configuration object
      • k8s_filter_namespaces string
      • k8s_kubeconf object
        • provider object nullable
          • id string<uuid>
        • value string
    • last_update string<date-time>
    • name string
    • openshift_configuration object
      • openshift_filter_namespaces string
      • openshift_kubeconf object
        • provider object nullable
          • id string<uuid>
        • value string
    • openstack_configuration object
      • openstack_application_credential_id object
        • provider object nullable
          • id string<uuid>
        • value string
      • openstack_application_credential_secret object
        • provider object nullable
          • id string<uuid>
        • value string
      • openstack_auth_url string
      • openstack_domain_name string
      • openstack_password object
        • provider object nullable
          • id string<uuid>
        • value string
      • openstack_project_id string
      • openstack_project_name string
      • openstack_region string
      • openstack_username object
        • provider object nullable
          • id string<uuid>
        • value string
    • ovh_configuration object
      • application_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • application_secret object
        • provider object nullable
          • id string<uuid>
        • value string
      • consumer_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • endpoint string
    • residency string nullable
    • scaleway_configuration object
      • scw_access_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • scw_project_id object
        • provider object nullable
          • id string<uuid>
        • value string
      • scw_secret_key object
        • provider object nullable
          • id string<uuid>
        • value string
    • summaries array[object]
      • class string
      • count integer
      • name string
    • type string
    • vmware_configuration object
      • vsphere_password object
        • provider object nullable
          • id string<uuid>
        • value string
      • vsphere_server object
        • provider object nullable
          • id string<uuid>
        • value string
      • vsphere_tls_ca_bundle object
        • provider object nullable
          • id string<uuid>
        • value string
      • vsphere_tls_skip_verify string
      • vsphere_username object
        • provider object nullable
          • id string<uuid>
        • value string
  • last_check string<date-time> nullable
  • name string
  • protocol string
  • resource object nullable
    • class string
    • configured_connectors array[object]
      • country_detected string nullable
      • id string<uuid>
      • integration object
        • created_at string<date-time>
        • fields map[array[object]] nullable
        • id string<uuid>
        • name string nullable
        • protocols array[string] nullable
        • supports array[string] nullable
        • updated_at string<date-time>
        • version string nullable
      • name string
      • residency string nullable
      • type string
    • country_detected string nullable
    • coverage_status string
    • excluded_from_coverage boolean
    • id string<uuid>
    • inventory_id string<uuid>
    • inventory_name string
    • inventory_type string
    • locked boolean
    • name string
    • residency string nullable
    • service string
    • subclass string
    • tags array[string]
    • urn string
    • urn_id string<uuid>
  • revision integer
  • root string
  • temperature string nullable
  • type string
  • updated_at string<date-time>

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/connectors/{connector_id}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "access": {
    "can_author": true,
    "can_delete": true,
    "can_execute": true,
    "can_view": true
  },
  "created_at": "2026-01-01T00:00:00Z",
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "fields": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "inventory": {
    "access": {
      "can_author": true,
      "can_delete": true,
      "can_execute": true,
      "can_view": true
    },
    "aws_configuration": {
      "access_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "credentials_type": "string",
      "region": "string",
      "secret_access_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "coverage": {
      "excluded": 0,
      "protected": 0,
      "unprotected": 0
    },
    "gcp_configuration": {
      "gcp_project_id": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "gcp_service_account_json": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "k8s_configuration": {
      "k8s_filter_namespaces": "string",
      "k8s_kubeconf": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "last_update": "2026-01-01T00:00:00Z",
    "name": "string",
    "openshift_configuration": {
      "openshift_filter_namespaces": "string",
      "openshift_kubeconf": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "openstack_configuration": {
      "openstack_application_credential_id": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "openstack_application_credential_secret": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "openstack_auth_url": "string",
      "openstack_domain_name": "string",
      "openstack_password": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "openstack_project_id": "string",
      "openstack_project_name": "string",
      "openstack_region": "string",
      "openstack_username": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "ovh_configuration": {
      "application_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "application_secret": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "consumer_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "endpoint": "string"
    },
    "residency": "string",
    "scaleway_configuration": {
      "scw_access_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "scw_project_id": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "scw_secret_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "summaries": [
      {
        "class": "string",
        "count": 0,
        "name": "string"
      }
    ],
    "type": "string",
    "vmware_configuration": {
      "vsphere_password": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "vsphere_server": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "vsphere_tls_ca_bundle": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "vsphere_tls_skip_verify": "string",
      "vsphere_username": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    }
  },
  "last_check": "2026-01-01T00:00:00Z",
  "name": "string",
  "protocol": "string",
  "resource": {
    "class": "string",
    "configured_connectors": [
      {
        "country_detected": "string",
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
        "integration": {
          "created_at": "2026-01-01T00:00:00Z",
          "fields": {
            "key": [
              {
                "default": "string",
                "description": "string",
                "display_name": "string",
                "enum": [
                  "string"
                ],
                "inventory_value": "string",
                "name": "string",
                "pattern": "string",
                "required": true,
                "sensitive": true,
                "type": "string"
              }
            ]
          },
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
          "name": "string",
          "protocols": [
            "string"
          ],
          "supports": [
            "string"
          ],
          "updated_at": "2026-01-01T00:00:00Z",
          "version": "string"
        },
        "name": "string",
        "residency": "string",
        "type": "string"
      }
    ],
    "country_detected": "string",
    "coverage_status": "string",
    "excluded_from_coverage": true,
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "inventory_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "inventory_name": "string",
    "inventory_type": "string",
    "locked": true,
    "name": "string",
    "residency": "string",
    "service": "string",
    "subclass": "string",
    "tags": [
      "string"
    ],
    "urn": "string",
    "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
  },
  "revision": 0,
  "root": "string",
  "temperature": "string",
  "type": "string",
  "updated_at": "2026-01-01T00:00:00Z"
}

Update a connector

POST /api/v1/connectors/{connector_id}
Badge

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Request body application/json required

  • data_classes array[string]
  • endpoints array[object]
    • endpoint string
  • environment string
  • fields map[object] required
    • provider object nullable
      • id string<uuid>
    • value string
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • name string required
  • protocol string required
  • temperature string nullable
  • type string required
  • urn_id string<uuid>

Response 200 OK application/json

  • data_classes array[string] nullable
  • endpoints array[object]
    • endpoint string
  • environment string nullable
  • fields map[object]
    • provider object nullable
      • id string<uuid>
    • value string
  • id string<uuid>
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • last_check string<date-time> nullable
  • name string
  • protocol string
  • temperature string nullable
  • type string
  • urn_id string<uuid>

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/connectors/{connector_id}' \
  -H 'Authorization: Bearer <badge>' \
  -H 'Content-Type: application/json' \
  -d '{
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "fields": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "name": "string",
  "protocol": "string",
  "temperature": "string",
  "type": "string",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}'

Response 200

{
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "fields": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "last_check": "2026-01-01T00:00:00Z",
  "name": "string",
  "protocol": "string",
  "temperature": "string",
  "type": "string",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}

Delete a connector

DELETE /api/v1/connectors/{connector_id}
Badge

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X DELETE 'https://pcp.example.com/api/v1/connectors/{connector_id}' \
  -H 'Authorization: Bearer <badge>'

Response 200

{}

List what the caller may do on a connector

GET /api/v1/connectors/{connector_id}/capabilities
Badge

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • actions array[string]
  • id string<uuid>
  • resource string

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/connectors/{connector_id}/capabilities' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "actions": [
    "string"
  ],
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "resource": "string"
}

Get a connector as form data

GET /api/v1/connectors/{connector_id}/form
Badge
Answers the connector’s configuration document with its protocol’s form schema. Keys the schema does not show are left out.

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • access object
    • can_author boolean
    • can_delete boolean
    • can_execute boolean
    • can_view boolean
  • configuration map[any]
  • created_at string<date-time>
  • data_classes array[string] nullable
  • endpoints array[object]
    • endpoint string
  • environment string nullable
  • id string<uuid>
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • inventory object nullable
    • access object
      • can_author boolean
      • can_delete boolean
      • can_execute boolean
      • can_view boolean
    • aws_configuration object
      • access_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • credentials_type string
      • region string
      • secret_access_key object
        • provider object nullable
          • id string<uuid>
        • value string
    • coverage object
      • excluded integer
      • protected integer
      • unprotected integer
    • gcp_configuration object
      • gcp_project_id object
        • provider object nullable
          • id string<uuid>
        • value string
      • gcp_service_account_json object
        • provider object nullable
          • id string<uuid>
        • value string
    • id string<uuid>
    • k8s_configuration object
      • k8s_filter_namespaces string
      • k8s_kubeconf object
        • provider object nullable
          • id string<uuid>
        • value string
    • last_update string<date-time>
    • name string
    • openshift_configuration object
      • openshift_filter_namespaces string
      • openshift_kubeconf object
        • provider object nullable
          • id string<uuid>
        • value string
    • openstack_configuration object
      • openstack_application_credential_id object
        • provider object nullable
          • id string<uuid>
        • value string
      • openstack_application_credential_secret object
        • provider object nullable
          • id string<uuid>
        • value string
      • openstack_auth_url string
      • openstack_domain_name string
      • openstack_password object
        • provider object nullable
          • id string<uuid>
        • value string
      • openstack_project_id string
      • openstack_project_name string
      • openstack_region string
      • openstack_username object
        • provider object nullable
          • id string<uuid>
        • value string
    • ovh_configuration object
      • application_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • application_secret object
        • provider object nullable
          • id string<uuid>
        • value string
      • consumer_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • endpoint string
    • residency string nullable
    • scaleway_configuration object
      • scw_access_key object
        • provider object nullable
          • id string<uuid>
        • value string
      • scw_project_id object
        • provider object nullable
          • id string<uuid>
        • value string
      • scw_secret_key object
        • provider object nullable
          • id string<uuid>
        • value string
    • summaries array[object]
      • class string
      • count integer
      • name string
    • type string
    • vmware_configuration object
      • vsphere_password object
        • provider object nullable
          • id string<uuid>
        • value string
      • vsphere_server object
        • provider object nullable
          • id string<uuid>
        • value string
      • vsphere_tls_ca_bundle object
        • provider object nullable
          • id string<uuid>
        • value string
      • vsphere_tls_skip_verify string
      • vsphere_username object
        • provider object nullable
          • id string<uuid>
        • value string
  • last_check string<date-time> nullable
  • name string
  • protocol string
  • resource object nullable
    • class string
    • configured_connectors array[object]
      • country_detected string nullable
      • id string<uuid>
      • integration object
        • created_at string<date-time>
        • fields map[array[object]] nullable
        • id string<uuid>
        • name string nullable
        • protocols array[string] nullable
        • supports array[string] nullable
        • updated_at string<date-time>
        • version string nullable
      • name string
      • residency string nullable
      • type string
    • country_detected string nullable
    • coverage_status string
    • excluded_from_coverage boolean
    • id string<uuid>
    • inventory_id string<uuid>
    • inventory_name string
    • inventory_type string
    • locked boolean
    • name string
    • residency string nullable
    • service string
    • subclass string
    • tags array[string]
    • urn string
    • urn_id string<uuid>
  • revision integer
  • root string
  • schema object
    • bundle_fields map[object] nullable
      • provider object nullable
        • id string<uuid>
      • value string
    • initial map[any]
    • schema map[any]
    • scheme string
  • temperature string nullable
  • type string
  • updated_at string<date-time>

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl 'https://pcp.example.com/api/v1/connectors/{connector_id}/form' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "access": {
    "can_author": true,
    "can_delete": true,
    "can_execute": true,
    "can_view": true
  },
  "configuration": {
    "key": {}
  },
  "created_at": "2026-01-01T00:00:00Z",
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "inventory": {
    "access": {
      "can_author": true,
      "can_delete": true,
      "can_execute": true,
      "can_view": true
    },
    "aws_configuration": {
      "access_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "credentials_type": "string",
      "region": "string",
      "secret_access_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "coverage": {
      "excluded": 0,
      "protected": 0,
      "unprotected": 0
    },
    "gcp_configuration": {
      "gcp_project_id": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "gcp_service_account_json": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "k8s_configuration": {
      "k8s_filter_namespaces": "string",
      "k8s_kubeconf": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "last_update": "2026-01-01T00:00:00Z",
    "name": "string",
    "openshift_configuration": {
      "openshift_filter_namespaces": "string",
      "openshift_kubeconf": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "openstack_configuration": {
      "openstack_application_credential_id": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "openstack_application_credential_secret": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "openstack_auth_url": "string",
      "openstack_domain_name": "string",
      "openstack_password": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "openstack_project_id": "string",
      "openstack_project_name": "string",
      "openstack_region": "string",
      "openstack_username": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "ovh_configuration": {
      "application_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "application_secret": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "consumer_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "endpoint": "string"
    },
    "residency": "string",
    "scaleway_configuration": {
      "scw_access_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "scw_project_id": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "scw_secret_key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "summaries": [
      {
        "class": "string",
        "count": 0,
        "name": "string"
      }
    ],
    "type": "string",
    "vmware_configuration": {
      "vsphere_password": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "vsphere_server": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "vsphere_tls_ca_bundle": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      },
      "vsphere_tls_skip_verify": "string",
      "vsphere_username": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    }
  },
  "last_check": "2026-01-01T00:00:00Z",
  "name": "string",
  "protocol": "string",
  "resource": {
    "class": "string",
    "configured_connectors": [
      {
        "country_detected": "string",
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
        "integration": {
          "created_at": "2026-01-01T00:00:00Z",
          "fields": {
            "key": [
              {
                "default": "string",
                "description": "string",
                "display_name": "string",
                "enum": [
                  "string"
                ],
                "inventory_value": "string",
                "name": "string",
                "pattern": "string",
                "required": true,
                "sensitive": true,
                "type": "string"
              }
            ]
          },
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
          "name": "string",
          "protocols": [
            "string"
          ],
          "supports": [
            "string"
          ],
          "updated_at": "2026-01-01T00:00:00Z",
          "version": "string"
        },
        "name": "string",
        "residency": "string",
        "type": "string"
      }
    ],
    "country_detected": "string",
    "coverage_status": "string",
    "excluded_from_coverage": true,
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "inventory_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "inventory_name": "string",
    "inventory_type": "string",
    "locked": true,
    "name": "string",
    "residency": "string",
    "service": "string",
    "subclass": "string",
    "tags": [
      "string"
    ],
    "urn": "string",
    "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
  },
  "revision": 0,
  "root": "string",
  "schema": {
    "bundle_fields": {
      "key": {
        "provider": {
          "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
        },
        "value": "string"
      }
    },
    "initial": {
      "key": {}
    },
    "schema": {
      "key": {}
    },
    "scheme": "string"
  },
  "temperature": "string",
  "type": "string",
  "updated_at": "2026-01-01T00:00:00Z"
}

Update a connector from a form

POST /api/v1/connectors/{connector_id}/form
Badge
Validates a configuration document against the connector’s protocol form schema, merged with the inherited values, and stores a new revision. Stored keys the schema does not show are kept.

Path parameters

  • connector_id string required

Request body application/json required

  • configuration map[any] required
  • data_classes array[string]
  • endpoints array[object]
    • endpoint string
  • environment string
  • integration object
    • created_at string<date-time>
    • fields map[array[object]] nullable
    • id string<uuid>
    • name string nullable
    • protocols array[string] nullable
    • supports array[string] nullable
    • updated_at string<date-time>
    • version string nullable
  • name string required
  • protocol string required
  • temperature string nullable
  • type string required
  • urn_id string<uuid>

Response 200 OK application/json

  • configuration map[object]
    • provider object nullable
      • id string<uuid>
    • value string
  • id string<uuid>
  • urn_id string<uuid>

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/connectors/{connector_id}/form' \
  -H 'Authorization: Bearer <badge>' \
  -H 'Content-Type: application/json' \
  -d '{
  "configuration": {
    "key": {}
  },
  "data_classes": [
    "string"
  ],
  "endpoints": [
    {
      "endpoint": "string"
    }
  ],
  "environment": "string",
  "integration": {
    "created_at": "2026-01-01T00:00:00Z",
    "fields": {
      "key": [
        {
          "default": "string",
          "description": "string",
          "display_name": "string",
          "enum": [
            "string"
          ],
          "inventory_value": "string",
          "name": "string",
          "pattern": "string",
          "required": true,
          "sensitive": true,
          "type": "string"
        }
      ]
    },
    "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
    "name": "string",
    "protocols": [
      "string"
    ],
    "supports": [
      "string"
    ],
    "updated_at": "2026-01-01T00:00:00Z",
    "version": "string"
  },
  "name": "string",
  "protocol": "string",
  "temperature": "string",
  "type": "string",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}'

Response 200

{
  "configuration": {
    "key": {
      "provider": {
        "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
      },
      "value": "string"
    }
  },
  "id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90",
  "urn_id": "3f1e4a2c-9b7d-4e0f-8a11-2c5d6e7f8a90"
}

Create the store behind a connector

POST /api/v1/connectors/{connector_id}/stores/create
Badge

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Request body application/json required

  • compression string nullable

Response 200 OK application/json

  • error string nullable
  • ok boolean

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/connectors/{connector_id}/stores/create' \
  -H 'Authorization: Bearer <badge>' \
  -H 'Content-Type: application/json' \
  -d '{
  "compression": "string"
}'

Response 200

{
  "error": "string",
  "ok": true
}

Test a connector

POST /api/v1/connectors/{connector_id}/test
Badge

Path parameters

  • connector_id string required

Query parameters

  • organization_id string<uuid>
    Organization to act on, at or below the caller’s. Defaults to the caller’s.

Response 200 OK application/json

  • error string nullable
  • ok boolean

Errors

  • 400 Bad Request (validation or deserialization error)
  • 401 Missing, invalid or expired credentials
  • 403 The caller may not do this
  • 500 Internal Server Error (panics)

Every error returns the standard error body.

Request

curl -X POST 'https://pcp.example.com/api/v1/connectors/{connector_id}/test' \
  -H 'Authorization: Bearer <badge>'

Response 200

{
  "error": "string",
  "ok": true
}