Audit Logs'a giriş
Workspace'inizde gerçekleştirilen eylemlerin kaydını alın — kim, neyi, ne zaman ve nereden yaptı.
Audit Logs API şu amaçlarla kullanılabilir:
- Workspace etkinlik verilerini SIEM veya diğer izleme araçlarınıza beslemek
- Workspace ayarları ve model yapılandırmasından iş akışlarına, skill ve action erişimine, rol değişikliklerine, başarısız oturum açma denemelerine ve daha fazlasına kadar organizasyon genelindeki değişiklikleri izlemek
- Workspace etkinliği için özel paneller ve raporlar oluşturmak
Önkoşullar
Audit Logs API'yi kullanmak için şunlara ihtiyacınız vardır:
- Workspace Admin Permission: Yalnızca workspace yöneticileri audit log izinlerine sahip API anahtarları oluşturabilir.
- API Key with
AUDIT_LOG_APIScope: API anahtarınızda özel audit log kapsamı etkin olmalıdır. Workspace ayarlarınızda Settings > API üzerinden oluşturun.
Önemli güvenlik uyarısı: AUDIT_LOG_API kapsamına sahip bir API anahtarına erişimi olan kullanıcılar, IP adresleri, kullanıcı eylemleri ve yapılandırma değişiklikleri dahil workspace'in tüm audit log verilerini okuyabilir. Bu izni yalnızca güvenilir kullanıcılara verin.
Saklama süresi
Audit log kayıtları 90 gün saklanır. İhtiyacınız olan verileri süresi dolmadan dışa aktardığınızdan veya ilettiğinizden emin olun.
Kullanılabilir endpoint
GET /audit-logs/{workspace_id}Authentication
Tüm API istekleri Bearer token kimlik doğrulaması gerektirir:
Authorization: Bearer YOUR_API_KEYAudit Log Entry
Her audit log kaydı, bir actor'ın bir entity üzerinde bir action gerçekleştirdiğini açıklar. Her kayıtta şunlar bulunur:
| Field | Description |
|---|---|
actor_id, actor_type, actor_name | Eylemi kim gerçekleştirdi. Actor türleri: USER, API_KEY, SYSTEM, SCIM |
action | Ne olduğu, nokta notasyonuyla (ör. user.updated, workspace.created, model_config.updated, workflow.created, api_keys.deleted) |
entity_type, entity_id | Hangi kaynağın etkilendiği (ör. User, Workspace, Group, IntegrationConnection, ModelConfig, Workflow, SkillAccess, ActionAccess) |
created_at | Olayın gerçekleştiği zaman |
ip_address, user_agent | İsteğin nereden geldiği |
changes | Değişen alanların before/after farkı (güncelleme olayları için) |
snapshot | Tam entity anlık görüntüsü veya ek olay meta verisi (ör. silme/oluşturma olaylarında veya başarısız oturum açma ayrıntıları gibi ek bağlam) |
Pagination
API cursor tabanlı sayfalama kullanır. Her yanıt bir next_cursor alanı içerir — sonraki sayfayı almak için bunu bir sonraki istekte cursor sorgu parametresi olarak geçirin. next_cursor null olduğunda sona ulaşmışsınızdır.
# First request
curl "https://api.ajan.io/audit-logs/{workspace_id}?limit=50" \
-H "Authorization: Bearer YOUR_API_KEY"
# Next page
curl "https://api.ajan.io/audit-logs/{workspace_id}?limit=50&cursor={next_cursor}" \
-H "Authorization: Bearer YOUR_API_KEY"Filtering
Sonuçları sorgu parametreleriyle daraltabilirsiniz:
| Parameter | Type | Description |
|---|---|---|
from | datetime | Tarih aralığının başlangıcı (ISO 8601) |
to | datetime | Tarih aralığının bitişi (ISO 8601) |
entity_type | string | Entity türüne göre filtrele (ör. User, Workspace) |
actor_id | uuid | Eylemi gerçekleştiren actor'a göre filtrele |
limit | integer | Sayfa başına öğe (varsayılan 50, maks. 50) |
cursor | uuid | Sayfalama için önceki yanıttaki cursor |
Error Handling
| Status Code | Description |
|---|---|
400 | Geçersiz istek parametreleri (ör. hatalı tarih, geçersiz UUID) |
401 | Eksik veya geçersiz API anahtarı |
403 | API anahtarında AUDIT_LOG_API kapsamı yok veya workspace_id eşleşmiyor |
429 | Rate limit aşıldı — bekleyip yeniden deneyin |
500 | İç sunucu hatası |
ajan, API anahtarınızı korumak ve uygulamalarınızın güvenliğini sağlamak için tarayıcı kaynaklı istekleri bilinçli olarak engeller. Daha fazla bilgi için API Key Best Practices kılavuzuna bakın.