اتوماسیون
اتوماسیون و API
Automation and API
APIهای NetBox شامل REST API، GraphQL و اتوماسیون با ابزارهای DevOps
مدلهای داده
قابلیتها
REST API
GraphQL API
Webhook
NetBox Shell
نمای کلی
NetBox با APIهای قدرتمند، اتوماسیون کامل را فراهم میکند
پشتیبانی از REST API، GraphQL و Webhook
موارد استفاده
یکپارچهسازی با Ansible، Terraform
اتوماسیون مستندسازی
یکپارچهسازی با سیستمهای اتوماسیون
مدلهای داده
| نام مدل | تعداد | توضیحات |
|---|
قابلیتها
REST API
API مبتنی بر REST با پشتیبانی کامل
GraphQL API
Query قدرتمند GraphQL
Webhook
Webhook برای اطلاعرسانی تغییرات
NetBox Shell
پوسته Python برای اسکریپتنویسی
مثالها
PYTHON
استفاده از pynetbox
import pynetbox
nb = pynetbox.api(
'https://netbox.example.com',
token='your-token'
)
# دریافت Prefixها
prefixes = nb.ipam.prefixes.all()
# ثبت IP Address
ip = nb.ipam.ip_addresses.create(
{
'address': '192.168.1.10/24',
'status': 'active'
}
)YAML
یکپارچهسازی با Ansible
---
- hosts: localhost
tasks:
- name: دریافت Prefixها از NetBox
netbox.netbox.nb_inventory:
netbox_url: https://netbox.example.com
netbox_token: your-token
register: resultنمونه API
GET
/api/درخواست
GET /api/پاسخ
{"ipam": "/api/ipam/", "dcim": "/api/dcim/", "virtualization": "/api/virtualization/", ...}POST
/api/ipam/prefixes/درخواست
POST /api/ipam/prefixes/
{
"prefix": "192.168.1.0/24",
"status": "active"
}پاسخ
{"id": 123, "prefix": "192.168.1.0/24", "status": "active", ...}بهترین روشها
استفاده از API Token با دسترسی محدود
کش کردن دادهها برای کاهش درخواست API
استفاده از Webhook برای اطلاعرسانی تغییرات
اشتباهات رایج
فراموشی Token در درخواست API
دریافت داده بدون پیجینیشن برای مجموعه بزرگ
سوالات متداول
تفاوت REST API و GraphQL چیست؟
REST API برای عملیات ساده است. GraphQL برای queryهای پیچیده و دادههای مرتبط است.
ماژولهای مرتبط
آیا به راهنمایی نیاز دارید؟
تیم متخصص NetBoxPro آماده کمک در پیادهسازی این ماژول در سازمان شماست
درخواست مشاوره رایگان