import { WebApiSDK } from "@parable-platform/web-api-sdk";
const sdk = new WebApiSDK({
baseUrl: process.env.PARABLE_API_URL!,
auth: { token: process.env.PARABLE_API_TOKEN! },
requestInterceptor: (config) => ({
...config,
headers: { ...config.headers, "X-Tenant": process.env.PARABLE_WORKSPACE! },
}),
});
const query = {
"file": "example"
};
const result = await sdk.parableArtifacts.viewParableArtifact(
"example",
query
);import os
from parable_web_api_sdk import ClientConfig, WebApiSDK
sdk = WebApiSDK(
ClientConfig(
base_url=os.environ["PARABLE_API_URL"],
auth_token=os.environ["PARABLE_API_TOKEN"],
default_headers={"X-Tenant": os.environ["PARABLE_WORKSPACE"]},
)
)
result = sdk.parable_artifacts.view_parable_artifact('example', file='example')use parable_web_api_sdk::{namespaces, ClientConfig, RequestOptions, WebApiSdk};
let sdk = WebApiSdk::new(ClientConfig::with_base_url(
std::env::var("PARABLE_API_URL")?,
Some(std::env::var("PARABLE_API_TOKEN")?),
None,
))?;
let options = RequestOptions::with_header("X-Tenant", std::env::var("PARABLE_WORKSPACE")?, None, None);
let query = namespaces::parable_artifacts::ViewParableArtifactQueryParams {
file: serde_json::from_value(serde_json::json!("example"))?,
};
let result = sdk.parable_artifacts.view_parable_artifact(
serde_json::from_value(serde_json::json!("example"))?,
Some(&query),
Some(&options)
).await?;sdk, err := webapisdk.New(webapisdk.SDKConfig{
BaseURL: os.Getenv("PARABLE_API_URL"),
Auth: &webapisdk.AuthConfig{Token: os.Getenv("PARABLE_API_TOKEN")},
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
}
var queryValue namespaces.ParableArtifactsViewParableArtifactQueryParams
if err := json.Unmarshal([]byte(`{"file":"example"}`), &queryValue); err != nil {
return err
}
query := &queryValue
result, err := sdk.ParableArtifactsNamespace.ViewParableArtifact(ctx, "example", query){
"data": {
"notice": "<string>",
"status": "ready",
"artifact": {
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"fileName": "<string>",
"fileSize": 4503599627370495,
"fileType": "csv",
"id": "<string>",
"kind": "image",
"madeByPonder": true,
"schemaInferenceStatus": "not_requested",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "<string>",
"uploadStatus": "pending",
"analysisWork": {
"artifactId": "<string>",
"state": "PENDING",
"workId": "<string>",
"errorCode": "INVALID_SOURCE",
"errorMessage": "<string>",
"tapId": "<string>"
},
"attributedTapId": "<string>",
"dataSchema": {},
"deletedAt": "2023-11-07T05:31:56Z",
"familyName": "<string>",
"media": {
"design": {
"hasThumbnail": true
},
"font": {
"axes": [
{
"default": 123,
"max": 123,
"min": 123,
"tag": "<string>"
}
],
"family": "<string>",
"instances": [
{
"coordinates": [
{
"tag": "<string>",
"value": 123
}
],
"name": "<string>"
}
],
"italic": true,
"revision": 123,
"subfamily": "<string>",
"weight": 0,
"width": 0,
"fullName": "<string>",
"postscriptName": "<string>",
"sampleText": "<string>"
},
"image": {
"animated": true,
"height": 0,
"width": 0
},
"video": {
"codec": "<string>",
"durationMs": 0,
"height": 0,
"width": 0
}
},
"parableId": "<string>",
"path": "<string>",
"publishWork": {
"artifactId": "<string>",
"state": "PENDING",
"workId": "<string>",
"errorCode": "INVALID_SOURCE",
"errorMessage": "<string>",
"tapId": "<string>"
},
"rowCount": 0,
"tableAddress": "<string>",
"tableSchema": {},
"uploadExpiresAt": "2023-11-07T05:31:56Z",
"uploadedBy": {
"email": "jsmith@example.com",
"id": "<string>",
"name": "<string>"
}
},
"image": {
"data": "<string>",
"fileName": "<string>",
"mediaType": "<string>"
},
"markup": "<string>",
"omitted": "<string>",
"recovery": "<string>",
"sample": {
"rows": [
{}
],
"schema": {},
"truncated": true,
"inference": {
"columnMetadata": [
{
"confidence": "low",
"demoted": true,
"fieldPath": "<string>",
"sampleFailures": 0,
"sampleSeen": 0,
"firstSampleError": "<string>"
}
],
"model": "<string>",
"schema": {},
"tokenInputCount": 0,
"tokenOutputCount": 0,
"processor": "VERTEX"
}
},
"sampleRowCount": 0
},
"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>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}View a Parable Artifact
Shows one file of a Parable to a model. An image is at most 3,932,160 bytes and 8,000 pixels a side, in PNG, JPEG, WebP or GIF. Past that, the answer gives the file’s facts and says so. An SVG comes back as its markup, and a data file as its columns and sample rows, cut to fit an answer of fewer than 40,000 characters. A name that matches no file, or more than one, gets not_found and the files with their ids. A file is shown only to a caller who could see it in the Piece tree. Pass the rootRefId of the Parable.
import { WebApiSDK } from "@parable-platform/web-api-sdk";
const sdk = new WebApiSDK({
baseUrl: process.env.PARABLE_API_URL!,
auth: { token: process.env.PARABLE_API_TOKEN! },
requestInterceptor: (config) => ({
...config,
headers: { ...config.headers, "X-Tenant": process.env.PARABLE_WORKSPACE! },
}),
});
const query = {
"file": "example"
};
const result = await sdk.parableArtifacts.viewParableArtifact(
"example",
query
);import os
from parable_web_api_sdk import ClientConfig, WebApiSDK
sdk = WebApiSDK(
ClientConfig(
base_url=os.environ["PARABLE_API_URL"],
auth_token=os.environ["PARABLE_API_TOKEN"],
default_headers={"X-Tenant": os.environ["PARABLE_WORKSPACE"]},
)
)
result = sdk.parable_artifacts.view_parable_artifact('example', file='example')use parable_web_api_sdk::{namespaces, ClientConfig, RequestOptions, WebApiSdk};
let sdk = WebApiSdk::new(ClientConfig::with_base_url(
std::env::var("PARABLE_API_URL")?,
Some(std::env::var("PARABLE_API_TOKEN")?),
None,
))?;
let options = RequestOptions::with_header("X-Tenant", std::env::var("PARABLE_WORKSPACE")?, None, None);
let query = namespaces::parable_artifacts::ViewParableArtifactQueryParams {
file: serde_json::from_value(serde_json::json!("example"))?,
};
let result = sdk.parable_artifacts.view_parable_artifact(
serde_json::from_value(serde_json::json!("example"))?,
Some(&query),
Some(&options)
).await?;sdk, err := webapisdk.New(webapisdk.SDKConfig{
BaseURL: os.Getenv("PARABLE_API_URL"),
Auth: &webapisdk.AuthConfig{Token: os.Getenv("PARABLE_API_TOKEN")},
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
}
var queryValue namespaces.ParableArtifactsViewParableArtifactQueryParams
if err := json.Unmarshal([]byte(`{"file":"example"}`), &queryValue); err != nil {
return err
}
query := &queryValue
result, err := sdk.ParableArtifactsNamespace.ViewParableArtifact(ctx, "example", query){
"data": {
"notice": "<string>",
"status": "ready",
"artifact": {
"createdAt": "2023-11-07T05:31:56Z",
"createdBy": "<string>",
"fileName": "<string>",
"fileSize": 4503599627370495,
"fileType": "csv",
"id": "<string>",
"kind": "image",
"madeByPonder": true,
"schemaInferenceStatus": "not_requested",
"updatedAt": "2023-11-07T05:31:56Z",
"updatedBy": "<string>",
"uploadStatus": "pending",
"analysisWork": {
"artifactId": "<string>",
"state": "PENDING",
"workId": "<string>",
"errorCode": "INVALID_SOURCE",
"errorMessage": "<string>",
"tapId": "<string>"
},
"attributedTapId": "<string>",
"dataSchema": {},
"deletedAt": "2023-11-07T05:31:56Z",
"familyName": "<string>",
"media": {
"design": {
"hasThumbnail": true
},
"font": {
"axes": [
{
"default": 123,
"max": 123,
"min": 123,
"tag": "<string>"
}
],
"family": "<string>",
"instances": [
{
"coordinates": [
{
"tag": "<string>",
"value": 123
}
],
"name": "<string>"
}
],
"italic": true,
"revision": 123,
"subfamily": "<string>",
"weight": 0,
"width": 0,
"fullName": "<string>",
"postscriptName": "<string>",
"sampleText": "<string>"
},
"image": {
"animated": true,
"height": 0,
"width": 0
},
"video": {
"codec": "<string>",
"durationMs": 0,
"height": 0,
"width": 0
}
},
"parableId": "<string>",
"path": "<string>",
"publishWork": {
"artifactId": "<string>",
"state": "PENDING",
"workId": "<string>",
"errorCode": "INVALID_SOURCE",
"errorMessage": "<string>",
"tapId": "<string>"
},
"rowCount": 0,
"tableAddress": "<string>",
"tableSchema": {},
"uploadExpiresAt": "2023-11-07T05:31:56Z",
"uploadedBy": {
"email": "jsmith@example.com",
"id": "<string>",
"name": "<string>"
}
},
"image": {
"data": "<string>",
"fileName": "<string>",
"mediaType": "<string>"
},
"markup": "<string>",
"omitted": "<string>",
"recovery": "<string>",
"sample": {
"rows": [
{}
],
"schema": {},
"truncated": true,
"inference": {
"columnMetadata": [
{
"confidence": "low",
"demoted": true,
"fieldPath": "<string>",
"sampleFailures": 0,
"sampleSeen": 0,
"firstSampleError": "<string>"
}
],
"model": "<string>",
"schema": {},
"tokenInputCount": 0,
"tokenOutputCount": 0,
"processor": "VERTEX"
}
},
"sampleRowCount": 0
},
"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>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}{
"detail": "<string>",
"status": 400,
"title": "Bad Request",
"type": "about:blank",
"code": "WA-VL-001",
"details": "<unknown>",
"errors": "<unknown>",
"requestId": "<string>"
}View a Parable Artifact
view_parable_artifactAuthorizations
A personal access token, which starts with pat_. A Parable token can call each operation that the roles of its owner allow. An MCP token can call only the read operations that are open to agents. A SQL token does not work on this API.
Headers
Workspace slug. Overrides subdomain-based workspace resolution when provided.
"acme"
Optional request correlation ID echoed back in the response.
"550e8400-e29b-41d4-a716-446655440000"
Path Parameters
rootRefId parameter UUID v4 with automatic base62 encoding for client-facing APIs
Query Parameters
1 - 255Response
Successful response
One file of a Parable as a model reads it. The answer holds the file's bytes when they fit, and never an address for them: a signed download URL stays in web-api. Apart from its image, an answer is fewer than 40,000 characters.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Was this page helpful?