Metadata-Version: 2.1
Name: boldsign
Version: 1.0.0b0
Summary: BoldSign API
Home-page: https://github.com/boldsign/api-csharp-sdk
Author: BoldSign
Author-email: support@boldsign.com
License: MIT
Keywords: boldsign,api,sdk,BoldSign API
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: urllib3 <2.1.0,>=1.25.3
Requires-Dist: python-dateutil
Requires-Dist: pydantic >=2
Requires-Dist: typing-extensions >=4.7.1

# boldsign

Easily integrate BoldSign's e-signature features into your Python applications. This package simplifies sending documents for signature, embedding signing ceremonies, tracking document status, downloading signed documents, and managing e-signature workflows.

## Prerequisites

- Python 3.7+
- Free [developer account](https://boldsign.com/esignature-api/)

## Documentation

- [Official API documentation](https://developers.boldsign.com/)

## Installation & Usage

You can install this package by using the pip tool: 
```sh
pip install boldsign
```
(You may need to run pip with root permission: sudo pip install boldsign)

Then import the package:
```python
import boldsign
```

## Dependencies

This package requires the following dependencies to function properly. They will be installed automatically when you install the package:
 
- urllib3<2.1.0,>=1.25.3 
- python-dateutil 
- pydantic>=2 
- typing-extensions>=4.7.1 

## Getting Started

Please follow the [installation procedure](#installation--usage) and then run the following:

```python

import boldsign
from boldsign.rest import ApiException
from pprint import pprint

# Defining the host is optional and defaults to https://api.boldsign.com
# See configuration.py for a list of all supported configuration parameters.
configuration = boldsign.Configuration(
    host = "https://api.boldsign.com",
    api_key = "***your_api_key***"
)

# Configure with access_token generated using OAuth. 
# configuration = boldsign.Configuration(
#    host = "https://api.boldsign.com",
#    access_token = "***your_access_token***"
# )

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Enter a context with an instance of the API client
with boldsign.ApiClient(configuration) as api_client:
    # Create an instance of the DocumentApi class
    api_instance = boldsign.DocumentApi(api_client)

    # Define the signature field to be added to the document
    signatureField = boldsign.FormField(
        id="sign",
        fieldType="Signature",  # Field type is Signature
        pageNumber=1,  # Specify the page number
        bounds=boldsign.Rectangle(x=100, y=100, width=100, height=50),  # Position and size of the signature field
        isRequired=True,  # Mark this field as required
        font="Helvetica"  # Specify the font
    )

    # Define the signer with a name and email address
    signer = boldsign.DocumentSigner(
        name="David",  # Name of the signer
        emailAddress="david@example.com",  # Signer's email address
        signerType="Signer",  # Specify the signer type
        formFields=[signatureField]  # Assign the signature field to the signer
    )

    # Prepare the request body for sending the document for signature
    send_for_sign = boldsign.SendForSign(
        title="Agreement",  # Title of the document
        signers=[signer],  # List of signers
        files=["/documents/agreement.pdf"]  # Path to the document file to be signed
    )

    try:
        # Send the document for signature and capture the response
        api_response = api_instance.send_document(send_for_sign=send_for_sign)
        print("The response from DocumentApi->send_document:\n")
        pprint(api_response)
    except Exception as e:
        # Print an error message if an exception occurs
        print(f"Exception when calling DocumentApi->send_document: {e}\n")
```

