> For the complete documentation index, see [llms.txt](https://cortex-docs.paloaltonetworks.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cortex-docs.paloaltonetworks.com/cortex-cloud-api/cloud-onboarding/outpost-management.md).

# Outpost Management

Use these APIs to create or edit templates for onboarding outposts.

## Create an outpost template

> Create a template to onboard an outpost. Define the custom resource tags you want associated with the outpost and Cortex generates an authentication template to establish trust to the CSP and grant permissions to Cortex.\
> \
> \*\*Required license:\*\* Cortex Cloud Posture Management

```json
{"openapi":"3.0.0","info":{"title":"Cloud Onboarding APIs","version":"Cortex Cloud"},"tags":[{"name":"Outpost management","description":"Use these APIs to create or edit templates for onboarding outposts."}],"servers":[{"url":"https://api-yourfqdn","description":""}],"paths":{"/public_api/v1/cloud_onboarding/create_outpost_template":{"post":{"summary":"Create an outpost template","operationId":"postCreateOutpostTemplate","description":"Create a template to onboard an outpost. Define the custom resource tags you want associated with the outpost and Cortex generates an authentication template to establish trust to the CSP and grant permissions to Cortex.\n\n**Required license:** Cortex Cloud Posture Management","parameters":[{"schema":{"type":"string"},"in":"header","name":"Authorization","description":"{api_key}","required":true},{"schema":{"type":"string"},"in":"header","name":"x-xdr-auth-id","description":"{api_key_id}","required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateOutpostTemplateRequestData"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateOutpostResponse"}}}},"422":{"$ref":"#/components/responses/ValidationError"},"500":{"$ref":"#/components/responses/InternalServerError"}},"tags":["Outpost management"]}}},"components":{"schemas":{"CreateOutpostTemplateRequestData":{"type":"object","properties":{"request_data":{"type":"object","required":["cloud_provider","custom_resources_tags"],"properties":{"cloud_provider":{"type":"string","enum":["AWS","AZURE","GCP","OCI"],"description":"The cloud service provider for which to create the outpost template. Valid values include:\n\n- `AWS`\n- `AZURE`\n- `GCP`\n- `OCI`"},"cloud_partition":{"type":"string","enum":["COMMERCIAL","GOV"],"default":"COMMERCIAL","description":"Whether the CSP environment is `COMMERCIAL` or `GOV`:\n- `COMMERCIAL`: (Default) Standard cloud deployment typically used for private and public sector organizations that do not require isolated government-specific infrastructure.\n- `GOV`: Government cloud environments for compatibility with FedRAMP-certified tenants."},"custom_resources_tags":{"type":"array","description":"A list of key-value tags applied to the cloud resources that Cortex creates in your CSP account as part of the outpost deployment (such as IAM roles and storage resources). These tags help you identify and manage Cortex-managed resources in your cloud environment.","items":{"$ref":"#/components/schemas/CustomResourceTag"}},"instance_name":{"type":"string","maxLength":255,"default":"","description":"An optional display name for the outpost. If not provided, Cortex auto-generates a name based on the account details. Maximum 255 characters."},"app_registration_mode":{"type":"string","enum":["cortex_managed","customer_managed"],"default":"cortex_managed","description":"Controls whether Cortex creates and manages the Azure AD app registration used by the outpost, or whether you provide your own. Only applicable when `cloud_provider` is `AZURE`.\n\n- `cortex_managed`: (Default) Cortex automatically creates and manages the Azure AD app registration required for the outpost to authenticate with Azure.\n- `customer_managed`: You provide an existing Azure AD app registration. Use this when your organization's security policies require you to control app registrations. When set to `customer_managed`, you must also provide `customer_app_client_id` and `customer_sp_object_id`."},"customer_app_client_id":{"type":"string","default":"","description":"The client ID (application ID) of your existing Azure AD app registration to use for the outpost. Required when `app_registration_mode` is `customer_managed`. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."},"customer_sp_object_id":{"type":"string","default":"","description":"The object ID of the service principal associated with your Azure AD app registration. Required when `app_registration_mode` is `customer_managed`. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."},"uami_mode":{"type":"string","enum":["cortex_managed","customer_managed"],"default":"cortex_managed","description":"Controls whether Cortex creates and manages the User-Assigned Managed Identities (UAMIs) used by the outpost for each security capability, or whether you provide your own. Only applicable when `cloud_provider` is `AZURE`.\n\n- `cortex_managed`: (Default) Cortex automatically creates and manages the UAMIs required for each enabled security capability.\n- `customer_managed`: You provide existing UAMIs for each capability. Use this when your organization requires control over managed identity assignments. When set to `customer_managed`, provide the relevant `customer_uami_*` fields for each capability you want to enable."},"customer_uami_agentless_id":{"type":"string","default":"","description":"The resource ID of your existing Azure User-Assigned Managed Identity to use for agentless disk scanning. Required when `uami_mode` is `customer_managed` and agentless disk scanning is enabled. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."},"customer_uami_dspm_id":{"type":"string","default":"","description":"The resource ID of your existing Azure User-Assigned Managed Identity to use for Data Security Posture Management (DSPM) scanning. Required when `uami_mode` is `customer_managed` and DSPM is enabled. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."},"customer_uami_registry_id":{"type":"string","default":"","description":"The resource ID of your existing Azure User-Assigned Managed Identity to use for container registry scanning. Required when `uami_mode` is `customer_managed` and registry scanning is enabled. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."},"customer_uami_serverless_id":{"type":"string","default":"","description":"The resource ID of your existing Azure User-Assigned Managed Identity to use for serverless function scanning. Required when `uami_mode` is `customer_managed` and serverless scanning is enabled. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."},"customer_uami_proxy_id":{"type":"string","default":"","description":"The resource ID of your existing Azure User-Assigned Managed Identity to use for the outpost proxy component, which handles secure communication between the outpost and Cortex. Required when `uami_mode` is `customer_managed`. Must be a valid Azure GUID in the format `xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx`. Only applicable when `cloud_provider` is `AZURE`."}}}}},"CustomResourceTag":{"type":"object","properties":{"key":{"type":"string","description":"The key of the custom resource tag.","minLength":1},"value":{"type":"string","description":"The value of the custom resource tag."}}},"CreateOutpostResponse":{"type":"object","properties":{"reply":{"type":"object","description":"The main payload of the response, containing a link to download the outpost template"}}},"BaseError":{"type":"object","properties":{"reply":{"type":"object","properties":{"err_code":{"type":"string","description":"Error code"},"err_msg":{"type":"string","description":"Error message"},"err_extra":{"type":"string","description":"Extra information about the error"}}}}}},"responses":{"ValidationError":{"description":"Invalid Client Request Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseError"}}}},"InternalServerError":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseError"}}}}}}}
```

## Edit an outpost

> Edit the custom resource tags of the specified outpost. The template must be applied in the CSP after editing.\
> \
> \*\*Required license:\*\* Cortex Cloud Posture Management

```json
{"openapi":"3.0.0","info":{"title":"Cloud Onboarding APIs","version":"Cortex Cloud"},"tags":[{"name":"Outpost management","description":"Use these APIs to create or edit templates for onboarding outposts."}],"servers":[{"url":"https://api-yourfqdn","description":""}],"paths":{"/public_api/v1/cloud_onboarding/edit_outpost":{"post":{"summary":"Edit an outpost","operationId":"postEditOutpost","description":"Edit the custom resource tags of the specified outpost. The template must be applied in the CSP after editing.\n\n**Required license:** Cortex Cloud Posture Management","parameters":[{"schema":{"type":"string"},"in":"header","name":"Authorization","description":"{api_key}","required":true},{"schema":{"type":"string"},"in":"header","name":"x-xdr-auth-id","description":"{api_key_id}","required":true}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/EditOutpostRequest"}}}},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/EditOutpostResponse"}}}},"422":{"$ref":"#/components/responses/ValidationError"},"500":{"$ref":"#/components/responses/InternalServerError"}},"tags":["Outpost management"]}}},"components":{"schemas":{"EditOutpostRequest":{"type":"object","properties":{"request_data":{"type":"object","properties":{"id":{"type":"string"},"custom_resources_tags":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}}}}}}}},"EditOutpostResponse":{"type":"object","properties":{"reply":{"type":"object","properties":{"automated":{"type":"object","properties":{"link":{"type":"string"},"tracking_guid":{"type":"string"}}},"manual":{"type":"object","properties":{"TF/ARM":{"type":"string"}}}}}}},"BaseError":{"type":"object","properties":{"reply":{"type":"object","properties":{"err_code":{"type":"string","description":"Error code"},"err_msg":{"type":"string","description":"Error message"},"err_extra":{"type":"string","description":"Extra information about the error"}}}}}},"responses":{"ValidationError":{"description":"Invalid Client Request Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseError"}}}},"InternalServerError":{"description":"Internal Server Error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BaseError"}}}}}}}
```

## Get all or filtered outposts

> Get a list of all or filtered outposts.\
> \
> \*\*Required license:\*\* Cortex Cloud Posture Management

```json
{"openapi":"3.0.0","info":{"title":"Cloud Onboarding APIs","version":"Cortex Cloud"},"tags":[{"name":"Outpost management","description":"Use these APIs to create or edit templates for onboarding outposts."}],"servers":[{"url":"https://api-yourfqdn","description":""}],"paths":{"/public_api/v1/cloud_onboarding/get_outposts":{"post":{"summary":"Get all or filtered outposts","tags":["Outpost management"],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object","properties":{"reply":{"type":"object","properties":{"DATA":{"type":"array","items":{"type":"object","properties":{"cloud_provider":{"type":"string"},"outpost_id":{"type":"string"},"created_at":{"type":"string"},"type":{"type":"string"},"cloud_partition":{"type":"string"}}}},"FILTER_COUNT":{"type":"integer"},"TOTAL_COUNT":{"type":"integer"}}}}}}}}},"operationId":"postGetOutposts","parameters":[{"schema":{"type":"string"},"in":"header","name":"Authorization","description":"{api_key}","required":true},{"schema":{"type":"string"},"in":"header","name":"x-xdr-auth-id","description":"{api_key_id}","required":true}],"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"request_data":{"type":"object","properties":{"filter_data":{"type":"object","properties":{"sort":{"type":"array","items":{"type":"object","properties":{"FIELD":{"type":"string"},"ORDER":{"type":"string"}}}},"filter":{"type":"object","properties":{"OR":{"type":"array","items":{"type":"object","properties":{"SEARCH_FIELD":{"type":"string"},"SEARCH_TYPE":{"type":"string"},"SEARCH_VALUE":{"type":"string"}}}}}},"paging":{"type":"object","properties":{"from":{"type":"integer"},"to":{"type":"integer"}}}}}}}}}}}},"description":"Get a list of all or filtered outposts.\n\n**Required license:** Cortex Cloud Posture Management"}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://cortex-docs.paloaltonetworks.com/cortex-cloud-api/cloud-onboarding/outpost-management.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
