Skip to main content

kobana billing proposal-templates

Commands of kobana billing proposal-templates. Every global option (Global options) applies here.

CommandHTTPDescription
proposal-templates listGET /v1/proposal_templatesList proposal templates
proposal-templates createPOST /v1/proposal_templatesCreate proposal template
proposal-templates updatePUT /v1/proposal_templatesUpsert proposal template
proposal-templates getGET /v1/proposal_templates/{id}Get proposal template
proposal-templates deleteDELETE /v1/proposal_templates/{id}Delete proposal template
proposal-templates activatePOST /v1/proposal_templates/{id}/activateActivate proposal template
proposal-templates deactivatePOST /v1/proposal_templates/{id}/deactivateDeactivate proposal template
proposal-templates duplicatePOST /v1/proposal_templates/{id}/duplicateDuplicate proposal template

proposal-templates list​

List proposal templates

kobana billing proposal-templates list [OPTIONS]

GET /v1/proposal_templates

Returns a paginated list of the current organization's proposal templates.

Query parameters

NameTypeRequiredDescription
pageintegernoPage (starts at 1). Default: 1.
per_pageintegernoItems per page. Default: 20. Maximum: 100.
sort_bystringnoSort field. Default depends on the resource.
sort_orderstringnoSort direction. Default: desc. Values: asc, desc.
searchstringnoText search by name or description.
is_activebooleannoFilter by active (true) or deactivated (false) templates.

Responses

HTTPDescription
200Paginated list of proposal templates.
404Resource not found in the current organization.

proposal-templates create​

Create proposal template

kobana billing proposal-templates create [OPTIONS]

POST /v1/proposal_templates

Creates a proposal template linked to a Google Doc or Google Slides. The google_doc_id must be unique per organization.

Request body

NameTypeRequiredDescription
namestringyesTemplate name (unique per organization).
google_doc_idstringyesGoogle Doc/Slides ID used as the template (unique per organization).
descriptionstringnoOptional template description.
document_typestringnoBase document type: google_doc or google_slides. Default: google_doc. Values: google_doc, google_slides.
app_script_urlstring (uri)noURL of the published Apps Script that renders the template, when applicable.
google_drive_folder_idstringnoGoogle Drive folder ID where generated copies will be saved.
is_activebooleannoWhen false, creates the template already deactivated.
external_idstringnoIdentifier in your external system, for idempotency/sync.
custom_metadataobjectnoFree-form metadata defined by the client for internal correlation.

More fields and nested objects: kobana schema billing.proposal-templates.create.

Responses

HTTPDescription
201Proposal template created.
400Request body failed validation.
404Resource not found in the current organization.
422Request body failed validation.

proposal-templates update​

Upsert proposal template

kobana billing proposal-templates update [OPTIONS]

PUT /v1/proposal_templates

Takes the same body as POST, plus id and public_id, and dedups on id, public_id, external_id and the resource's natural keys, in that order, stopping at the first key that finds a record. A match is updated and returns 200; otherwise the record is created and returns 201. The POST's required fields are required only when no record is found, and updates are partial: absent fields keep their stored value.

Request body

NameTypeRequiredDescription
namestringnoTemplate name (unique per organization).
descriptionstringnoOptional template description.
document_typestringnoBase document type: google_doc or google_slides. Default: google_doc. Values: google_doc, google_slides.
google_doc_idstringnoGoogle Doc/Slides ID used as the template (unique per organization).
app_script_urlstring (uri)noURL of the published Apps Script that renders the template, when applicable.
google_drive_folder_idstringnoGoogle Drive folder ID where generated copies will be saved.
is_activebooleannoWhen false, creates the template already deactivated.
external_idstringnoIdentifier in your external system, for idempotency/sync.
custom_metadataobjectnoFree-form metadata defined by the client for internal correlation.
idstring (uuid)noRecord UUID. Used only to locate it — never written.
public_idstring (uuid)noPublic UUID of the record, used to locate it.

More fields and nested objects: kobana schema billing.proposal-templates.update.

Responses

HTTPDescription
200Record updated.
201Record created.
400Request body failed validation.
404Resource not found in the current organization.
422Request body failed validation.

proposal-templates get​

Get proposal template

kobana billing proposal-templates get [ID] [OPTIONS]

GET /v1/proposal_templates/{id}

Path arguments: id

Responses

HTTPDescription
200Proposal template detail.
404Resource not found in the current organization.

proposal-templates delete​

Delete proposal template

kobana billing proposal-templates delete [ID] [OPTIONS]

DELETE /v1/proposal_templates/{id}

Path arguments: id

Responses

HTTPDescription
200Proposal template removed.
404Resource not found in the current organization.

proposal-templates activate​

Activate proposal template

kobana billing proposal-templates activate [ID] [OPTIONS]

POST /v1/proposal_templates/{id}/activate

Activates a previously deactivated proposal template, making it available for use in new proposals.

Path arguments: id

Responses

HTTPDescription
200Proposal template activated.
404Resource not found in the current organization.

proposal-templates deactivate​

Deactivate proposal template

kobana billing proposal-templates deactivate [ID] [OPTIONS]

POST /v1/proposal_templates/{id}/deactivate

Deactivates a proposal template. Deactivated templates cannot be used in new proposals, but proposals already created remain unchanged.

Path arguments: id

Responses

HTTPDescription
200Proposal template deactivated.
404Resource not found in the current organization.

proposal-templates duplicate​

Duplicate proposal template

kobana billing proposal-templates duplicate [ID] [OPTIONS]

POST /v1/proposal_templates/{id}/duplicate

Creates a copy of the given template, keeping configuration and metadata. The new template gets a derived name.

Path arguments: id

Responses

HTTPDescription
201Proposal template duplicated.
404Resource not found in the current organization.