Palo Alto Networks External Dynamic Lists API
External Dynamic Lists
External Dynamic Lists
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/palo-alto-networks-external-dynamic-lists-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
version: 2.0.0
title: Objects External Dynamic Lists API
description: These APIs are used for defining and managing policy object configurations within Strata Cloud Manager.
termsOfService: https://www.paloaltonetworks.com/content/dam/pan/en_US/assets/pdf/legal/palo-alto-networks-end-user-license-agreement-eula.pdf
contact:
email: support@paloaltonetworks.com
name: Palo Alto Networks Technical Support
url: https://support.paloaltonetworks.com
license:
name: MIT
url: https://opensource.org/license/mit
servers:
- url: https://api.strata.paloaltonetworks.com/config/objects/v1
description: Current
- url: https://api.sase.paloaltonetworks.com/sse/config/v1
description: Legacy
security:
- scmToken: []
tags:
- name: External Dynamic Lists
description: External Dynamic Lists
paths:
/external-dynamic-lists:
get:
tags:
- External Dynamic Lists
summary: List External Dynamic Lists
description: 'Retrieve a list of External Dynamic Lists.
'
operationId: ListExternalDynamicLists
parameters:
- $ref: '#/components/parameters/name'
- $ref: '#/components/parameters/folder'
- $ref: '#/components/parameters/snippet'
- $ref: '#/components/parameters/device'
- $ref: '#/components/parameters/offset'
- $ref: '#/components/parameters/limit'
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
data:
allOf:
- type: array
items:
$ref: '#/components/schemas/external-dynamic-lists'
limit:
type: integer
default: 200
offset:
type: integer
default: 0
total:
type: integer
'400':
$ref: '#/components/responses/bad_request_errors_basic'
'401':
$ref: '#/components/responses/auth_errors'
'403':
$ref: '#/components/responses/access_errors'
'404':
$ref: '#/components/responses/not_found'
default:
$ref: '#/components/responses/default_errors'
post:
tags:
- External Dynamic Lists
summary: Create an External Dynamic List
description: 'Create a new External Dynamic List.
'
operationId: CreateExternalDynamicLists
requestBody:
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/external-dynamic-lists'
responses:
'201':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/external-dynamic-lists'
'400':
$ref: '#/components/responses/bad_request_errors_basic_with_body'
'401':
$ref: '#/components/responses/auth_errors'
'403':
$ref: '#/components/responses/access_errors'
'409':
$ref: '#/components/responses/conflict_errors'
default:
$ref: '#/components/responses/default_errors'
/external-dynamic-lists/{id}:
get:
tags:
- External Dynamic Lists
summary: Get an External Dynamic List
description: 'Get an existing External Dynamic List.
'
operationId: GetExternalDynamicListsByID
parameters:
- $ref: '#/components/parameters/uuid'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/external-dynamic-lists'
'400':
$ref: '#/components/responses/bad_request_errors_basic'
'401':
$ref: '#/components/responses/auth_errors'
'403':
$ref: '#/components/responses/access_errors'
'404':
$ref: '#/components/responses/not_found'
default:
$ref: '#/components/responses/default_errors'
put:
tags:
- External Dynamic Lists
summary: Update an External Dynamic List
description: 'Update an existing External Dynamic List.
'
operationId: UpdateExternalDynamicListsByID
parameters:
- $ref: '#/components/parameters/uuid'
requestBody:
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/external-dynamic-lists'
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/external-dynamic-lists'
'400':
$ref: '#/components/responses/bad_request_errors_basic_with_body'
'401':
$ref: '#/components/responses/auth_errors'
'403':
$ref: '#/components/responses/access_errors'
'404':
$ref: '#/components/responses/not_found'
'409':
$ref: '#/components/responses/conflict_errors'
default:
$ref: '#/components/responses/default_errors'
delete:
tags:
- External Dynamic Lists
summary: Delete an External Dynamic List
description: 'Delete an External Dynamic List.
'
operationId: DeleteExternalDynamicListsByID
parameters:
- $ref: '#/components/parameters/uuid'
responses:
'200':
$ref: '#/components/responses/http_ok'
'400':
$ref: '#/components/responses/bad_request_errors_basic'
'401':
$ref: '#/components/responses/auth_errors'
'403':
$ref: '#/components/responses/access_errors'
'404':
$ref: '#/components/responses/not_found'
'409':
$ref: '#/components/responses/conflict_errors'
default:
$ref: '#/components/responses/default_errors'
components:
parameters:
device:
name: device
in: query
description: 'The device in which the resource is defined
'
required: false
schema:
type: string
name:
name: name
in: query
description: The name of the configuration resource
required: false
schema:
type: string
uuid:
name: id
in: path
description: The UUID of the configuration resource
required: true
schema:
type: string
format: uuid
example: 123e4567-e89b-12d3-a456-426655440000
folder:
name: folder
in: query
description: 'The folder in which the resource is defined
'
required: false
schema:
type: string
snippet:
name: snippet
in: query
description: 'The snippet in which the resource is defined
'
required: false
schema:
type: string
offset:
name: offset
in: query
description: The offset into the list of results returned
required: false
schema:
type: integer
default: 0
limit:
name: limit
in: query
description: The maximum number of results per page
required: false
schema:
type: integer
default: 200
examples:
json_400_panui_mgmt_invalid_object:
summary: Invalid Object
value:
_errors:
- code: E003
message: Invalid Object
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_409_panui_mgmt_object_not_unique:
summary: Object Not Unique
value:
_errors:
- code: E016
message: Object Not Unique
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_restapi_input_format_mismatch:
summary: Input Format Mismatch
value:
_errors:
- code: E003
message: 'Input Format Mismatch: input-format=json'
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_405_panui_restapi_action_not_supported:
summary: Action Not Supported
value:
_errors:
- code: E012
message: 'Action Not Supported: move'
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_401_panui_auth_key_expired:
summary: Key Expired
value:
_errors:
- code: E016
message: Key Expired
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_mgmt_bad_xpath:
summary: Bad XPath
value:
_errors:
- code: E013
message: Bad XPath
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_restapi_missing_body:
summary: Missing Body
value:
_errors:
- code: E003
message: Missing Body
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_403_panui_auth_unauthorized:
summary: Unauthorized
value:
_errors:
- code: E007
message: Unauthorized
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_401_panui_auth_invalid_credential:
summary: Invalid Credential
value:
_errors:
- code: E016
message: Invalid Credential
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_504_panui_mgmt_session_timeout:
summary: Session Timeout
value:
_errors:
- code: '4'
message: Session Timeout
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_401_panui_auth_not_authenticated:
summary: Not Authenticated
value:
_errors:
- code: E016
message: Not Authenticated
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_mgmt_invalid_command:
summary: Invalid Command
value:
_errors:
- code: E003
message: Invalid Command
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_401_panui_auth_key_too_long:
summary: Key Too Long
value:
_errors:
- code: E016
message: Key Too Long
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_409_panui_mgmt_name_not_unique:
summary: Name Not Unique
value:
_errors:
- code: E006
message: Name Not Unique
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_401_panui_auth_need_password_change:
summary: Need Password Change
value:
_errors:
- code: E016
message: The password needs to be changed.
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_501_panui_restapi_method_not_supported:
summary: Method Not Supported
value:
_errors:
- code: E012
message: Method Not Supported
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_mgmt_malformed_command:
summary: Malformed Command
value:
_errors:
- code: E003
message: Malformed Command
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_409_panui_mgmt_reference_not_zero:
summary: Reference Not Zero
value:
_errors:
- code: E009
message: Reference Not Zero
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_restapi_invalid_query_parameter:
summary: Invalid Query Parameter
value:
_errors:
- code: E003
message: 'Invalid Query Parameter: location=invalid'
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_501_panui_restapi_version_not_supported:
summary: Version Not Supported
value:
_errors:
- code: E012
message: Version Not Supported
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_restapi_missing_query_parameter:
summary: Missing Query Parameter
value:
_errors:
- code: E003
message: 'Missing Query Parameter: name'
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_400_panui_restapi_output_format_mismatch:
summary: Output Format Mismatch
value:
_errors:
- code: E003
message: 'Output Format Mismatch: output-format=json Accept=xml'
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
json_404_panui_mgmt_object_not_present:
summary: Object Not Present
value:
_errors:
- code: E005
message: Object Not Present
details: {}
_request_id: 123e4567-e89b-12d3-a456-426655440000
responses:
access_errors:
description: Forbidden
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
auth_unauthorized:
$ref: '#/components/examples/json_403_panui_auth_unauthorized'
not_found:
description: Not Found
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
object_not_present:
$ref: '#/components/examples/json_404_panui_mgmt_object_not_present'
conflict_errors:
description: Conflict
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
object_not_unique:
$ref: '#/components/examples/json_409_panui_mgmt_object_not_unique'
name_not_unique:
$ref: '#/components/examples/json_409_panui_mgmt_name_not_unique'
reference_not_zero:
$ref: '#/components/examples/json_409_panui_mgmt_reference_not_zero'
bad_request_errors_basic:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
input_format_mismatch:
$ref: '#/components/examples/json_400_panui_restapi_input_format_mismatch'
output_format_mismatch:
$ref: '#/components/examples/json_400_panui_restapi_output_format_mismatch'
missing_query_parameter:
$ref: '#/components/examples/json_400_panui_restapi_missing_query_parameter'
invalid_query_parameter:
$ref: '#/components/examples/json_400_panui_restapi_invalid_query_parameter'
default_errors:
description: General Errors
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
version_not_supported:
$ref: '#/components/examples/json_501_panui_restapi_version_not_supported'
method_not_allowed:
$ref: '#/components/examples/json_501_panui_restapi_method_not_supported'
action_not_supported:
$ref: '#/components/examples/json_405_panui_restapi_action_not_supported'
bad_xpath:
$ref: '#/components/examples/json_400_panui_mgmt_bad_xpath'
invalid_command:
$ref: '#/components/examples/json_400_panui_mgmt_invalid_command'
malformed_command:
$ref: '#/components/examples/json_400_panui_mgmt_malformed_command'
session_timeout:
$ref: '#/components/examples/json_504_panui_mgmt_session_timeout'
auth_errors:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
auth_not_authenticated:
$ref: '#/components/examples/json_401_panui_auth_not_authenticated'
invalid_credential:
$ref: '#/components/examples/json_401_panui_auth_invalid_credential'
key_too_long:
$ref: '#/components/examples/json_401_panui_auth_key_too_long'
key_expired:
$ref: '#/components/examples/json_401_panui_auth_key_expired'
need_password_change:
$ref: '#/components/examples/json_401_panui_auth_need_password_change'
bad_request_errors_basic_with_body:
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/generic_error'
examples:
input_format_mismatch:
$ref: '#/components/examples/json_400_panui_restapi_input_format_mismatch'
output_format_mismatch:
$ref: '#/components/examples/json_400_panui_restapi_output_format_mismatch'
missing_query_parameter:
$ref: '#/components/examples/json_400_panui_restapi_missing_query_parameter'
invalid_query_parameter:
$ref: '#/components/examples/json_400_panui_restapi_invalid_query_parameter'
missing_body:
$ref: '#/components/examples/json_400_panui_restapi_missing_body'
invalid_object:
$ref: '#/components/examples/json_400_panui_mgmt_invalid_object'
http_ok:
description: OK
schemas:
generic_error:
type: object
properties:
_errors:
$ref: '#/components/schemas/error_detail_cause_infos'
_request_id:
type: string
x-examples: {}
external-dynamic-lists:
type: object
description: External Dynamic Lists
required:
- name
properties:
id:
type: string
description: The UUID of the external dynamic list
readOnly: true
example: 123e4567-e89b-12d3-a456-426655440000
name:
type: string
pattern: ^[ a-zA-Z\d.\-_]+$
description: The name of the external dynamic list
maxLength: 63
type:
type: object
description: Type configuration for External Dynamic List
oneOf:
- type: object
title: predefined_ip
description: Predefined IP configuration for External Dynamic List
properties:
predefined_ip:
type: object
description: Predefined IP settings for EDL type
properties:
exception_list:
type: array
description: IP Exception List for Predefined IP type
items:
type: string
maxLength: 255
description:
type: string
maxLength: 255
url:
type: string
description: URL source for Predefined IP type
required:
- url
- type: object
title: predefined_url
description: Predefined URL configuration for External Dynamic List
properties:
predefined_url:
type: object
description: Predefined URL settings for EDL type
properties:
exception_list:
type: array
description: URL Exception List for Predefined URL type
items:
type: string
maxLength: 255
description:
type: string
maxLength: 255
url:
type: string
description: URL source for Predefined URL type
required:
- url
- type: object
title: ip
description: Custom IP configuration for External Dynamic List
properties:
ip:
type: object
description: IP settings for Custom IP type
properties:
exception_list:
type: array
description: IP Exception List for Custom IP type
items:
type: string
maxLength: 255
description:
type: string
maxLength: 255
url:
type: string
maxLength: 255
default: http://
description: External URL for Custom IP type
certificate_profile:
type: string
description: Profile for authenticating client certificates
default: None
x-panMultiple:
- type: string
- enum:
- None
type: string
auth:
type: object
description: Authentication settings for Custom IP type
properties:
username:
type: string
minLength: 1
maxLength: 255
description: Username for Custom IP authentication
password:
type: string
format: password
maxLength: 255
description: Password for Custom IP authentication
required:
- username
- password
recurring:
type: object
description: Update Schedule for Custom IP type
oneOf:
- type: object
title: five_minute
description: Five minute interval for IP updates
properties:
five_minute:
type: object
description: Five minute settings for IP recurring
required:
- five_minute
- type: object
title: hourly
description: Hourly interval for IP updates
properties:
hourly:
type: object
description: Hourly settings for IP recurring
required:
- hourly
- type: object
title: daily
description: Daily interval for IP updates
properties:
daily:
type: object
description: Daily settings for IP recurring
properties:
at:
type: string
description: Daily Time specification hh (e.g. 20) for IP
pattern: ([01][0-9]|[2][0-3])
minLength: 2
maxLength: 2
default: '00'
required:
- at
required:
- daily
- type: object
title: weekly
description: Weekly interval for IP updates
properties:
weekly:
type: object
description: Weekly settings for IP recurring
properties:
day_of_week:
enum:
- sunday
- monday
- tuesday
- wednesday
- thursday
- friday
- saturday
at:
type: string
description: Weekly Time specification hh (e.g. 20) for IP
pattern: ([01][0-9]|[2][0-3])
minLength: 2
maxLength: 2
default: '00'
required:
- day_of_week
- at
required:
- weekly
- type: object
title: monthly
description: Monthly interval for IP updates
properties:
monthly:
type: object
description: Monthly settings for IP recurring
properties:
day_of_month:
type: integer
minimum: 1
maximum: 31
description: Day setting for monthly IP updates
at:
type: string
description: Monthly Time specification hh (e.g. 20) for IP
pattern: ([01][0-9]|[2][0-3])
minLength: 2
maxLength: 2
default: '00'
required:
- day_of_month
- at
required:
- monthly
required:
- url
- recurring
- type: object
title: domain
description: Custom Domain configuration for External Dynamic List
properties:
domain:
type: object
description: Domain settings for Custom Domain type
properties:
exception_list:
type: array
description: Domain Exception List for Custom Domain type
items:
type: string
maxLength: 255
description:
type: string
maxLength: 255
url:
type: string
maxLength: 255
default: http://
description: External URL for Custom Domain type
certificate_profile:
type: string
description: Profile for authenticating client certificates
default: None
x-panMultiple:
- type: string
- enum:
- None
type: string
auth:
type: object
description: Authentication settings for Custom Domain type
properties:
username:
type: string
minLength: 1
maxLength: 255
description: Username for Custom Domain authentication
password:
type: string
format: password
maxLength: 255
description: Password for Custom Domain authentication
required:
- username
- password
recurring:
type: object
description: Update Schedule for Custom Domain type
oneOf:
- type: object
title: hourly
description: Hourly interval for Domain updates
properties:
hourly:
type: object
description: Hourly settings for Domain recurring
required:
- hourly
- type: object
title: five_minute
description: Five minute interval for Domain updates
properties:
five_minute:
type: object
description: Five minute settings for Domain recurring
required:
- five_minute
- type: object
title: daily
description: Daily interval for Domain updates
properties:
daily:
type: object
description: Daily settings for Domain recurring
properties:
at:
type: string
description: Daily Time specification hh (e.g. 20) for Domain
pattern: ([01][0-9]|[2][0-3])
minLength: 2
maxLength: 2
default: '00'
required:
- at
required:
- daily
- type: object
title: weekly
description: Weekly interval for Domain updates
properties:
weekly:
type: object
description: Weekly settings for Domain recurring
properties:
day_of_week:
enum:
- sunday
- monday
- tuesday
- wednesday
- thursday
- friday
- saturday
at:
type: string
description: Weekly Time specification hh (e.g. 20) for Domain
pattern: ([01][0-9]|[2][0-3])
minLength: 2
maxLength: 2
default: '00'
required:
- day_of_week
- at
required:
- weekly
- type: object
title: monthly
description: Monthly interval for Domain updates
properties:
monthly:
type: object
description: Monthly settings for Domain recurring
properties:
day_of_month:
type: integer
minimum: 1
maximum: 31
description: Day setting for monthly Domain updates
at:
type: string
description: Monthly Time specification hh (e.g. 20) for domain
pattern: ([01][0-9]|[2][0-3])
minLength: 2
maxLength: 2
default: '00'
required:
- day_of_month
- at
required:
- monthly
expand_domain:
type: boolean
description: Enable/Disable expand domain
default: false
required:
- url
- recurring
- type: object
title: url
description: Custom URL configuration for External Dynamic List
properties:
url:
type: object
description: URL settings for Custom URL type
proper
# --- truncated at 32 KB (52 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/openapi/palo-alto-networks-external-dynamic-lists-api-openapi.yml