signplus PHP SDK

Version: 2.0.0 Integrate legally-binding electronic signature to your workflow

Install

composer install alohi/signplus

Example

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getEnvelope(
  envelopeId: "envelopeId"
);

print_r($response);

Services

Signplus

createEnvelope

<?php

use Signplus\Client;
use Signplus\Models\EnvelopeFlowType;
use Signplus\Models\EnvelopeLegalityLevel;
use Signplus\Models\CreateEnvelopeRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new CreateEnvelopeRequest(
  name: "name",
  flowType: EnvelopeFlowType::RequestSignature,
  legalityLevel: EnvelopeLegalityLevel::Ses,
  expiresAt: 123,
  comment: "comment",
  sandbox: true
);

$response = $sdk->Signplus->createEnvelope(
  input: $input
);

print_r($response);

createEnvelopeFromTemplate

<?php

use Signplus\Client;
use Signplus\Models\CreateEnvelopeFromTemplateRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new CreateEnvelopeFromTemplateRequest(
  name: "name",
  comment: "comment",
  sandbox: true
);

$response = $sdk->Signplus->createEnvelopeFromTemplate(
  input: $input,
  templateId: "templateId"
);

print_r($response);

listEnvelopes

<?php

use Signplus\Client;
use Signplus\Models\EnvelopeStatus;
use Signplus\Models\EnvelopeOrderField;
use Signplus\Models\ListEnvelopesRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new ListEnvelopesRequest(
  name: "name",
  tags: [],
  comment: "comment",
  ids: [],
  statuses: [],
  folderIds: [],
  onlyRootFolder: true,
  dateFrom: 123,
  dateTo: 123,
  uid: "uid",
  first: 123,
  last: 123,
  after: "after",
  before: "before",
  orderField: EnvelopeOrderField::CreationDate,
  ascending: true,
  includeTrash: true
);

$response = $sdk->Signplus->listEnvelopes(
  input: $input
);

print_r($response);

getEnvelope

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getEnvelope(
  envelopeId: "envelopeId"
);

print_r($response);

deleteEnvelope

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->deleteEnvelope(
  envelopeId: "envelopeId"
);

print_r($response);

getEnvelopeDocument

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getEnvelopeDocument(
  envelopeId: "envelopeId",
  documentId: "documentId"
);

print_r($response);

getEnvelopeDocuments

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getEnvelopeDocuments(
  envelopeId: "envelopeId"
);

print_r($response);

addEnvelopeDocument

<?php

use Signplus\Client;
use Signplus\Models\AddEnvelopeDocumentRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new AddEnvelopeDocumentRequest(
  file: []
);

$response = $sdk->Signplus->addEnvelopeDocument(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

setEnvelopeDynamicFields

<?php

use Signplus\Client;
use Signplus\Models\DynamicField;
use Signplus\Models\SetEnvelopeDynamicFieldsRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new SetEnvelopeDynamicFieldsRequest(
  dynamicFields: []
);

$response = $sdk->Signplus->setEnvelopeDynamicFields(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

addEnvelopeSigningSteps

<?php

use Signplus\Client;
use Signplus\Models\SigningStep;
use Signplus\Models\AddEnvelopeSigningStepsRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new AddEnvelopeSigningStepsRequest(
  signingSteps: []
);

$response = $sdk->Signplus->addEnvelopeSigningSteps(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

sendEnvelope

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->sendEnvelope(
  envelopeId: "envelopeId"
);

print_r($response);

duplicateEnvelope

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->duplicateEnvelope(
  envelopeId: "envelopeId"
);

print_r($response);

voidEnvelope

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->voidEnvelope(
  envelopeId: "envelopeId"
);

print_r($response);

renameEnvelope

<?php

use Signplus\Client;
use Signplus\Models\RenameEnvelopeRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new RenameEnvelopeRequest(
  name: "name"
);

$response = $sdk->Signplus->renameEnvelope(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

setEnvelopeComment

<?php

use Signplus\Client;
use Signplus\Models\SetEnvelopeCommentRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new SetEnvelopeCommentRequest(
  comment: "comment"
);

$response = $sdk->Signplus->setEnvelopeComment(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

setEnvelopeNotification

<?php

use Signplus\Client;
use Signplus\Models\EnvelopeNotification;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new EnvelopeNotification(
  subject: "subject",
  message: "message",
  reminderInterval: 123
);

$response = $sdk->Signplus->setEnvelopeNotification(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

setEnvelopeExpirationDate

<?php

use Signplus\Client;
use Signplus\Models\SetEnvelopeExpirationRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new SetEnvelopeExpirationRequest(
  expiresAt: 123
);

$response = $sdk->Signplus->setEnvelopeExpirationDate(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

setEnvelopeLegalityLevel

<?php

use Signplus\Client;
use Signplus\Models\EnvelopeLegalityLevel;
use Signplus\Models\SetEnvelopeLegalityLevelRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new SetEnvelopeLegalityLevelRequest(
  legalityLevel: EnvelopeLegalityLevel::Ses
);

$response = $sdk->Signplus->setEnvelopeLegalityLevel(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

getEnvelopeAnnotations

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getEnvelopeAnnotations(
  envelopeId: "envelopeId"
);

print_r($response);

getEnvelopeDocumentAnnotations

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getEnvelopeDocumentAnnotations(
  envelopeId: "envelopeId",
  documentId: "documentId"
);

print_r($response);

addEnvelopeAnnotation

<?php

use Signplus\Client;
use Signplus\Models\AnnotationType;
use Signplus\Models\AnnotationSignature;
use Signplus\Models\AnnotationInitials;
use Signplus\Models\AnnotationText;
use Signplus\Models\AnnotationDateTime;
use Signplus\Models\AnnotationCheckbox;
use Signplus\Models\AddAnnotationRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

AnnotationType::Text

$input = new AddAnnotationRequest(
  recipientId: "recipient_id",
  documentId: "document_id",
  page: 123,
  x: 123,
  y: 123,
  width: 123,
  height: 123,
  required: true,
  type: AnnotationType::Text,
  signature: $annotationSignature,
  initials: $annotationInitials,
  text: $annotationText,
  datetime: $annotationDateTime,
  checkbox: $annotationCheckbox
);

$response = $sdk->Signplus->addEnvelopeAnnotation(
  input: $input,
  envelopeId: "envelopeId"
);

print_r($response);

deleteEnvelopeAnnotation

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->deleteEnvelopeAnnotation(
  envelopeId: "envelopeId",
  annotationId: "annotationId"
);

print_r($response);

createTemplate

<?php

use Signplus\Client;
use Signplus\Models\CreateTemplateRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new CreateTemplateRequest(
  name: "name"
);

$response = $sdk->Signplus->createTemplate(
  input: $input
);

print_r($response);

listTemplates

<?php

use Signplus\Client;
use Signplus\Models\TemplateOrderField;
use Signplus\Models\ListTemplatesRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new ListTemplatesRequest(
  name: "name",
  tags: [],
  ids: [],
  first: 123,
  last: 123,
  after: "after",
  before: "before",
  orderField: TemplateOrderField::TemplateId,
  ascending: true
);

$response = $sdk->Signplus->listTemplates(
  input: $input
);

print_r($response);

getTemplate

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getTemplate(
  templateId: "templateId"
);

print_r($response);

deleteTemplate

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->deleteTemplate(
  templateId: "templateId"
);

print_r($response);

duplicateTemplate

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->duplicateTemplate(
  templateId: "templateId"
);

print_r($response);

addTemplateDocument

<?php

use Signplus\Client;
use Signplus\Models\AddTemplateDocumentRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new AddTemplateDocumentRequest(
  file: []
);

$response = $sdk->Signplus->addTemplateDocument(
  input: $input,
  templateId: "templateId"
);

print_r($response);

getTemplateDocument

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getTemplateDocument(
  templateId: "templateId",
  documentId: "documentId"
);

print_r($response);

getTemplateDocuments

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getTemplateDocuments(
  templateId: "templateId"
);

print_r($response);

addTemplateSigningSteps

<?php

use Signplus\Client;
use Signplus\Models\TemplateSigningStep;
use Signplus\Models\AddTemplateSigningStepsRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new AddTemplateSigningStepsRequest(
  signingSteps: []
);

$response = $sdk->Signplus->addTemplateSigningSteps(
  input: $input,
  templateId: "templateId"
);

print_r($response);

renameTemplate

<?php

use Signplus\Client;
use Signplus\Models\RenameTemplateRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new RenameTemplateRequest(
  name: "name"
);

$response = $sdk->Signplus->renameTemplate(
  input: $input,
  templateId: "templateId"
);

print_r($response);

setTemplateComment

<?php

use Signplus\Client;
use Signplus\Models\SetTemplateCommentRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new SetTemplateCommentRequest(
  comment: "comment"
);

$response = $sdk->Signplus->setTemplateComment(
  input: $input,
  templateId: "templateId"
);

print_r($response);

setTemplateNotification

<?php

use Signplus\Client;
use Signplus\Models\EnvelopeNotification;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new EnvelopeNotification(
  subject: "subject",
  message: "message",
  reminderInterval: 123
);

$response = $sdk->Signplus->setTemplateNotification(
  input: $input,
  templateId: "templateId"
);

print_r($response);

getTemplateAnnotations

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getTemplateAnnotations(
  templateId: "templateId"
);

print_r($response);

getDocumentTemplateAnnotations

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->getDocumentTemplateAnnotations(
  templateId: "templateId",
  documentId: "documentId"
);

print_r($response);

addTemplateAnnotation

<?php

use Signplus\Client;
use Signplus\Models\AnnotationType;
use Signplus\Models\AnnotationSignature;
use Signplus\Models\AnnotationInitials;
use Signplus\Models\AnnotationText;
use Signplus\Models\AnnotationDateTime;
use Signplus\Models\AnnotationCheckbox;
use Signplus\Models\AddAnnotationRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

AnnotationType::Text

$input = new AddAnnotationRequest(
  recipientId: "recipient_id",
  documentId: "document_id",
  page: 123,
  x: 123,
  y: 123,
  width: 123,
  height: 123,
  required: true,
  type: AnnotationType::Text,
  signature: $annotationSignature,
  initials: $annotationInitials,
  text: $annotationText,
  datetime: $annotationDateTime,
  checkbox: $annotationCheckbox
);

$response = $sdk->Signplus->addTemplateAnnotation(
  input: $input,
  templateId: "templateId"
);

print_r($response);

deleteTemplateAnnotation

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->deleteTemplateAnnotation(
  templateId: "templateId",
  annotationId: "annotationId"
);

print_r($response);

createWebhook

<?php

use Signplus\Client;
use Signplus\Models\WebhookEvent;
use Signplus\Models\CreateWebhookRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

WebhookEvent::EnvelopeExpired

$input = new CreateWebhookRequest(
  event: WebhookEvent::EnvelopeExpired,
  target: "target"
);

$response = $sdk->Signplus->createWebhook(
  input: $input
);

print_r($response);

listWebhooks

<?php

use Signplus\Client;
use Signplus\Models\WebhookEvent;
use Signplus\Models\ListWebhooksRequest;

$sdk = new Client(accessToken: 'YOUR_TOKEN');


$input = new ListWebhooksRequest(
  webhookId: "webhook_id",
  event: WebhookEvent::EnvelopeExpired
);

$response = $sdk->Signplus->listWebhooks(
  input: $input
);

print_r($response);

deleteWebhook

<?php

use Signplus\Client;

$sdk = new Client(accessToken: 'YOUR_TOKEN');

$response = $sdk->Signplus->deleteWebhook(
  webhookId: "webhookId"
);

print_r($response);