Python SDK
import os
from parable_web_api_sdk import ClientConfig, WebApiSDK
sdk = WebApiSDK(
ClientConfig(
base_url=os.environ["PARABLE_API_URL"],
default_headers={"X-Tenant": os.environ["PARABLE_WORKSPACE"]},
)
)
result = sdk.vendors.provider_directory()sdk, err := webapisdk.New(webapisdk.SDKConfig{
BaseURL: os.Getenv("PARABLE_API_URL"),
RequestInterceptor: func(ctx context.Context, req *http.Request) error {
req.Header.Set("X-Tenant", os.Getenv("PARABLE_WORKSPACE"))
return nil
},
})
if err != nil {
return err
}
result, err := sdk.VendorsNamespace.ProviderDirectory(ctx){
"data": [
{
"connectorId": "<string>",
"groupingIds": [
"<string>"
],
"groupingPath": "<string>",
"id": "<string>",
"name": "<string>",
"releaseStage": "ga",
"vendor": {
"groupings": [
{
"breadcrumbs": [
"<string>"
],
"groupings": "<array>",
"id": "<string>",
"isLeaf": true,
"name": "<string>",
"releaseStage": "ga",
"slug": "<string>",
"sortOrder": 0,
"vendor": "<unknown>",
"connectorId": "<string>",
"connectorReleaseStatus": "draft",
"connectorSlug": "<string>",
"description": "<string>",
"docs": "<string>",
"externalVersion": "<string>",
"groupingPath": "<string>",
"ingestionConfigSchema": {},
"integrationClass": "api",
"logo": {},
"parableVersion": "<string>",
"parent": "<unknown>",
"priority": "required",
"protocolType": "<string>",
"supportedAuthStrategies": [
{
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"id": "<string>",
"type": "bearer",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "<string>",
"addressingConfig": {
"basePath": "<string>",
"host": "<string>",
"scheme": "<string>",
"variables": [
{
"name": "<string>",
"source": "<string>",
"oauthResponsePath": "<string>",
"required": true
}
]
},
"apiKeyConfig": {
"credentialHeaders": {},
"headerName": "<string>",
"queryParam": "<string>"
},
"basicConfig": {
"passwordField": "<string>",
"usernameField": "<string>",
"passwordValue": "<string>"
},
"bearerConfig": {
"headerName": "<string>",
"tokenField": "<string>",
"tokenPrefix": "<string>"
},
"configSchema": {},
"credentialProbe": {
"operations": [
{
"id": "<string>",
"outcomes": [
{
"all": [
{
"operator": "equals",
"source": {
"namespace": "credential",
"path": "<string>"
},
"expected": "<unknown>"
}
],
"outcome": "success",
"reason": "<string>"
}
],
"request": {
"allowedHostSuffixes": [
"<string>"
],
"auth": {
"mode": "none",
"password": "<string>",
"username": "<string>"
},
"endpoint": "<string>",
"method": "GET",
"allowedConfiguredHost": "<string>",
"defaults": {},
"fallbackEndpoint": "<string>",
"headers": {},
"queryParams": {},
"replaySafe": true,
"requestBody": "<unknown>"
},
"extracts": [
{
"name": "<string>",
"source": {
"namespace": "credential",
"path": "<string>"
},
"type": "string",
"secret": true
}
],
"invocation": {
"forEach": {
"namespace": "credential",
"path": "<string>"
},
"itemName": "<string>",
"aggregation": "all_success",
"maxItems": 0
}
}
],
"maxRequests": 0,
"signedTokens": [
{
"algorithm": "HS256",
"claims": "<unknown>",
"key": "<string>",
"lifetimeSeconds": 0,
"name": "<string>",
"headers": {}
}
],
"timeoutSeconds": 0,
"writebacks": [
{
"extract": "<string>",
"operation": "<string>",
"target": "<string>"
}
]
},
"defaultBaseUrl": "<string>",
"defaultScopes": [
"<string>"
],
"delegatedUserField": "<string>",
"docs": "<string>",
"extraHeaders": {},
"hook": "<string>",
"ingestionConfigSchema": {},
"label": "<string>",
"oauth2Config": {
"tokenEndpoint": "<string>",
"audienceParam": "<string>",
"authorizeUrl": "<string>",
"grantType": "client_credentials",
"passwordField": "<string>",
"platformManagedClient": true,
"resourceHeaders": {},
"scopes": [
"<string>"
],
"tokenBodyEncoding": "json",
"tokenEndpointAuthMethod": "client_secret_basic",
"tokenEndpointExtraParams": "<unknown>",
"tokenPrefix": "<string>",
"tokenReadinessDelaySeconds": 5,
"tokenRefreshCodes": [
499
],
"tokenResponsePath": "<string>",
"usernameField": "<string>"
},
"preEncodedBasicConfig": {
"tokenField": "<string>"
},
"support": "supported"
}
],
"supportedInboundAuthStrategies": [
{
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"handshakeKind": "none",
"id": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "<string>",
"verificationType": "hmac_sha256",
"configSchema": {},
"label": "<string>",
"replayWindowSeconds": 4503599627370495,
"signatureBase": "<string>",
"signatureHeader": "<string>",
"timestampHeader": "<string>"
}
]
}
],
"id": "<string>",
"name": "<string>",
"slug": "<string>",
"sortOrder": 0,
"description": "<string>",
"logo": {}
},
"description": "<string>",
"logo": {},
"priority": "required"
}
],
"meta": {
"requestId": "<string>",
"totalCount": 123
},
"links": {
"first": "<string>",
"last": "<string>",
"next": "<string>",
"prev": "<string>"
}
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}Too Many Requests{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}Gateway TimeoutList Provider products
Returns the complete visible product catalog without setup documentation or authentication schemas. Workspace priorities apply when Workspace context is present.
GET
/
api
/
vendors
/
provider-directory
Python SDK
import os
from parable_web_api_sdk import ClientConfig, WebApiSDK
sdk = WebApiSDK(
ClientConfig(
base_url=os.environ["PARABLE_API_URL"],
default_headers={"X-Tenant": os.environ["PARABLE_WORKSPACE"]},
)
)
result = sdk.vendors.provider_directory()sdk, err := webapisdk.New(webapisdk.SDKConfig{
BaseURL: os.Getenv("PARABLE_API_URL"),
RequestInterceptor: func(ctx context.Context, req *http.Request) error {
req.Header.Set("X-Tenant", os.Getenv("PARABLE_WORKSPACE"))
return nil
},
})
if err != nil {
return err
}
result, err := sdk.VendorsNamespace.ProviderDirectory(ctx){
"data": [
{
"connectorId": "<string>",
"groupingIds": [
"<string>"
],
"groupingPath": "<string>",
"id": "<string>",
"name": "<string>",
"releaseStage": "ga",
"vendor": {
"groupings": [
{
"breadcrumbs": [
"<string>"
],
"groupings": "<array>",
"id": "<string>",
"isLeaf": true,
"name": "<string>",
"releaseStage": "ga",
"slug": "<string>",
"sortOrder": 0,
"vendor": "<unknown>",
"connectorId": "<string>",
"connectorReleaseStatus": "draft",
"connectorSlug": "<string>",
"description": "<string>",
"docs": "<string>",
"externalVersion": "<string>",
"groupingPath": "<string>",
"ingestionConfigSchema": {},
"integrationClass": "api",
"logo": {},
"parableVersion": "<string>",
"parent": "<unknown>",
"priority": "required",
"protocolType": "<string>",
"supportedAuthStrategies": [
{
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"id": "<string>",
"type": "bearer",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "<string>",
"addressingConfig": {
"basePath": "<string>",
"host": "<string>",
"scheme": "<string>",
"variables": [
{
"name": "<string>",
"source": "<string>",
"oauthResponsePath": "<string>",
"required": true
}
]
},
"apiKeyConfig": {
"credentialHeaders": {},
"headerName": "<string>",
"queryParam": "<string>"
},
"basicConfig": {
"passwordField": "<string>",
"usernameField": "<string>",
"passwordValue": "<string>"
},
"bearerConfig": {
"headerName": "<string>",
"tokenField": "<string>",
"tokenPrefix": "<string>"
},
"configSchema": {},
"credentialProbe": {
"operations": [
{
"id": "<string>",
"outcomes": [
{
"all": [
{
"operator": "equals",
"source": {
"namespace": "credential",
"path": "<string>"
},
"expected": "<unknown>"
}
],
"outcome": "success",
"reason": "<string>"
}
],
"request": {
"allowedHostSuffixes": [
"<string>"
],
"auth": {
"mode": "none",
"password": "<string>",
"username": "<string>"
},
"endpoint": "<string>",
"method": "GET",
"allowedConfiguredHost": "<string>",
"defaults": {},
"fallbackEndpoint": "<string>",
"headers": {},
"queryParams": {},
"replaySafe": true,
"requestBody": "<unknown>"
},
"extracts": [
{
"name": "<string>",
"source": {
"namespace": "credential",
"path": "<string>"
},
"type": "string",
"secret": true
}
],
"invocation": {
"forEach": {
"namespace": "credential",
"path": "<string>"
},
"itemName": "<string>",
"aggregation": "all_success",
"maxItems": 0
}
}
],
"maxRequests": 0,
"signedTokens": [
{
"algorithm": "HS256",
"claims": "<unknown>",
"key": "<string>",
"lifetimeSeconds": 0,
"name": "<string>",
"headers": {}
}
],
"timeoutSeconds": 0,
"writebacks": [
{
"extract": "<string>",
"operation": "<string>",
"target": "<string>"
}
]
},
"defaultBaseUrl": "<string>",
"defaultScopes": [
"<string>"
],
"delegatedUserField": "<string>",
"docs": "<string>",
"extraHeaders": {},
"hook": "<string>",
"ingestionConfigSchema": {},
"label": "<string>",
"oauth2Config": {
"tokenEndpoint": "<string>",
"audienceParam": "<string>",
"authorizeUrl": "<string>",
"grantType": "client_credentials",
"passwordField": "<string>",
"platformManagedClient": true,
"resourceHeaders": {},
"scopes": [
"<string>"
],
"tokenBodyEncoding": "json",
"tokenEndpointAuthMethod": "client_secret_basic",
"tokenEndpointExtraParams": "<unknown>",
"tokenPrefix": "<string>",
"tokenReadinessDelaySeconds": 5,
"tokenRefreshCodes": [
499
],
"tokenResponsePath": "<string>",
"usernameField": "<string>"
},
"preEncodedBasicConfig": {
"tokenField": "<string>"
},
"support": "supported"
}
],
"supportedInboundAuthStrategies": [
{
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"handshakeKind": "none",
"id": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "<string>",
"verificationType": "hmac_sha256",
"configSchema": {},
"label": "<string>",
"replayWindowSeconds": 4503599627370495,
"signatureBase": "<string>",
"signatureHeader": "<string>",
"timestampHeader": "<string>"
}
]
}
],
"id": "<string>",
"name": "<string>",
"slug": "<string>",
"sortOrder": 0,
"description": "<string>",
"logo": {}
},
"description": "<string>",
"logo": {},
"priority": "required"
}
],
"meta": {
"requestId": "<string>",
"totalCount": 123
},
"links": {
"first": "<string>",
"last": "<string>",
"next": "<string>",
"prev": "<string>"
}
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}Too Many Requests{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}Gateway TimeoutAccess
This operation needs no token. See Authentication for the kinds of token.Errors
HTTP 500: The product catalog could not be read. Retry the request.
Headers
Workspace slug. Overrides subdomain-based workspace resolution when provided.
Example:
"acme"
Optional request correlation ID echoed back in the response.
Example:
"550e8400-e29b-41d4-a716-446655440000"