curl https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/ppl_abc123def456/schema \
-H "Authorization: Bearer $ATAI_API_KEY"
import requests
import os
api_key = os.environ.get("ATAI_API_KEY")
pipeline_id = "ppl_abc123def456"
response = requests.get(
f"https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/{pipeline_id}/schema",
headers={"Authorization": f"Bearer {api_key}"}
)
schema = response.json()
print(f"Pipeline: {schema['pipeline_key']} v{schema['pipeline_version']}")
print(f"Inputs: {list(schema['inputs'].keys())}")
print(f"Outputs: {list(schema['outputs'].keys())}")
print(f"User schema: {schema['user_schema']}")
const pipelineId = 'ppl_abc123def456';
const response = await fetch(`https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/${pipelineId}/schema`, {
headers: {
'Authorization': `Bearer ${process.env.ATAI_API_KEY}`
}
});
const schema = await response.json();
console.log(`Pipeline: ${schema.pipeline_key} v${schema.pipeline_version}`);
console.log('Inputs:', Object.keys(schema.inputs));
console.log('Outputs:', Object.keys(schema.outputs));
console.log('User schema:', JSON.stringify(schema.user_schema, null, 2));
{
"id": "ppl_abc123def456",
"pipeline_key": "machine-state-classification",
"pipeline_version": "1.1.1",
"user_schema": {
"type": "object",
"properties": {
"model_type": {
"type": "string",
"description": "Omega model variant used to generate embeddings.",
"enum": ["omega_1_4_base", "omega_1_3_surface", "omega_1_3_power_drive"],
"default": "omega_1_4_base"
},
"batch_size": {
"type": "integer",
"description": "Number of windows processed together in a single batch.",
"default": 32,
"minimum": 1
},
"classifier_config": {
"type": "object",
"properties": {
"n_neighbors": {"type": "integer", "minimum": 3, "default": 5},
"metric": {"type": "string", "enum": ["euclidean", "cosine", "manhattan"], "default": "euclidean"},
"weights": {"type": "string", "enum": ["uniform", "distance"], "default": "uniform"},
"normalize_embeddings": {"type": "boolean", "default": false}
}
}
}
},
"config_schema": {},
"inputs": {
"worker.inference": {
"name": "Input files",
"description": "CSV files for machine-state classification",
"mode": "plain_file_list",
"distribute": "scatter",
"required": true,
"tracked": true
},
"worker.n_shots": {
"name": "N-Shot example files",
"description": "Labeled few-shot training files (class declared via input metadata)",
"mode": "n_shot_file_list",
"distribute": "replicate",
"required": true,
"tracked": false
}
},
"outputs": {
"worker.results": {
"name": "Output files",
"description": "Machine-state classification results"
}
}
}
{
"code": "NOT_FOUND",
"message": "Pipeline not found",
"error_uid": "err_abc123"
}
{
"detail": "Invalid access with key: api_key_not_found"
}
Registry
Get Pipeline Schema
Retrieve the configuration schema for a specific pipeline
GET
/
batch
/
registry
/
pipelines
/
{id}
/
schema
curl https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/ppl_abc123def456/schema \
-H "Authorization: Bearer $ATAI_API_KEY"
import requests
import os
api_key = os.environ.get("ATAI_API_KEY")
pipeline_id = "ppl_abc123def456"
response = requests.get(
f"https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/{pipeline_id}/schema",
headers={"Authorization": f"Bearer {api_key}"}
)
schema = response.json()
print(f"Pipeline: {schema['pipeline_key']} v{schema['pipeline_version']}")
print(f"Inputs: {list(schema['inputs'].keys())}")
print(f"Outputs: {list(schema['outputs'].keys())}")
print(f"User schema: {schema['user_schema']}")
const pipelineId = 'ppl_abc123def456';
const response = await fetch(`https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/${pipelineId}/schema`, {
headers: {
'Authorization': `Bearer ${process.env.ATAI_API_KEY}`
}
});
const schema = await response.json();
console.log(`Pipeline: ${schema.pipeline_key} v${schema.pipeline_version}`);
console.log('Inputs:', Object.keys(schema.inputs));
console.log('Outputs:', Object.keys(schema.outputs));
console.log('User schema:', JSON.stringify(schema.user_schema, null, 2));
{
"id": "ppl_abc123def456",
"pipeline_key": "machine-state-classification",
"pipeline_version": "1.1.1",
"user_schema": {
"type": "object",
"properties": {
"model_type": {
"type": "string",
"description": "Omega model variant used to generate embeddings.",
"enum": ["omega_1_4_base", "omega_1_3_surface", "omega_1_3_power_drive"],
"default": "omega_1_4_base"
},
"batch_size": {
"type": "integer",
"description": "Number of windows processed together in a single batch.",
"default": 32,
"minimum": 1
},
"classifier_config": {
"type": "object",
"properties": {
"n_neighbors": {"type": "integer", "minimum": 3, "default": 5},
"metric": {"type": "string", "enum": ["euclidean", "cosine", "manhattan"], "default": "euclidean"},
"weights": {"type": "string", "enum": ["uniform", "distance"], "default": "uniform"},
"normalize_embeddings": {"type": "boolean", "default": false}
}
}
}
},
"config_schema": {},
"inputs": {
"worker.inference": {
"name": "Input files",
"description": "CSV files for machine-state classification",
"mode": "plain_file_list",
"distribute": "scatter",
"required": true,
"tracked": true
},
"worker.n_shots": {
"name": "N-Shot example files",
"description": "Labeled few-shot training files (class declared via input metadata)",
"mode": "n_shot_file_list",
"distribute": "replicate",
"required": true,
"tracked": false
}
},
"outputs": {
"worker.results": {
"name": "Output files",
"description": "Machine-state classification results"
}
}
}
{
"code": "NOT_FOUND",
"message": "Pipeline not found",
"error_uid": "err_abc123"
}
{
"detail": "Invalid access with key: api_key_not_found"
}
Requires version 1.1.0 or later of the Archetype platform.
Overview
This endpoint returns the configuration schema for a specific pipeline, including the user-facing JSON Schema, full config schema, and input/output port definitions. Use this to understand what parameters a pipeline accepts before creating a job.Request
string
required
The unique pipeline identifier
Response
string
Pipeline identifier
string
Pipeline key
string
Pipeline version
object
User-facing JSON Schema describing the configurable parameters for this pipeline (pretty-printed JSON)
object
Full JSON Schema for the pipeline configuration
object
Input port definitions, each with
name, description, mode (plain_file_list or n_shot_file_list), distribute (scatter or replicate), required (bool), and tracked (bool — false for reference/n-shot ports whose inputs land in the terminal reference status).object
Output port definitions, each with
name and description fieldscurl https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/ppl_abc123def456/schema \
-H "Authorization: Bearer $ATAI_API_KEY"
import requests
import os
api_key = os.environ.get("ATAI_API_KEY")
pipeline_id = "ppl_abc123def456"
response = requests.get(
f"https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/{pipeline_id}/schema",
headers={"Authorization": f"Bearer {api_key}"}
)
schema = response.json()
print(f"Pipeline: {schema['pipeline_key']} v{schema['pipeline_version']}")
print(f"Inputs: {list(schema['inputs'].keys())}")
print(f"Outputs: {list(schema['outputs'].keys())}")
print(f"User schema: {schema['user_schema']}")
const pipelineId = 'ppl_abc123def456';
const response = await fetch(`https://api.u1.archetypeai.app/v0.5/batch/registry/pipelines/${pipelineId}/schema`, {
headers: {
'Authorization': `Bearer ${process.env.ATAI_API_KEY}`
}
});
const schema = await response.json();
console.log(`Pipeline: ${schema.pipeline_key} v${schema.pipeline_version}`);
console.log('Inputs:', Object.keys(schema.inputs));
console.log('Outputs:', Object.keys(schema.outputs));
console.log('User schema:', JSON.stringify(schema.user_schema, null, 2));
{
"id": "ppl_abc123def456",
"pipeline_key": "machine-state-classification",
"pipeline_version": "1.1.1",
"user_schema": {
"type": "object",
"properties": {
"model_type": {
"type": "string",
"description": "Omega model variant used to generate embeddings.",
"enum": ["omega_1_4_base", "omega_1_3_surface", "omega_1_3_power_drive"],
"default": "omega_1_4_base"
},
"batch_size": {
"type": "integer",
"description": "Number of windows processed together in a single batch.",
"default": 32,
"minimum": 1
},
"classifier_config": {
"type": "object",
"properties": {
"n_neighbors": {"type": "integer", "minimum": 3, "default": 5},
"metric": {"type": "string", "enum": ["euclidean", "cosine", "manhattan"], "default": "euclidean"},
"weights": {"type": "string", "enum": ["uniform", "distance"], "default": "uniform"},
"normalize_embeddings": {"type": "boolean", "default": false}
}
}
}
},
"config_schema": {},
"inputs": {
"worker.inference": {
"name": "Input files",
"description": "CSV files for machine-state classification",
"mode": "plain_file_list",
"distribute": "scatter",
"required": true,
"tracked": true
},
"worker.n_shots": {
"name": "N-Shot example files",
"description": "Labeled few-shot training files (class declared via input metadata)",
"mode": "n_shot_file_list",
"distribute": "replicate",
"required": true,
"tracked": false
}
},
"outputs": {
"worker.results": {
"name": "Output files",
"description": "Machine-state classification results"
}
}
}
{
"code": "NOT_FOUND",
"message": "Pipeline not found",
"error_uid": "err_abc123"
}
{
"detail": "Invalid access with key: api_key_not_found"
}
Use the
user_schema field to understand what parameters you can pass in the config field when creating a job. This schema describes the user-configurable options for each pipeline component.Was this page helpful?
⌘I