Policy Control Bases Versions
Manage versions associated with policy control bases.
Methods
list
List Policy Control Versions List all versions for a policy control base.
Returns a paginated list of versions associated with the specified base.
- Python
- TypeScript
base_id = "base_id-123"
response = client.policy_control_versions.list(
base_id=base_id,
)
const { data, error } = await client.policyControlBases.versions.list('base_id-123');
Parameters:
base_id(str, required) - The policy control base ID
Returns: Response object
create
Create Policy Control Version Create a new version for a policy control base.
Creates a new version in draft state. Versions are automatically numbered.
- Python
- TypeScript
from credoai import PolicyControlVersionCreate
base_id = "base_id-123"
data = PolicyControlVersionCreate(
id="versions-456"
)
response = client.policy_control_versions.create(
base_id=base_id,
data=data,
)
const { data, error } = await client.policyControlBases.versions.create('base_id-123', {
id: 'versions-456',
});
Parameters:
base_id(str, required) - The policy control base IDdata(PolicyControlVersionCreate, required) - Request payload
Returns: Response object
get
Get Policy Control Version Get a specific policy control version by ID.
Version IDs are formatted as {base_id}+{version_number}.
- Python
- TypeScript
version_id = "version_id-123"
response = client.policy_control_versions.get(
version_id=version_id,
)
const { data, error } = await client.policyControlBases.versions.get('version_id-123');
Parameters:
version_id(str, required) - Resource identifier
Returns: Response object
update
Update Policy Control Version Update an existing policy control version.
Only draft versions can be updated. Set draft=false to publish the version.
- Python
- TypeScript
from credoai import PolicyControlVersionUpdate
version_id = "version_id-123"
data = PolicyControlVersionUpdate(
id="versions-456"
)
response = client.policy_control_versions.update(
version_id=version_id,
data=data,
)
const { data, error } = await client.policyControlBases.versions.update('version_id-123', {
id: 'versions-456',
});
Parameters:
version_id(str, required) - Resource identifierdata(PolicyControlVersionUpdate, required) - Request payload
Returns: Response object
delete
Delete Policy Control Version Delete a policy control version.
Only draft versions can be deleted. Published versions cannot be deleted.
- Python
- TypeScript
version_id = "version_id-123"
response = client.policy_control_versions.delete(
version_id=version_id,
)
const { data, error } = await client.policyControlBases.versions.delete('version_id-123');
Parameters:
version_id(str, required) - Resource identifier
Returns: Response object
Example: Working with Policy Control Bases Versions
- Python
- TypeScript
from credoai import CredoAI
client = CredoAI()
# List versions for a policy control base
versions = client.policy_control_versions.list(base_id="policy_control_base-123")
for item in versions.items:
print(f"\\{item.id}")
# Create a version
client.policy_control_versions.create(
base_id="policy_control_base-123",
)
import { createCredoAIClient } from '@credo-ai/sdk';
const client = createCredoAIClient('your-tenant');
// List versions for a policy control base
const { data, error } = await client.policyControlBases.versions.list('policy_control_base-123');
for (const item of data.items) {
console.log(item.id);
}
// Create a version
await client.policyControlBases.versions.create('policy_control_base-123');