Skip to content

Proposal Proposals

Operations Summary

Method Endpoint Description
Core CRUD
GET /api/proposal-proposals/ List Proposal Proposals
GET /api/proposal-proposals/{uuid}/ Retrieve
POST /api/proposal-proposals/ Create
POST /api/proposal-proposals/{uuid}/update_project_details/ Update project details of a proposal
DELETE /api/proposal-proposals/{uuid}/ Delete
Permissions & Users
GET /api/proposal-proposals/{uuid}/list_users/ List users and their roles in a scope
POST /api/proposal-proposals/{uuid}/add_user/ Grant a role to a user
POST /api/proposal-proposals/{uuid}/delete_user/ Revoke a role from a user
POST /api/proposal-proposals/{uuid}/update_user/ Update a user's role expiration
Other Actions
GET /api/proposal-proposals/{uuid}/checklist/ Get checklist with questions and existing answers
GET /api/proposal-proposals/{uuid}/checklist_review/ Checklist review
GET /api/proposal-proposals/checklist-template/ Get checklist template for creating new objects
GET /api/proposal-proposals/{uuid}/completion_review_status/ Get checklist completion status with review triggers (reviewers only)
GET /api/proposal-proposals/{uuid}/completion_status/ Get checklist completion status
GET /api/proposal-proposals/{uuid}/resources/ List resources for a proposal
GET /api/proposal-proposals/{uuid}/resources/{obj_uuid}/ Retrieve
POST /api/proposal-proposals/{uuid}/approve/ Approve a proposal
POST /api/proposal-proposals/{uuid}/attach_document/ Attach document to proposal
POST /api/proposal-proposals/{uuid}/reject/ Reject a proposal
POST /api/proposal-proposals/{uuid}/resources/ Create resource for a proposal
POST /api/proposal-proposals/{uuid}/submit/ Submit a proposal
POST /api/proposal-proposals/{uuid}/submit_answers/ Submit checklist answers
PUT /api/proposal-proposals/{uuid}/resources/{obj_uuid}/ Update
PATCH /api/proposal-proposals/{uuid}/resources/{obj_uuid}/ Partial Update
DELETE /api/proposal-proposals/{uuid}/resources/{obj_uuid}/ Delete

Core CRUD

List Proposal Proposals

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/ \
  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.proposal_proposals import proposal_proposals_list # (1)

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

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

try {
  const response = await proposalProposalsList({
  auth: "Token YOUR_API_TOKEN"
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Description
call_uuid string (uuid)
name string
o array Ordering

organization_uuid string (uuid)
page integer A page number within the paginated result set.
page_size integer Number of results to return per page.
round string (uuid)
state array

200 -

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

Field Type Description
uuid string (uuid)
url string (uri)
slug string
name string
description string
project_name string
project_summary string
project_is_confidential boolean
project_has_civilian_purpose boolean
supporting_documentation array of objects
supporting_documentation.file string (uri) Upload supporting documentation in PDF format.
supporting_documentation.file_name string
supporting_documentation.file_size integer
supporting_documentation.created string (date-time)
state any
approved_by string (uri)
created_by string (uri)
created_by_name string
created_by_uuid string (uuid)
duration_in_days integer Duration in days after provisioning of resources.
project string (uri)
round any
call_uuid string (uuid)
call_name string
call_managing_organisation_uuid string (uuid)
oecd_fos_2007_code any
oecd_fos_2007_label string
allocation_comment string
created string (date-time)
compliance_status object (free-form)
can_submit object (free-form)

Retrieve

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/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.proposal_proposals import proposal_proposals_retrieve # (1)

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

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

try {
  const response = await proposalProposalsRetrieve({
  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
uuid string (uuid)
url string (uri)
slug string
name string
description string
project_name string
project_summary string
project_is_confidential boolean
project_has_civilian_purpose boolean
supporting_documentation array of objects
supporting_documentation.file string (uri) Upload supporting documentation in PDF format.
supporting_documentation.file_name string
supporting_documentation.file_size integer
supporting_documentation.created string (date-time)
state any
approved_by string (uri)
created_by string (uri)
created_by_name string
created_by_uuid string (uuid)
duration_in_days integer Duration in days after provisioning of resources.
project string (uri)
round any
call_uuid string (uuid)
call_name string
call_managing_organisation_uuid string (uuid)
oecd_fos_2007_code any
oecd_fos_2007_label string
allocation_comment string
created string (date-time)
compliance_status object (free-form)
can_submit object (free-form)

Create

1
2
3
4
5
6
http \
  POST \
  https://api.example.com/api/proposal-proposals/ \
  Authorization:"Token YOUR_API_TOKEN" \
  name="my-awesome-proposal-proposal" \
  round_uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.proposal_request import ProposalRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_create # (2)

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

body_data = ProposalRequest(
    name="my-awesome-proposal-proposal",
    round_uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
)
response = proposal_proposals_create.sync(
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsCreate({
  auth: "Token YOUR_API_TOKEN",
  body: {
    "name": "my-awesome-proposal-proposal",
    "round_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Field Type Required Description
name string
description string
project_summary string
project_is_confidential boolean
project_has_civilian_purpose boolean
duration_in_days integer Duration in days after provisioning of resources.
round_uuid string (uuid)
Constraints: write-only
oecd_fos_2007_code any

201 -

Field Type Description
uuid string (uuid)
url string (uri)
slug string
name string
description string
project_name string
project_summary string
project_is_confidential boolean
project_has_civilian_purpose boolean
supporting_documentation array of objects
supporting_documentation.file string (uri) Upload supporting documentation in PDF format.
supporting_documentation.file_name string
supporting_documentation.file_size integer
supporting_documentation.created string (date-time)
state any
approved_by string (uri)
created_by string (uri)
created_by_name string
created_by_uuid string (uuid)
duration_in_days integer Duration in days after provisioning of resources.
project string (uri)
round any
call_uuid string (uuid)
call_name string
call_managing_organisation_uuid string (uuid)
oecd_fos_2007_code any
oecd_fos_2007_label string
allocation_comment string
created string (date-time)
compliance_status object (free-form)
can_submit object (free-form)

Update project details of a proposal

Update project details of a proposal.

1
2
3
4
5
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/update_project_details/ \
  Authorization:"Token YOUR_API_TOKEN" \
  name="my-awesome-proposal-proposal"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.proposal_update_project_details_request import ProposalUpdateProjectDetailsRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_update_project_details # (2)

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

body_data = ProposalUpdateProjectDetailsRequest(
    name="my-awesome-proposal-proposal"
)
response = proposal_proposals_update_project_details.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsUpdateProjectDetails({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "name": "my-awesome-proposal-proposal"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required Description
name string
description string
project_summary string
project_is_confidential boolean
project_has_civilian_purpose boolean
duration_in_days integer Duration in days after provisioning of resources.
oecd_fos_2007_code any

200 - No response body


Delete

1
2
3
4
http \
  DELETE \
  https://api.example.com/api/proposal-proposals/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.proposal_proposals import proposal_proposals_destroy # (1)

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

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

try {
  const response = await proposalProposalsDestroy({
  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


Permissions & Users

List users and their roles in a scope

Retrieves a list of users who have a role within a specific scope (e.g., a project or an organization). The list can be filtered by user details or role.

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

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

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

try {
  const response = await proposalProposalsListUsersList({
  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)
Name Type Description
field array Fields to include in response
full_name string User full name
native_name string User native name
o array Ordering fields
page integer A page number within the paginated result set.
page_size integer Number of results to return per page.
role string (uuid) Role UUID or name
search_string string Search string for user
user string (uuid) User UUID
user_slug string User slug
user_url string User URL
username string User username

200 -

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

Field Type Description
uuid string (uuid)
created string (date-time)
expiration_time string (date-time)
role_name string
role_uuid string (uuid)
user_email string (email)
user_full_name string
user_username string Required. 128 characters or fewer. Lowercase letters, numbers and @/./+/-/_ characters
user_uuid string (uuid)
user_image string (uri)
created_by_full_name string
created_by_uuid string (uuid)

Grant a role to a user

Assigns a specific role to a user within the current scope. An optional expiration time for the role can be set.

1
2
3
4
5
6
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/add_user/ \
  Authorization:"Token YOUR_API_TOKEN" \
  role="string-value" \
  user="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.user_role_create_request import UserRoleCreateRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_add_user # (2)

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

body_data = UserRoleCreateRequest(
    role="string-value",
    user="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
)
response = proposal_proposals_add_user.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsAddUser({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "role": "string-value",
    "user": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
role string
user string (uuid)
expiration_time string (date-time)

201 -

Field Type
expiration_time string (date-time)

400 - Validation error, for example when trying to add a user to a terminated project.


Revoke a role from a user

Removes a specific role from a user within the current scope. This effectively revokes their permissions associated with that role.

1
2
3
4
5
6
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/delete_user/ \
  Authorization:"Token YOUR_API_TOKEN" \
  role="string-value" \
  user="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.user_role_delete_request import UserRoleDeleteRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_delete_user # (2)

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

body_data = UserRoleDeleteRequest(
    role="string-value",
    user="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
)
response = proposal_proposals_delete_user.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsDeleteUser({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "role": "string-value",
    "user": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
role string
user string (uuid)
expiration_time string (date-time)

200 - Role revoked successfully.


Update a user's role expiration

Updates the expiration time for a user's existing role in the current scope. This is useful for extending or shortening the duration of a permission. To make a role permanent, set expiration_time to null.

1
2
3
4
5
6
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/update_user/ \
  Authorization:"Token YOUR_API_TOKEN" \
  role="string-value" \
  user="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.user_role_update_request import UserRoleUpdateRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_update_user # (2)

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

body_data = UserRoleUpdateRequest(
    role="string-value",
    user="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
)
response = proposal_proposals_update_user.sync(
    uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsUpdateUser({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  },
  body: {
    "role": "string-value",
    "user": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
uuid string (uuid)
Field Type Required
role string
user string (uuid)
expiration_time string (date-time)

200 -

Field Type
expiration_time string (date-time)

Other Actions

Get checklist with questions and existing answers

Get checklist with questions and existing answers.

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/checklist/ \
  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.proposal_proposals import proposal_proposals_checklist_retrieve # (1)

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

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

try {
  const response = await proposalProposalsChecklistRetrieve({
  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
checklist object (free-form)
completion object
completion.uuid string (uuid)
completion.is_completed boolean Whether all required questions have been answered
completion.completion_percentage number (double)
completion.unanswered_required_questions array of anys
completion.checklist_name string
completion.checklist_description string
completion.created string (date-time)
completion.modified string (date-time)
questions array of objects
questions.uuid string (uuid)
questions.description string
questions.user_guidance string
questions.question_type any Type of question and expected answer format
questions.required boolean
questions.order integer
questions.existing_answer object (free-form)
questions.question_options array of anys
questions.min_value string (decimal) Minimum value allowed for NUMBER type questions
questions.max_value string (decimal) Maximum value allowed for NUMBER type questions
questions.allowed_file_types any List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
questions.allowed_mime_types any List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
questions.max_file_size_mb integer Maximum file size in megabytes. If not set, no size limit is enforced.
questions.max_files_count integer Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.

400 -


404 -


Checklist review

Get checklist with questions and existing answers including review logic (reviewers only).

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/checklist_review/ \
  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.proposal_proposals import proposal_proposals_checklist_review_retrieve # (1)

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

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

try {
  const response = await proposalProposalsChecklistReviewRetrieve({
  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
checklist object (free-form)
completion object
completion.uuid string (uuid)
completion.is_completed boolean Whether all required questions have been answered
completion.completion_percentage number (double)
completion.unanswered_required_questions array of anys
completion.checklist_name string
completion.checklist_description string
completion.created string (date-time)
completion.modified string (date-time)
completion.requires_review boolean Whether any answers triggered review requirements
completion.reviewed_by integer User who reviewed the checklist completion
completion.reviewed_by_name string
completion.reviewed_at string (date-time)
completion.review_notes string Notes from the reviewer
completion.review_trigger_summary array of anys
questions array of objects
questions.uuid string (uuid)
questions.description string
questions.user_guidance string
questions.question_type any Type of question and expected answer format
questions.required boolean
questions.order integer
questions.existing_answer object (free-form)
questions.question_options array of anys
questions.min_value string (decimal) Minimum value allowed for NUMBER type questions
questions.max_value string (decimal) Maximum value allowed for NUMBER type questions
questions.allowed_file_types any List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
questions.allowed_mime_types any List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
questions.max_file_size_mb integer Maximum file size in megabytes. If not set, no size limit is enforced.
questions.max_files_count integer Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.
questions.operator any
questions.review_answer_value any Answer value that trigger review.
questions.always_requires_review boolean This question always requires review regardless of answer

400 -


404 -


Get checklist template for creating new objects

Get checklist template for creating new objects.

1
2
3
4
5
http \
  GET \
  https://api.example.com/api/proposal-proposals/checklist-template/ \
  Authorization:"Token YOUR_API_TOKEN" \
  parent_uuid=="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.proposal_proposals import proposal_proposals_checklist_template_retrieve # (1)

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

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

try {
  const response = await proposalProposalsChecklistTemplateRetrieve({
  auth: "Token YOUR_API_TOKEN",
  query: {
    "parent_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required Description
parent_uuid string (uuid) UUID of the parent object (e.g., customer UUID for new projects)

200 -

Field Type Description
checklist object (free-form)
questions array of objects
questions.uuid string (uuid)
questions.required boolean
questions.description string
questions.user_guidance string Additional guidance text visible to users when answering and reviewing
questions.question_options array of objects
questions.question_options.uuid string (uuid)
questions.question_options.label string
questions.question_options.order integer
questions.question_type any Type of question and expected answer format
questions.order integer
questions.min_value string (decimal) Minimum value allowed for NUMBER type questions
questions.max_value string (decimal) Maximum value allowed for NUMBER type questions
questions.allowed_file_types any List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
questions.allowed_mime_types any List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
questions.max_file_size_mb integer Maximum file size in megabytes. If not set, no size limit is enforced.
questions.max_files_count integer Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.
questions.operator any
questions.review_answer_value any Answer value that trigger review.
questions.always_requires_review boolean This question always requires review regardless of answer
questions.guidance_answer_value any Answer value that triggers display of user guidance.
questions.guidance_operator any Operator to use when comparing answer with guidance_answer_value
questions.always_show_guidance boolean Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator
questions.dependency_logic_operator any Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.
initial_visible_questions array of objects
initial_visible_questions.uuid string (uuid)
initial_visible_questions.required boolean
initial_visible_questions.description string
initial_visible_questions.user_guidance string Additional guidance text visible to users when answering and reviewing
initial_visible_questions.question_options array of objects
initial_visible_questions.question_options.uuid string (uuid)
initial_visible_questions.question_options.label string
initial_visible_questions.question_options.order integer
initial_visible_questions.question_type any Type of question and expected answer format
initial_visible_questions.order integer
initial_visible_questions.min_value string (decimal) Minimum value allowed for NUMBER type questions
initial_visible_questions.max_value string (decimal) Maximum value allowed for NUMBER type questions
initial_visible_questions.allowed_file_types any List of allowed file extensions (e.g., ['.pdf', '.doc', '.docx']). If empty, all file types are allowed.
initial_visible_questions.allowed_mime_types any List of allowed MIME types (e.g., ['application/pdf', 'application/msword']). If empty, MIME type validation is not enforced. When both extensions and MIME types are specified, files must match both criteria for security.
initial_visible_questions.max_file_size_mb integer Maximum file size in megabytes. If not set, no size limit is enforced.
initial_visible_questions.max_files_count integer Maximum number of files allowed for MULTIPLE_FILES type questions. If not set, no count limit is enforced.
initial_visible_questions.operator any
initial_visible_questions.review_answer_value any Answer value that trigger review.
initial_visible_questions.always_requires_review boolean This question always requires review regardless of answer
initial_visible_questions.guidance_answer_value any Answer value that triggers display of user guidance.
initial_visible_questions.guidance_operator any Operator to use when comparing answer with guidance_answer_value
initial_visible_questions.always_show_guidance boolean Show user guidance always, regardless of answer. If False, guidance is conditional on answer matching guidance_answer_value with guidance_operator
initial_visible_questions.dependency_logic_operator any Defines how multiple dependencies are evaluated. AND: All dependencies must be satisfied. OR: At least one dependency must be satisfied.

400 -


404 -


Get checklist completion status with review triggers (reviewers only)

Get checklist completion status with review triggers (reviewers only).

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/completion_review_status/ \
  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.proposal_proposals import proposal_proposals_completion_review_status_retrieve # (1)

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

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

try {
  const response = await proposalProposalsCompletionReviewStatusRetrieve({
  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
uuid string (uuid)
is_completed boolean Whether all required questions have been answered
completion_percentage number (double)
unanswered_required_questions array of anys
checklist_name string
checklist_description string
created string (date-time)
modified string (date-time)
requires_review boolean Whether any answers triggered review requirements
reviewed_by integer User who reviewed the checklist completion
reviewed_by_name string
reviewed_at string (date-time)
review_notes string Notes from the reviewer
review_trigger_summary array of anys

400 -


404 -


Get checklist completion status

Get checklist completion status.

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/completion_status/ \
  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.proposal_proposals import proposal_proposals_completion_status_retrieve # (1)

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

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

try {
  const response = await proposalProposalsCompletionStatusRetrieve({
  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
uuid string (uuid)
is_completed boolean Whether all required questions have been answered
completion_percentage number (double)
unanswered_required_questions array of anys
checklist_name string
checklist_description string
created string (date-time)
modified string (date-time)

400 -


404 -


List resources for a proposal

List resources for a proposal.

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

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

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

try {
  const response = await proposalProposalsResourcesList({
  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)
Name Type Description
page integer A page number within the paginated result set.
page_size integer Number of results to return per page.

200 -

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

Field Type
uuid string (uuid)
url string
requested_offering any
resource string (uri)
resource_name string
call_resource_template string
call_resource_template_name string
attributes any
limits any
description string
created_by string (uri)
created_by_name string

Retrieve

1
2
3
4
http \
  GET \
  https://api.example.com/api/proposal-proposals/string-value/resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.proposal_proposals import proposal_proposals_resources_retrieve # (1)

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

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

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

200 -

Field Type
uuid string (uuid)
url string
requested_offering any
resource string (uri)
resource_name string
call_resource_template string
call_resource_template_name string
attributes any
limits any
description string
created_by string (uri)
created_by_name string

Approve a proposal

Approve a proposal.

1
2
3
4
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/approve/ \
  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.proposal_approve_request import ProposalApproveRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_approve # (2)

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

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

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

try {
  const response = await proposalProposalsApprove({
  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
allocation_comment string

200 - No response body


Attach document to proposal

Attach document to proposal.

1
2
3
4
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/attach_document/ \
  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.proposal_documentation_request import ProposalDocumentationRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_attach_document # (2)

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

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

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

try {
  const response = await proposalProposalsAttachDocument({
  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
file string (binary) Upload supporting documentation in PDF format.

200 - No response body


Reject a proposal

Reject a proposal.

1
2
3
4
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/reject/ \
  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.proposal_approve_request import ProposalApproveRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_reject # (2)

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

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

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

try {
  const response = await proposalProposalsReject({
  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
allocation_comment string

200 - No response body


Create resource for a proposal

Create resource for a proposal.

1
2
3
4
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/resources/ \
  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.requested_resource_request import RequestedResourceRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_resources_set # (2)

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

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

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

try {
  const response = await proposalProposalsResourcesSet({
  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
attributes any
limits any
description string
requested_offering_uuid string (uuid)
call_resource_template_uuid string (uuid)

200 -

Field Type
uuid string (uuid)
url string
requested_offering any
resource string (uri)
resource_name string
call_resource_template string
call_resource_template_name string
attributes any
limits any
description string
created_by string (uri)
created_by_name string

Submit a proposal

Submit a proposal.

1
2
3
4
http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/submit/ \
  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.proposal_proposals import proposal_proposals_submit # (1)

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

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

try {
  const response = await proposalProposalsSubmit({
  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 - No response body


Submit checklist answers

Submit checklist answers.

1
2
3
4
echo '[{"question_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890", "answer_data": null}]' | http \
  POST \
  https://api.example.com/api/proposal-proposals/a1b2c3d4-e5f6-7890-abcd-ef1234567890/submit_answers/ \
  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.proposal_proposals import proposal_proposals_submit_answers # (1)

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

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

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

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

Field Type Required
question_uuid string (uuid)
answer_data any

200 -

Field Type Description
detail string
completion object
completion.uuid string (uuid)
completion.is_completed boolean Whether all required questions have been answered
completion.completion_percentage number (double)
completion.unanswered_required_questions array of anys
completion.checklist_name string
completion.checklist_description string
completion.created string (date-time)
completion.modified string (date-time)
completion.requires_review boolean Whether any answers triggered review requirements
completion.reviewed_by integer User who reviewed the checklist completion
completion.reviewed_by_name string
completion.reviewed_at string (date-time)
completion.review_notes string Notes from the reviewer
completion.review_trigger_summary array of anys

400 -


404 -


Update

1
2
3
4
http \
  PUT \
  https://api.example.com/api/proposal-proposals/string-value/resources/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
17
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.requested_resource_request import RequestedResourceRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_resources_update # (2)

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

body_data = RequestedResourceRequest()
response = proposal_proposals_resources_update.sync(
    obj_uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    uuid="string-value",
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsResourcesUpdate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "obj_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "uuid": "string-value"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
obj_uuid string
uuid string
Field Type Required
attributes any
limits any
description string
requested_offering_uuid string (uuid)
call_resource_template_uuid string (uuid)

200 -

Field Type
uuid string (uuid)
url string
requested_offering any
resource string (uri)
resource_name string
call_resource_template string
call_resource_template_name string
attributes any
limits any
description string
created_by string (uri)
created_by_name string

Partial Update

1
2
3
4
http \
  PATCH \
  https://api.example.com/api/proposal-proposals/string-value/resources/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
17
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.models.patched_requested_resource_request import PatchedRequestedResourceRequest # (1)
from waldur_api_client.api.proposal_proposals import proposal_proposals_resources_partial_update # (2)

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

body_data = PatchedRequestedResourceRequest()
response = proposal_proposals_resources_partial_update.sync(
    obj_uuid="a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    uuid="string-value",
    client=client,
    body=body_data
)

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

try {
  const response = await proposalProposalsResourcesPartialUpdate({
  auth: "Token YOUR_API_TOKEN",
  path: {
    "obj_uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "uuid": "string-value"
  }
});
  console.log('Success:', response);
} catch (error) {
  console.error('Error:', error);
}
Name Type Required
obj_uuid string
uuid string
Field Type Required
attributes any
limits any
description string
requested_offering_uuid string (uuid)
call_resource_template_uuid string (uuid)

200 -

Field Type
uuid string (uuid)
url string
requested_offering any
resource string (uri)
resource_name string
call_resource_template string
call_resource_template_name string
attributes any
limits any
description string
created_by string (uri)
created_by_name string

Delete

1
2
3
4
http \
  DELETE \
  https://api.example.com/api/proposal-proposals/string-value/resources/a1b2c3d4-e5f6-7890-abcd-ef1234567890/ \
  Authorization:"Token YOUR_API_TOKEN"
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
from waldur_api_client.client import AuthenticatedClient
from waldur_api_client.api.proposal_proposals import proposal_proposals_resources_destroy # (1)

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

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

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

204 - No response body