Skip to content

Maintenance Announcements

Operations Summary

Method Endpoint Description
Core CRUD
GET /api/maintenance-announcements/ List Maintenance Announcements
GET /api/maintenance-announcements/{uuid}/ Retrieve
POST /api/maintenance-announcements/ Create
PUT /api/maintenance-announcements/{uuid}/ Update
PATCH /api/maintenance-announcements/{uuid}/ Partial Update
DELETE /api/maintenance-announcements/{uuid}/ Delete
Other Actions
POST /api/maintenance-announcements/{uuid}/cancel_maintenance/ Cancel the maintenance announcement
POST /api/maintenance-announcements/{uuid}/complete_maintenance/ Complete the maintenance announcement
POST /api/maintenance-announcements/{uuid}/schedule/ Schedule/publish the maintenance announcement
POST /api/maintenance-announcements/{uuid}/start_maintenance/ Start the maintenance announcement
POST /api/maintenance-announcements/{uuid}/unschedule/ Unschedule/unpublish the maintenance announcement

Core CRUD

List Maintenance Announcements

1
2
3
4
http \
  GET \
  https://api.example.com/api/maintenance-announcements/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_list # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_list.sync(client=client)

for item in response:
    print(item)
  1. API Source: maintenance_announcements_list
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
import { maintenanceAnnouncementsList } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsList({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Description
maintenance_type integer
o array Ordering

page integer A page number within the paginated result set.
page_size integer Number of results to return per page.
scheduled_end_after string (date-time)
scheduled_end_before string (date-time)
scheduled_start_after string (date-time)
scheduled_start_before string (date-time)
service_provider_uuid string (uuid)
state array

200 -

The response body is an array of objects, where each object has the following structure:

Field Type Description
url string (uri)
uuid string (uuid)
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
state any
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
actual_start string (date-time) When the maintenance actually began
actual_end string (date-time) When the maintenance actually completed
service_provider string (uri) Service provider announcing the maintenance
created_by string (uri)
affected_offerings array of objects
affected_offerings.url string (uri)
affected_offerings.uuid string (uuid)
affected_offerings.maintenance string (uri)
affected_offerings.offering string (uri)
affected_offerings.impact_level any Expected impact on this offering
affected_offerings.impact_level_display any
affected_offerings.impact_description string Specific description of how this offering will be affected
affected_offerings.offering_name string
service_provider_name string
backend_id string

Retrieve

1
2
3
4
http \
  GET \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_retrieve # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_retrieve.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_retrieve
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsRetrieve } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsRetrieve({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

Field Type Description
url string (uri)
uuid string (uuid)
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
state any
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
actual_start string (date-time) When the maintenance actually began
actual_end string (date-time) When the maintenance actually completed
service_provider string (uri) Service provider announcing the maintenance
created_by string (uri)
affected_offerings array of objects
affected_offerings.url string (uri)
affected_offerings.uuid string (uuid)
affected_offerings.maintenance string (uri)
affected_offerings.offering string (uri)
affected_offerings.impact_level any Expected impact on this offering
affected_offerings.impact_level_display any
affected_offerings.impact_description string Specific description of how this offering will be affected
affected_offerings.offering_name string
service_provider_name string
backend_id string

Create

1
2
3
4
5
6
7
8
http \
  POST \
  https://api.example.com/api/maintenance-announcements/ \
  Authorization:"Token YOUR_API_TOKEN" \
  name="my-awesome-maintenance-announcement" \
  scheduled_start="2025-10-01T00:00:00Z" \
  scheduled_end="2025-10-01T00:00:00Z" \
  service_provider="https://api.example.com/api/service-provider/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.maintenance_announcement_request import MaintenanceAnnouncementRequest # (1)
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_create # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = MaintenanceAnnouncementRequest(
    name="my-awesome-maintenance-announcement",
    scheduled_start="2025-10-01T00:00:00Z",
    scheduled_end="2025-10-01T00:00:00Z",
    service_provider="https://api.example.com/api/service-provider/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
)
response = maintenance_announcements_create.sync(
    client=client,
    body=body_data
)

print(response)
  1. Model Source: MaintenanceAnnouncementRequest
  2. API Source: maintenance_announcements_create
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
import { maintenanceAnnouncementsCreate } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsCreate({
  auth: "Token YOUR_API_TOKEN",
  body: {
    "name": "my-awesome-maintenance-announcement",
    "scheduled_start": "2025-10-01T00:00:00Z",
    "scheduled_end": "2025-10-01T00:00:00Z",
    "service_provider": "https://api.example.com/api/service-provider/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Field Type Required Description
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
service_provider string (uri) Service provider announcing the maintenance

201 -

Field Type Description
url string (uri)
uuid string (uuid)
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
state any
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
actual_start string (date-time) When the maintenance actually began
actual_end string (date-time) When the maintenance actually completed
service_provider string (uri) Service provider announcing the maintenance
created_by string (uri)
affected_offerings array of objects
affected_offerings.url string (uri)
affected_offerings.uuid string (uuid)
affected_offerings.maintenance string (uri)
affected_offerings.offering string (uri)
affected_offerings.impact_level any Expected impact on this offering
affected_offerings.impact_level_display any
affected_offerings.impact_description string Specific description of how this offering will be affected
affected_offerings.offering_name string
service_provider_name string
backend_id string

Update

1
2
3
4
5
6
7
8
http \
  PUT \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN" \
  name="my-awesome-maintenance-announcement" \
  scheduled_start="2025-10-01T00:00:00Z" \
  scheduled_end="2025-10-01T00:00:00Z" \
  service_provider="https://api.example.com/api/service-provider/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.maintenance_announcement_request import MaintenanceAnnouncementRequest # (1)
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_update # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = MaintenanceAnnouncementRequest(
    name="my-awesome-maintenance-announcement",
    scheduled_start="2025-10-01T00:00:00Z",
    scheduled_end="2025-10-01T00:00:00Z",
    service_provider="https://api.example.com/api/service-provider/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
)
response = maintenance_announcements_update.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: MaintenanceAnnouncementRequest
  2. API Source: maintenance_announcements_update
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
import { maintenanceAnnouncementsUpdate } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsUpdate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "name": "my-awesome-maintenance-announcement",
    "scheduled_start": "2025-10-01T00:00:00Z",
    "scheduled_end": "2025-10-01T00:00:00Z",
    "service_provider": "https://api.example.com/api/service-provider/a1b2c3d4-e5f6-7890-abcd-ef1234567890/"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
service_provider string (uri) Service provider announcing the maintenance

200 -

Field Type Description
url string (uri)
uuid string (uuid)
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
state any
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
actual_start string (date-time) When the maintenance actually began
actual_end string (date-time) When the maintenance actually completed
service_provider string (uri) Service provider announcing the maintenance
created_by string (uri)
affected_offerings array of objects
affected_offerings.url string (uri)
affected_offerings.uuid string (uuid)
affected_offerings.maintenance string (uri)
affected_offerings.offering string (uri)
affected_offerings.impact_level any Expected impact on this offering
affected_offerings.impact_level_display any
affected_offerings.impact_description string Specific description of how this offering will be affected
affected_offerings.offering_name string
service_provider_name string
backend_id string

Partial Update

1
2
3
4
http \
  PATCH \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.patched_maintenance_announcement_request import PatchedMaintenanceAnnouncementRequest # (1)
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_partial_update # (2)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)

body_data = PatchedMaintenanceAnnouncementRequest()
response = maintenance_announcements_partial_update.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

print(response)
  1. Model Source: PatchedMaintenanceAnnouncementRequest
  2. API Source: maintenance_announcements_partial_update
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsPartialUpdate } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsPartialUpdate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
service_provider string (uri) Service provider announcing the maintenance

200 -

Field Type Description
url string (uri)
uuid string (uuid)
name string
message string
maintenance_type any Type of maintenance being performed
external_reference_url string (uri) Optional reference to an external maintenance tracker
state any
scheduled_start string (date-time) When the maintenance is scheduled to begin
scheduled_end string (date-time) When the maintenance is scheduled to complete
actual_start string (date-time) When the maintenance actually began
actual_end string (date-time) When the maintenance actually completed
service_provider string (uri) Service provider announcing the maintenance
created_by string (uri)
affected_offerings array of objects
affected_offerings.url string (uri)
affected_offerings.uuid string (uuid)
affected_offerings.maintenance string (uri)
affected_offerings.offering string (uri)
affected_offerings.impact_level any Expected impact on this offering
affected_offerings.impact_level_display any
affected_offerings.impact_description string Specific description of how this offering will be affected
affected_offerings.offering_name string
service_provider_name string
backend_id string

Delete

1
2
3
4
http \
  DELETE \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_destroy # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_destroy.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_destroy
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsDestroy } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsDestroy({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

204 - No response body


Other Actions

Cancel the maintenance announcement

Cancel the maintenance announcement

1
2
3
4
http \
  POST \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/cancel_maintenance/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_cancel_maintenance # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_cancel_maintenance.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_cancel_maintenance
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsCancelMaintenance } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsCancelMaintenance({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

Field Type Description
detail string Response message describing the action result

Complete the maintenance announcement

Complete the maintenance announcement

1
2
3
4
http \
  POST \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/complete_maintenance/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_complete_maintenance # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_complete_maintenance.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_complete_maintenance
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsCompleteMaintenance } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsCompleteMaintenance({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

Field Type Description
detail string Response message describing the action result

Schedule/publish the maintenance announcement

Schedule/publish the maintenance announcement

1
2
3
4
http \
  POST \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/schedule/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_schedule # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_schedule.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_schedule
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsSchedule } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsSchedule({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

Field Type Description
detail string Response message describing the action result

Start the maintenance announcement

Start the maintenance announcement

1
2
3
4
http \
  POST \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/start_maintenance/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_start_maintenance # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_start_maintenance.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_start_maintenance
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsStartMaintenance } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsStartMaintenance({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

Field Type Description
detail string Response message describing the action result

Unschedule/unpublish the maintenance announcement

Unschedule/unpublish the maintenance announcement

1
2
3
4
http \
  POST \
  https://api.example.com/api/maintenance-announcements/a1b2c3d4-e5f6-7890-abcd-ef1234567890/unschedule/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.maintenance_announcements import maintenance_announcements_unschedule # (1)

client = AuthenticatedClient(
    base_url="https://api.example.com", token="YOUR_API_TOKEN"
)
response = maintenance_announcements_unschedule.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client
)

print(response)
  1. API Source: maintenance_announcements_unschedule
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
import { maintenanceAnnouncementsUnschedule } from 'waldur-js-client';

try {
  const response = await maintenanceAnnouncementsUnschedule({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)

200 -

Field Type Description
detail string Response message describing the action result