Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
This API client was generated by the OpenAPI Generator project. By using the OpenAPI-spec from a remote server, you can easily generate an API client.
- API version: v1
- Package version: 3.0.0
- Generator version: 7.16.0-DOCSPRING
- Build package: org.openapitools.codegen.languages.GoClientCodegen
Install the following dependencies:
go get github.com/stretchr/testify/assert
go get golang.org/x/net/contextPut the package under your project folder and add the following in import:
import docspring "github.com/GIT_USER_ID/GIT_REPO_ID"To use a proxy, set the environment variable HTTP_PROXY:
os.Setenv("HTTP_PROXY", "http://proxy_name:proxy_port")Default configuration comes with Servers field that contains server objects as defined in the OpenAPI specification.
For using other server than the one defined on index 0 set context value docspring.ContextServerIndex of type int.
ctx := context.WithValue(context.Background(), docspring.ContextServerIndex, 1)Templated server URL is formatted using default variables from configuration or from context value docspring.ContextServerVariables of type map[string]string.
ctx := context.WithValue(context.Background(), docspring.ContextServerVariables, map[string]string{
	"basePath": "v2",
})Note, enum values are always validated and all unused variables are silently ignored.
Each operation can use different server URL defined using OperationServers map in the Configuration.
An operation is uniquely identified by "{classname}Service.{nickname}" string.
Similar rules for overriding default operation server index and variables applies by using docspring.ContextOperationServerIndices and docspring.ContextOperationServerVariables context maps.
ctx := context.WithValue(context.Background(), docspring.ContextOperationServerIndices, map[string]int{
	"{classname}Service.{nickname}": 2,
})
ctx = context.WithValue(context.Background(), docspring.ContextOperationServerVariables, map[string]map[string]string{
	"{classname}Service.{nickname}": {
		"port": "8443",
	},
})All URIs are relative to https://sync.api.docspring.com/api/v1
| Class | Method | HTTP request | Description | 
|---|---|---|---|
| ClientAPI | AddFieldsToTemplate | Put /templates/{template_id}/add_fields | Add new fields to a Template | 
| ClientAPI | BatchGeneratePdfs | Post /submissions/batches | Generate multiple PDFs | 
| ClientAPI | CombinePdfs | Post /combined_submissions | Merge submission PDFs, template PDFs, or custom files | 
| ClientAPI | CopyTemplate | Post /templates/{template_id}/copy | Copy a template | 
| ClientAPI | CreateCustomFileFromUpload | Post /custom_files | Create a new custom file from a cached S3 upload | 
| ClientAPI | CreateDataRequestEvent | Post /data_requests/{data_request_id}/events | Create a new event for emailing a signee a request for signature | 
| ClientAPI | CreateDataRequestToken | Post /data_requests/{data_request_id}/tokens | Create a new data request token for form authentication | 
| ClientAPI | CreateFolder | Post /folders/ | Create a folder | 
| ClientAPI | CreateHtmlTemplate | Post /templates?endpoint_variant=create_html_template | Create a new HTML template | 
| ClientAPI | CreatePdfTemplate | Post /templates | Create a new PDF template with a form POST file upload | 
| ClientAPI | CreatePdfTemplateFromUpload | Post /templates?endpoint_variant=create_template_from_cached_upload | Create a new PDF template from a cached S3 file upload | 
| ClientAPI | DeleteFolder | Delete /folders/{folder_id} | Delete a folder | 
| ClientAPI | DeleteTemplate | Delete /templates/{template_id} | Delete a template | 
| ClientAPI | ExpireCombinedSubmission | Delete /combined_submissions/{combined_submission_id} | Expire a combined submission | 
| ClientAPI | ExpireSubmission | Delete /submissions/{submission_id} | Expire a PDF submission | 
| ClientAPI | GeneratePdf | Post /templates/{template_id}/submissions | Generate a PDF | 
| ClientAPI | GeneratePreview | Post /submissions/{submission_id}/generate_preview | Generate a preview PDF for partially completed data requests | 
| ClientAPI | GetCombinedSubmission | Get /combined_submissions/{combined_submission_id} | Check the status of a combined submission (merged PDFs) | 
| ClientAPI | GetDataRequest | Get /data_requests/{data_request_id} | Look up a submission data request | 
| ClientAPI | GetFullTemplate | Get /templates/{template_id}?full=true | Fetch the full attributes for a PDF template | 
| ClientAPI | GetPresignUrl | Get /uploads/presign | Get a presigned S3 URL for direct file upload | 
| ClientAPI | GetSubmission | Get /submissions/{submission_id} | Check the status of a PDF | 
| ClientAPI | GetSubmissionBatch | Get /submissions/batches/{submission_batch_id} | Check the status of a submission batch job | 
| ClientAPI | GetTemplate | Get /templates/{template_id} | Check the status of an uploaded template | 
| ClientAPI | GetTemplateSchema | Get /templates/{template_id}/schema | Fetch the JSON schema for a template | 
| ClientAPI | ListCombinedSubmissions | Get /combined_submissions | Get a list of all combined submissions | 
| ClientAPI | ListFolders | Get /folders/ | Get a list of all folders | 
| ClientAPI | ListSubmissions | Get /submissions | List all submissions | 
| ClientAPI | ListTemplateSubmissions | Get /templates/{template_id}/submissions | List all submissions for a given template | 
| ClientAPI | ListTemplates | Get /templates | Get a list of all templates | 
| ClientAPI | MoveFolderToFolder | Post /folders/{folder_id}/move | Move a folder | 
| ClientAPI | MoveTemplateToFolder | Post /templates/{template_id}/move | Move Template to folder | 
| ClientAPI | PublishTemplateVersion | Post /templates/{template_id}/publish_version | Publish a template version | 
| ClientAPI | RenameFolder | Post /folders/{folder_id}/rename | Rename a folder | 
| ClientAPI | RestoreTemplateVersion | Post /templates/{template_id}/restore_version | Restore a template version | 
| ClientAPI | TestAuthentication | Get /authentication | Test authentication | 
| ClientAPI | UpdateDataRequest | Put /data_requests/{data_request_id} | Update a submission data request | 
| ClientAPI | UpdateTemplate | Put /templates/{template_id} | Update a Template | 
| ClientAPI | UpdateTemplateDocument | Put /templates/{template_id}?endpoint_variant=update_template_pdf_with_form_post | Update a template's document with a form POST file upload | 
| ClientAPI | UpdateTemplateDocumentFromUpload | Put /templates/{template_id}?endpoint_variant=update_template_pdf_with_cached_upload | Update a template's document with a cached S3 file upload | 
- AddFieldsData
- BatchGeneratePdfs201Response
- CombinePdfsData
- CombinedSubmission
- CombinedSubmissionAction
- CopyTemplateOptions
- CreateCombinedSubmissionResponse
- CreateCustomFileData
- CreateCustomFileResponse
- CreateFolderData
- CreateHtmlTemplate
- CreatePdfSubmissionData
- CreatePdfTemplate
- CreateSubmissionDataRequestData
- CreateSubmissionDataRequestEventRequest
- CreateSubmissionDataRequestEventResponse
- CreateSubmissionDataRequestResponse
- CreateSubmissionDataRequestTokenResponse
- CreateSubmissionResponse
- CustomFile
- ErrorOrMultipleErrorsResponse
- ErrorResponse
- Folder
- JsonSchema
- ListSubmissionsResponse
- MoveFolderData
- MoveTemplateData
- MultipleErrorsResponse
- PublishVersionData
- RenameFolderData
- RestoreVersionData
- Submission
- Submission422Response
- SubmissionAction
- SubmissionBatch
- SubmissionBatchData
- SubmissionBatchWithSubmissions
- SubmissionDataRequest
- SubmissionDataRequestEvent
- SubmissionDataRequestShow
- SubmissionDataRequestToken
- SubmissionPreview
- SuccessErrorResponse
- SuccessMultipleErrorsResponse
- Template
- TemplateAddFieldsResponse
- TemplateDeleteResponse
- TemplatePreview
- TemplatePublishVersionResponse
- UpdateHtmlTemplate
- UpdatePdfTemplate
- UpdateSubmissionDataRequestData
- UploadPresignResponse
Authentication schemes defined for the API:
- Type: HTTP basic authentication
Example
auth := context.WithValue(context.Background(), docspring.ContextBasicAuth, docspring.BasicAuth{
	UserName: "username",
	Password: "password",
})
r, err := client.Service.Operation(auth, args)Due to the fact that model structure members are all pointers, this package contains a number of utility functions to easily obtain pointers to values of basic types. Each of these functions takes a value of the given basic type and returns a pointer to it:
- PtrBool
- PtrInt
- PtrInt32
- PtrInt64
- PtrFloat
- PtrFloat32
- PtrFloat64
- PtrString
- PtrTime