Referensi API

Dokumentasi pengembang untuk akses terprogram ke Architecto

API Architecto memungkinkan Anda membangun aplikasi, integrasi, dan alur kerja khusus di atas platform.

Autentikasi

Semua permintaan API memerlukan autentikasi dengan kunci API:

Authorization: Bearer YOUR_API_KEY

Membuat kunci API

  1. Buka Pengaturan → Pengembang → Kunci API.
  2. Klik Buat kunci baru.
  3. Masukkan nama dan masa berlaku: tidak pernah, 30 hari, 90 hari, atau 1 tahun.
  4. Pilih cakupan baca, tulis, atau admin.
  5. Salin kunci yang hanya ditampilkan sekali.

Jangan pernah membagikan kunci API secara publik. Perlakukan seperti kata sandi.

Mencabut kunci API

  1. Buka Pengaturan → Pengembang → Kunci API.
  2. Klik Cabut di samping kunci.
  3. Pencabutan berlaku langsung.

URL dasar

Semua endpoint tersedia di:

https://api.architecto.dev/v1

Endpoint umum

Autentikasi

POST /auth/login          # Login and get session
POST /auth/logout         # End session
POST /auth/refresh        # Refresh access token

Arsitektur

GET    /architectures              # List your architectures
POST   /architectures              # Create new architecture
GET    /architectures/{id}         # Get architecture details
PUT    /architectures/{id}         # Update architecture
DELETE /architectures/{id}         # Delete architecture
GET    /architectures/{id}/versions # Get version history

Analisis

POST   /architectures/{id}/analyze/cost         # Run cost analysis
POST   /architectures/{id}/analyze/scalability  # Run scalability analysis
POST   /architectures/{id}/analyze/threats      # Run threat modeling

Dokumentasi

POST   /architectures/{id}/documents/rfc        # Generate RFC
POST   /architectures/{id}/documents/adr        # Generate ADR
POST   /architectures/{id}/documents/runbook    # Generate runbook

Berbagi

POST   /architectures/{id}/shares      # Create share link
GET    /shares/{token}                 # Get shared architecture
POST   /shares/{token}/comments        # Add comment to shared arch

Tim

GET    /organizations                  # List your organizations
POST   /organizations                  # Create organization
GET    /organizations/{id}/members     # List team members
POST   /organizations/{id}/invites     # Invite team member

Penanganan kesalahan

Kesalahan API mengembalikan kode status HTTP standar:

{
  "error": {
    "code": "RESOURCE_NOT_FOUND",
    "message": "Architecture with id 'arch_123' not found",
    "details": {
      "resource_type": "architecture",
      "resource_id": "arch_123"
    }
  }
}

Kode status umum

KodeMakna
200Berhasil
400Permintaan tidak valid: parameter salah
401Belum terautentikasi: kunci API tidak valid
403Dilarang: izin tidak mencukupi
404Tidak ditemukan
429Batas permintaan tercapai
500Kesalahan server

Pembatasan permintaan

API menerapkan batas berikut:

  • Paket Free: 100 permintaan per jam.
  • Paket Pro: 1,000 permintaan per jam.
  • Paket Ultimate: 10,000 permintaan per jam.

Informasi batas tercantum dalam header respons:

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200

Contoh: membuat dan menganalisis arsitektur

# 1. Create architecture
curl -X POST https://api.architecto.dev/v1/architectures \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "E-commerce Platform",
    "description": "Multi-region e-commerce with real-time inventory",
    "cloud_provider": "aws"
  }'

# Response:
# {
#   "id": "arch_abc123",
#   "title": "E-commerce Platform",
#   "created_at": "2024-01-15T10:30:00Z"
# }

# 2. Run cost analysis
curl -X POST https://api.architecto.dev/v1/architectures/arch_abc123/analyze/cost \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "scale_points": [1000, 10000, 100000],
    "region": "us-east-1"
  }'

# Response:
# {
#   "analysis_id": "analysis_xyz789",
#   "estimates": [
#     {
#       "users": 1000,
#       "monthly_cost": 150,
#       "breakdown": { "compute": 80, "storage": 40, "data_transfer": 30 }
#     },
#     ...
#   ]
# }

Webhook: segera hadir

Berlangganan peristiwa arsitektur:

POST /webhooks
{
  "url": "https://your-app.com/webhook",
  "events": ["architecture.created", "architecture.updated", "analysis.completed"]
}

SDK

SDK resmi akan tersedia untuk:

  • Python
  • Node.js / TypeScript
  • Go
  • Ruby
  • Java

Dokumentasi API interaktif

Coba API tanpa menulis kode:

Dukungan


Langkah berikutnya:

Referensi API | Dokumentasi | Architecto