Site
Update an existing site.
Authorizations
authorizationstringRequired
JWT Authorization header using the Bearer scheme. Example: 'Bearer {token}'
Body
Responses
200
A successful response.
application/json
default
An unexpected error response.
application/json
post
/gateway/v1/sitePOST /gateway/v1/site HTTP/1.1
Host: p01-api.observo.ai
authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 693
{
"site": {
"id": 1,
"orgId": "text",
"name": "text",
"description": "text",
"status": "DEFAULT_STATUS",
"geoLocation": {
"latitude": 1,
"longitude": 1
},
"vendor": "DEFAULT_TYPE",
"tunnelPort": 1,
"vendorConfig": {},
"maxInstances": 1,
"minInstances": 1,
"createdBy": "text",
"updatedBy": "text",
"created": "2025-11-29T00:42:35.927Z",
"updated": "2025-11-29T00:42:35.927Z",
"caCert": "text",
"lastAlive": "2025-11-29T00:42:35.927Z",
"pushSourceIngress": "text",
"pushSourceLb": "text",
"k8sInternalSvcUrl": "text",
"version": "text",
"gitProvider": "GIT_PROVIDER_UNSPECIFIED",
"gitRepo": "text",
"gitRepoPath": "text",
"gitBranch": "text",
"gitAccessToken": "text",
"managedByGit": true,
"edgeManagerEndpoint": "text",
"siteTelemetryRcvrEndpoint": "text"
}
}{
"status": {
"code": "OK",
"errorMessage": "text",
"userMessageCode": "DEFAULT"
},
"site": {
"id": 1,
"orgId": "text",
"name": "text",
"description": "text",
"status": "DEFAULT_STATUS",
"geoLocation": {
"latitude": 1,
"longitude": 1
},
"vendor": "DEFAULT_TYPE",
"tunnelPort": 1,
"vendorConfig": {},
"maxInstances": 1,
"minInstances": 1,
"createdBy": "text",
"updatedBy": "text",
"created": "2025-11-29T00:42:35.927Z",
"updated": "2025-11-29T00:42:35.927Z",
"caCert": "text",
"lastAlive": "2025-11-29T00:42:35.927Z",
"pushSourceIngress": "text",
"pushSourceLb": "text",
"k8sInternalSvcUrl": "text",
"version": "text",
"gitProvider": "GIT_PROVIDER_UNSPECIFIED",
"gitRepo": "text",
"gitRepoPath": "text",
"gitBranch": "text",
"gitAccessToken": "text",
"managedByGit": true,
"edgeManagerEndpoint": "text",
"siteTelemetryRcvrEndpoint": "text"
}
}Updates the site with the given id. If any change has happened on the
object in between, this call should fail. previous_update_time must be set
to the last available site's update time. This ensures that the object
hasn't updated in between. Returns status and the modified site.
patch
Update an existing site.
Authorizations
authorizationstringRequired
JWT Authorization header using the Bearer scheme. Example: 'Bearer {token}'
Body
lastUpdatedstring · date-timeOptional
Responses
200
A successful response.
application/json
default
An unexpected error response.
application/json
patch
/gateway/v1/sitePATCH /gateway/v1/site HTTP/1.1
Host: p01-api.observo.ai
authorization: YOUR_API_KEY
Content-Type: application/json
Accept: */*
Content-Length: 734
{
"site": {
"id": 1,
"orgId": "text",
"name": "text",
"description": "text",
"status": "DEFAULT_STATUS",
"geoLocation": {
"latitude": 1,
"longitude": 1
},
"vendor": "DEFAULT_TYPE",
"tunnelPort": 1,
"vendorConfig": {},
"maxInstances": 1,
"minInstances": 1,
"createdBy": "text",
"updatedBy": "text",
"created": "2025-11-29T00:42:35.927Z",
"updated": "2025-11-29T00:42:35.927Z",
"caCert": "text",
"lastAlive": "2025-11-29T00:42:35.927Z",
"pushSourceIngress": "text",
"pushSourceLb": "text",
"k8sInternalSvcUrl": "text",
"version": "text",
"gitProvider": "GIT_PROVIDER_UNSPECIFIED",
"gitRepo": "text",
"gitRepoPath": "text",
"gitBranch": "text",
"gitAccessToken": "text",
"managedByGit": true,
"edgeManagerEndpoint": "text",
"siteTelemetryRcvrEndpoint": "text"
},
"lastUpdated": "2025-11-29T00:42:35.927Z"
}{
"status": {
"code": "OK",
"errorMessage": "text",
"userMessageCode": "DEFAULT"
},
"site": {
"id": 1,
"orgId": "text",
"name": "text",
"description": "text",
"status": "DEFAULT_STATUS",
"geoLocation": {
"latitude": 1,
"longitude": 1
},
"vendor": "DEFAULT_TYPE",
"tunnelPort": 1,
"vendorConfig": {},
"maxInstances": 1,
"minInstances": 1,
"createdBy": "text",
"updatedBy": "text",
"created": "2025-11-29T00:42:35.927Z",
"updated": "2025-11-29T00:42:35.927Z",
"caCert": "text",
"lastAlive": "2025-11-29T00:42:35.927Z",
"pushSourceIngress": "text",
"pushSourceLb": "text",
"k8sInternalSvcUrl": "text",
"version": "text",
"gitProvider": "GIT_PROVIDER_UNSPECIFIED",
"gitRepo": "text",
"gitRepoPath": "text",
"gitBranch": "text",
"gitAccessToken": "text",
"managedByGit": true,
"edgeManagerEndpoint": "text",
"siteTelemetryRcvrEndpoint": "text"
}
}List all sites, optionally filtered by site_ids provided.
Returns all non-deleted sites for org if no arguments provided.
Pagination.Ordering.FieldName Options: "id", "created_at", "updated_at",
"name", "status", "last_alive".
get
List all configured sites.
Authorizations
authorizationstringRequired
JWT Authorization header using the Bearer scheme. Example: 'Bearer {token}'
Query parameters
siteIdsinteger · uint64[]Optional
pagination.offsetinteger · int64Optional
pagination.limitinteger · int64Optional
pagination.totalCountinteger · int64Optional
pagination.ordering.fieldNamestringOptional
pagination.ordering.descendingbooleanOptional
Responses
200
A successful response.
application/json
default
An unexpected error response.
application/json
get
/gateway/v1/sitesGET /gateway/v1/sites HTTP/1.1
Host: p01-api.observo.ai
authorization: YOUR_API_KEY
Accept: */*
{
"status": {
"code": "OK",
"errorMessage": "text",
"userMessageCode": "DEFAULT"
},
"sites": [
{
"id": 1,
"orgId": "text",
"name": "text",
"description": "text",
"status": "DEFAULT_STATUS",
"geoLocation": {
"latitude": 1,
"longitude": 1
},
"vendor": "DEFAULT_TYPE",
"tunnelPort": 1,
"vendorConfig": {},
"maxInstances": 1,
"minInstances": 1,
"createdBy": "text",
"updatedBy": "text",
"created": "2025-11-29T00:42:35.927Z",
"updated": "2025-11-29T00:42:35.927Z",
"caCert": "text",
"lastAlive": "2025-11-29T00:42:35.927Z",
"pushSourceIngress": "text",
"pushSourceLb": "text",
"k8sInternalSvcUrl": "text",
"version": "text",
"gitProvider": "GIT_PROVIDER_UNSPECIFIED",
"gitRepo": "text",
"gitRepoPath": "text",
"gitBranch": "text",
"gitAccessToken": "text",
"managedByGit": true,
"edgeManagerEndpoint": "text",
"siteTelemetryRcvrEndpoint": "text"
}
],
"pagination": {
"offset": 1,
"limit": 1,
"totalCount": 1,
"ordering": {
"fieldName": "text",
"descending": true
}
}
}Deletes the site with the specified ID and all associated resources
Authorizations
authorizationstringRequired
JWT Authorization header using the Bearer scheme. Example: 'Bearer {token}'
Path parameters
siteIdinteger · uint64Required
ID of the site to delete
Responses
200
Site deleted successfully
application/json
404
Site not found
500
Internal server error
delete
/gateway/v1/site/{siteId}DELETE /gateway/v1/site/{siteId} HTTP/1.1
Host: p01-api.observo.ai
authorization: YOUR_API_KEY
Accept: */*
{
"status": {
"code": "OK",
"errorMessage": "text",
"userMessageCode": "DEFAULT"
}
}Last updated
Was this helpful?

