Duplicate document
duplicate-documentCreate a new draft document as a copy of an existing document.
Use this tool when:
The user wants to duplicate or copy a document, e.g. to reuse a previous contract as the starting point for a new one with a different counterparty
A new agreement should start from an existing document rather than from a template
The copy takes over the source document's content, parties, signatories, dynamic field values, metadata values, attachments, teams, tags, document type and template link. The new document always starts in the draft stage, whatever stage the source document is in, and a source document that is in signing or done is copied with its content as it was before signing started.
Change what differs in the new document afterwards with the update-* tools, e.g. update-document-party for the counterparty or update-document-dynamic-fields for amounts and dates.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | The name of the new document. If omitted, the source document's name followed by " (copy)" is used | |
| document_uuid | Yes | UUID of the document to duplicate. If you don't already have the document's UUID, use the list-documents tool to find it. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | No | URL to open the document in fynk | |
| name | No | Name of the document | |
| tags | No | The tags on the document. Tags are the account's own classification labels (e.g. relationship type, commercial significance, region), so they show which categories this account uses and can be filtered on with filter_tags. | |
| uuid | No | Unique identifier for the document. Do not show to the user unless they ask for it | |
| stage | No | What stage the document is in currently | |
| teams | No | The teams the document is assigned to. | |
| locale | No | Locale code, e.g. en-GB, de-AT. Absent when the document has none set. Prefer describing the locale in natural language (e.g. 'British English') rather than showing the raw code. | |
| origin | No | How the document was created. | |
| parties | No | The contracting entities on the document. | |
| conditions | No | The document's conditions: rules over its dynamic fields deciding whether a passage of the document applies, and whether each currently holds. Use them to explain why a clause is or is not part of the document, and what would have to change to flip it. | |
| created_at | No | When the document was created. | |
| updated_at | No | When the document was last updated. | |
| archived_at | No | When the document was archived. Absent when the document is not archived. | |
| signatories | No | The individual people who sign the document. Distinct from parties: a signatory often signs on behalf of a party (e.g. a business), so a person may be a signatory without appearing as a party. | |
| _entity_type | No | Only relevant for tooling. Do not show to the user | |
| summary_text | No | A summary of the document content. Absent when the document has no summary. | |
| document_type | No | If present, indicates what kind of document this is. Absent when the document has no type assigned | |
| dynamic_fields | No | The document's dynamic fields and their values. | |
| signature_type | No | eIDAS assurance level used when signing the document. Absent when none has been chosen. | |
| workflow_state | No | Gives an indication of which stage transitions, etc are possible to perform on this document. This object is technical state, not display content: when relaying it to the user, always render it as natural-language prose and never echo raw field names or snake_case values (e.g. say 'signing cannot be started yet because not every signature block has been assigned to a signatory' instead of mentioning 'can_start_signing' or 'signature_block_signatory'). | |
| metadata_values | No | The document's metadata fields and their values. | |
| signature_blocks | No | The places in the document that are signed. A block is bound either to a single signatory or to a party, in which case every signatory of that party signs it. Every signatory needs a block covering them before signing can be started. | |
| sequential_signing | No | When true, signatories sign one at a time, in ascending order of their signing_order. | |
| source_template_uuid | No | UUID of the template the document was created from. Absent when it was not created from a template. | |
| external_signatory_invitation_message | No | Text shown in the email inviting external signatories to sign. Absent when no message is set. |