Add local site¶
POST/
Endpoint API · Web Control
Adds a new local site.
Parameters¶
| Name | In | Type | Required | Description |
|---|---|---|---|---|
X-Tenant-ID | header | string (uuid) | Yes | Tenant ID. |
Request body¶
Content type: application/json
Request body fields
categoryIdintegerCategory ID associated with this local site. Either
Must be ≥ 1 and ≤ 57.
categoryId or tags must be provided.Must be ≥ 1 and ≤ 57.
tagsarray of stringArray of tags associated with this local site setting. Either
Each item must be 1–50 characters long.
categoryId or tags must be provided.Each item must be 1–50 characters long.
urlstringrequiredMust be 1–2048 characters long.
commentstringMust be at most 300 characters long.
Request samples¶
curl -X POST "https://api-<data-region>.central.sophos.com/endpoint/v1/settings/web-control/local-sites" -H "Authorization: Bearer <access-token>" -H "X-Tenant-ID: <tenant-id>" -H "Content-Type: application/json" -d "{
\"categoryId\": 50,
\"url\": \"https://www.example.com\",
\"comment\": \"Reason for LocalSite Request\"
}"
import requests
response = requests.post(
"https://api-<data-region>.central.sophos.com/endpoint/v1/settings/web-control/local-sites",
headers={
"Authorization": "Bearer <access-token>",
"X-Tenant-ID": "<tenant-id>",
"Content-Type": "application/json",
},
json={ 'categoryId': 50,
'url': 'https://www.example.com',
'comment': 'Reason for LocalSite Request'},
)
print(response.json())
$headers = @{
"Authorization" = "Bearer <access-token>"
"X-Tenant-ID" = "<tenant-id>"
"Content-Type" = "application/json"
}
$body = '{
"categoryId": 50,
"url": "https://www.example.com",
"comment": "Reason for LocalSite Request"
}'
Invoke-RestMethod -Method POST -Uri "https://api-<data-region>.central.sophos.com/endpoint/v1/settings/web-control/local-sites" -Headers $headers -Body $body -ContentType "application/json"
package main
import (
"fmt"
"io"
"net/http"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api-<data-region>.central.sophos.com/endpoint/v1/settings/web-control/local-sites", strings.NewReader(`{
"categoryId": 50,
"url": "https://www.example.com",
"comment": "Reason for LocalSite Request"
}`))
if err != nil {
panic(err)
}
req.Header.Set("Authorization", "Bearer <access-token>")
req.Header.Set("X-Tenant-ID", "<tenant-id>")
req.Header.Set("Content-Type", "application/json")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}
const response = await fetch("https://api-<data-region>.central.sophos.com/endpoint/v1/settings/web-control/local-sites", {
method: "POST",
headers: {
"Authorization": "Bearer <access-token>",
"X-Tenant-ID": "<tenant-id>",
"Content-Type": "application/json",
},
body: JSON.stringify({
"categoryId": 50,
"url": "https://www.example.com",
"comment": "Reason for LocalSite Request"
}),
});
const data = await response.json();
console.log(data);
Responses¶
201 — Local site added.¶
Response fields
idstring (uuid)requiredLocal site ID.
categoryIdintegerLocal site category ID.
Must be ≥ 1 and ≤ 57.
Must be ≥ 1 and ≤ 57.
tagsarray of stringTags associated with this local site.
urlstringrequiredLocal site URL.
commentstringComment indicating why the local site was added.
Must be at most 300 characters long.
Must be at most 300 characters long.
Errors¶
| Status | Meaning |
|---|---|
400 | Bad request. |
500 | Unexpected error. |
All error responses share the same shape — see the error response object.
See the guide for a narrative walkthrough of this API.