Use Cases Controls
Manage controls associated with use cases.
Methods
list
List Use Case Controls List all controls attached to a use case.
Controls come from policy packs attached to the use case. Optionally filter by model_id or policy_pack_key.
- Python
- TypeScript
use_case_id = "use_case_id-123"
response = client.use_case_controls.list(
use_case_id=use_case_id,
)
const { data, error } = await client.useCases.controls.list('use_case_id-123');
Parameters:
use_case_id(str, required) - Resource identifier
Returns: Response object
get
Get Use Case Control Get a specific control attached to a use case.
- Python
- TypeScript
use_case_id = "use_case_id-123"
control_id = "control_id-123"
response = client.use_case_controls.get(
use_case_id=use_case_id,
control_id=control_id,
)
const { data, error } = await client.useCases.controls.get('use_case_id-123', 'control_id-123');
Parameters:
use_case_id(str, required) - Resource identifiercontrol_id(str, required) - Resource identifier
Returns: Response object
update
Update Use Case Control Update a control attached to a use case.
Allows updating due_date, timezone, assigned user_ids, and team_ids.
- Python
- TypeScript
from credoai import UseCaseControlUpdate
use_case_id = "use_case_id-123"
control_id = "control_id-123"
data = UseCaseControlUpdate(
id="controls-456"
)
response = client.use_case_controls.update(
use_case_id=use_case_id,
control_id=control_id,
data=data,
)
const { data, error } = await client.useCases.controls.update(
'use_case_id-123',
'control_id-123',
{ id: 'controls-456' },
);
Parameters:
use_case_id(str, required) - Resource identifiercontrol_id(str, required) - Resource identifierdata(UseCaseControlUpdate, required) - Request payload
Returns: Response object
Example: Working with Use Cases Controls
- Python
- TypeScript
from credoai import CredoAI, RelationshipAdd
client = CredoAI()
# List controls for a use_case
controls = client.use_case_controls.list(use_case_id="use_case-123")
for item in controls.items:
print(f"\\\\{item.id}")
# Add a control
client.use_case_controls.add(
use_case_id="use_case-123",
data=RelationshipAdd(id="control-456")
)
# Remove a control
client.use_case_controls.remove(
use_case_id="use_case-123",
control_id="control-456"
)
import { createCredoAIClient } from '@credo-ai/sdk';
const client = createCredoAIClient('your-tenant');
// List controls for a use_case
const { data } = await client.useCases.controls.list('use_case-123');
for (const item of data.items) {
console.log(item.id);
}
// Get a specific control
const { data: control } = await client.useCases.controls.get('use_case-123', 'control-456');
console.log(control.id);
// Update a control
await client.useCases.controls.update('use_case-123', 'control-456', {
id: 'control-456',
});