# Document AI Warehouse API . projects . locations . documents . documentLinks

## Instance Methods

Close httplib2 connections.

Create a link between a source document and a target document.

Remove the link between the source and target documents.

### Method Details

`close()`

    Close httplib2 connections.

`create(parent, body=None, x__xgafv=None)`

    Create a link between a source document and a target document.

    Args:
      parent: string, Required. Parent of the document-link to be created. parent of document-link should be a document. Format: projects/{project_number}/locations/{location}/documents/{source_document_id}. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for DocumentLinkService.CreateDocumentLink.
      "documentLink": { # A document-link between source and target document. # Required. Document links associated with the source documents (source_document_id).
        "createTime": "A String", # Output only. The time when the documentLink is created.
        "description": "A String", # Description of this document-link.
        "name": "A String", # Name of this document-link. It is required that the parent derived form the name to be consistent with the source document reference. Otherwise an exception will be thrown. Format: projects/{project_number}/locations/{location}/documents/{source_document_id}/documentLinks/{document_link_id}.
        "sourceDocumentReference": { # References to the documents. # Document references of the source document.
          "createTime": "A String", # Output only. The time when the document is created.
          "deleteTime": "A String", # Output only. The time when the document is deleted.
          "displayName": "A String", # display_name of the referenced document; this name does not need to be consistent to the display_name in the Document proto, depending on the ACL constraint.
          "documentIsFolder": True or False, # The document type of the document being referenced.
          "documentIsLegalHoldFolder": True or False, # Document is a folder with legal hold.
          "documentIsRetentionFolder": True or False, # Document is a folder with retention policy.
          "documentName": "A String", # Required. Name of the referenced document.
          "snippet": "A String", # Stores the subset of the referenced document's content. This is useful to allow user peek the information of the referenced document.
          "updateTime": "A String", # Output only. The time when the document is last updated.
        },
        "state": "A String", # The state of the documentlink. If target node has been deleted, the link is marked as invalid. Removing a source node will result in removal of all associated links.
        "targetDocumentReference": { # References to the documents. # Document references of the target document.
          "createTime": "A String", # Output only. The time when the document is created.
          "deleteTime": "A String", # Output only. The time when the document is deleted.
          "displayName": "A String", # display_name of the referenced document; this name does not need to be consistent to the display_name in the Document proto, depending on the ACL constraint.
          "documentIsFolder": True or False, # The document type of the document being referenced.
          "documentIsLegalHoldFolder": True or False, # Document is a folder with legal hold.
          "documentIsRetentionFolder": True or False, # Document is a folder with retention policy.
          "documentName": "A String", # Required. Name of the referenced document.
          "snippet": "A String", # Stores the subset of the referenced document's content. This is useful to allow user peek the information of the referenced document.
          "updateTime": "A String", # Output only. The time when the document is last updated.
        },
        "updateTime": "A String", # Output only. The time when the documentLink is last updated.
      },
      "requestMetadata": { # Meta information is used to improve the performance of the service. # The meta information collected about the document creator, used to enforce access control for the service.
        "userInfo": { # The user information. # Provides user unique identification and groups information.
          "groupIds": [ # The unique group identifications which the user is belong to. The format is "group:yyyy@example.com";
            "A String",
          ],
          "id": "A String", # A unique user identification string, as determined by the client. The maximum number of allowed characters is 255. Allowed characters include numbers 0 to 9, uppercase and lowercase letters, and restricted special symbols (:, @, +, -, _, ~) The format is "user:xxxx@example.com";
        },
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A document-link between source and target document.
      "createTime": "A String", # Output only. The time when the documentLink is created.
      "description": "A String", # Description of this document-link.
      "name": "A String", # Name of this document-link. It is required that the parent derived form the name to be consistent with the source document reference. Otherwise an exception will be thrown. Format: projects/{project_number}/locations/{location}/documents/{source_document_id}/documentLinks/{document_link_id}.
      "sourceDocumentReference": { # References to the documents. # Document references of the source document.
        "createTime": "A String", # Output only. The time when the document is created.
        "deleteTime": "A String", # Output only. The time when the document is deleted.
        "displayName": "A String", # display_name of the referenced document; this name does not need to be consistent to the display_name in the Document proto, depending on the ACL constraint.
        "documentIsFolder": True or False, # The document type of the document being referenced.
        "documentIsLegalHoldFolder": True or False, # Document is a folder with legal hold.
        "documentIsRetentionFolder": True or False, # Document is a folder with retention policy.
        "documentName": "A String", # Required. Name of the referenced document.
        "snippet": "A String", # Stores the subset of the referenced document's content. This is useful to allow user peek the information of the referenced document.
        "updateTime": "A String", # Output only. The time when the document is last updated.
      },
      "state": "A String", # The state of the documentlink. If target node has been deleted, the link is marked as invalid. Removing a source node will result in removal of all associated links.
      "targetDocumentReference": { # References to the documents. # Document references of the target document.
        "createTime": "A String", # Output only. The time when the document is created.
        "deleteTime": "A String", # Output only. The time when the document is deleted.
        "displayName": "A String", # display_name of the referenced document; this name does not need to be consistent to the display_name in the Document proto, depending on the ACL constraint.
        "documentIsFolder": True or False, # The document type of the document being referenced.
        "documentIsLegalHoldFolder": True or False, # Document is a folder with legal hold.
        "documentIsRetentionFolder": True or False, # Document is a folder with retention policy.
        "documentName": "A String", # Required. Name of the referenced document.
        "snippet": "A String", # Stores the subset of the referenced document's content. This is useful to allow user peek the information of the referenced document.
        "updateTime": "A String", # Output only. The time when the document is last updated.
      },
      "updateTime": "A String", # Output only. The time when the documentLink is last updated.
    }

`delete(name, body=None, x__xgafv=None)`

    Remove the link between the source and target documents.

    Args:
      name: string, Required. The name of the document-link to be deleted. Format: projects/{project_number}/locations/{location}/documents/{source_document_id}/documentLinks/{document_link_id}. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for DocumentLinkService.DeleteDocumentLink.
      "requestMetadata": { # Meta information is used to improve the performance of the service. # The meta information collected about the document creator, used to enforce access control for the service.
        "userInfo": { # The user information. # Provides user unique identification and groups information.
          "groupIds": [ # The unique group identifications which the user is belong to. The format is "group:yyyy@example.com";
            "A String",
          ],
          "id": "A String", # A unique user identification string, as determined by the client. The maximum number of allowed characters is 255. Allowed characters include numbers 0 to 9, uppercase and lowercase letters, and restricted special symbols (:, @, +, -, _, ~) The format is "user:xxxx@example.com";
        },
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
    }