Skip to main content

SDK Configuration Objects

This document lists all configuration object classes provided by the Python SDK (scm.config.objects) and the standard methods you can use to perform Create, Read, Update and Delete (CRUD) operations.
All object classes expose a consistent interface, so once you understand how to work with one class you can work with any other.

Tip After creating, updating or deleting objects you usually call commit() to push the pending configuration to Strata Cloud Manager and optionally track progress with get_job_status() / list_jobs().

Quick-reference table

ObjectSDK ClassDescriptionCreateReadUpdateDeleteCommit
Addressscm.config.objects.AddressManages Address objectscreate()get(), fetch(), list()update()delete()commit()
Address Groupscm.config.objects.AddressGroupManages Address Group objectscreate()get(), fetch(), list()update()delete()commit()
Applicationscm.config.objects.ApplicationManages Application objectscreate()get(), fetch(), list()update()delete()commit()
Application Filterscm.config.objects.ApplicationFiltersManages Application Filterscreate()get(), fetch(), list()update()delete()commit()
Application Groupscm.config.objects.ApplicationGroupManages Application Group objectscreate()get(), fetch(), list()update()delete()commit()
Dynamic User Groupscm.config.objects.DynamicUserGroupManages Dynamic User Group objectscreate()get(), fetch(), list()update()delete()commit()
External Dynamic Listscm.config.objects.ExternalDynamicListsManages EDL objectscreate()get(), fetch(), list()update()delete()commit()
HIP Objectscm.config.objects.HIPObjectManages HIP objectscreate()get(), fetch(), list()update()delete()commit()
HIP Profilescm.config.objects.HIPProfileManages HIP profilescreate()get(), fetch(), list()update()delete()commit()
HTTP Server Profilescm.config.objects.HTTPServerProfileManages HTTP Server Profile objectscreate()get(), fetch(), list()update()delete()commit()
Log Forwarding Profilescm.config.objects.LogForwardingProfileManages Log Forwarding Profile objectscreate()get(), fetch(), list()update()delete()commit()
Quarantined Devicesscm.config.objects.QuarantinedDevicesManages Quarantined Device entriescreate()get() , list()update()delete()commit()
Regionscm.config.objects.RegionManages Region objectscreate()get(), fetch(), list()update()delete()commit()
Schedulescm.config.objects.ScheduleManages Schedule objectscreate()get(), fetch(), list()update()delete()commit()
Servicescm.config.objects.ServiceManages Service objectscreate()get(), fetch(), list()update()delete()commit()
Service Groupscm.config.objects.ServiceGroupManages Service Group objectscreate()get(), fetch(), list()update()delete()commit()
Syslog Server Profilescm.config.objects.SyslogServerProfileManages Syslog Server Profile objectscreate()get(), fetch(), list()update()delete()commit()
Tagscm.config.objects.TagManages Tag objectscreate()get(), fetch(), list()update()delete()commit()

Usage patterns

Each class follows the same pattern:

from scm.config.objects import Address # replace with the class you need

# 1) Create
resp = Address.create(name="webserver", folder="Shared", ip_netmask="192.168.1.100/32")
print("Job ID", resp.job_id)
Address.commit()

# 2) Read
obj = Address.get(resp.id) # or Address.fetch(name="webserver", folder="Shared")
items = Address.list(folder="Shared") # list many

# 3) Update
Address.update(resp.id, description="Updated description")
Address.commit()

# 4) Delete
Address.delete(resp.id)
Address.commit()

Monitoring jobs

Most write operations (create, update, delete, commit) return a job ID.
You can track progress:

status = Address.get_job_status(job_id)
all_jobs = Address.list_jobs(page_size=20)

Object details

Below you will find a concise description of each object class and the key methods it implements.

Address

Manages Address objects (single IP, range, wildcard or FQDN). Typical workflow:

  • create() → new address object
  • fetch()/get()/list() → read existing
  • update() → modify
  • delete() → remove
  • commit() → push pending changes

Address Group

Handles static / dynamic groups of address objects.

Application

Represents a custom application signature.

Application Filter

Filters built-in App-ID signatures by criteria (category, risk, etc.).

Application Group

Groups Applications and/or Filters together.

Dynamic User Group

Groups users dynamically based on log queries.

External Dynamic List (EDL)

References external lists of IPs, domains or URLs.

HIP Object & HIP Profile

Host Information Profile components for GlobalProtect.

HTTP Server Profile

Server profile used by log-forwarding or other features.

Log Forwarding Profile

Defines rules to forward logs to destinations.

Quarantined Devices

List of devices quarantined via IoT Security or other sources.

Region

Geographical regions (standard or custom) for policy matching.

Schedule

Time-based schedules for policies.

Service & Service Group

L4 service definitions (TCP/UDP/other) and their groupings.

Syslog Server Profile

Syslog destinations (address / port / format).

Tag

Simple label objects that can be applied to other resources.


For every class above you will find corresponding create / update / list / detail models in scm.models.objects.* (e.g. AddressCreateModel, AddressModel, …).
These models provide type-safe validation when you supply parameters to the SDK methods and when results are returned.


Last generated: 2025-06-11