Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

To a better understanding about the versioning, please go to https://api.botdoc.io/documentation/#section/Get-Started/Versioning
and to a better understanding about the Sandbox, please go to https://api.botdoc.io/documentation/#section/Get-Started/Sandbox-Platform

Instructions

The first thing you need to understand is every request MUST have a token:
Thus, no matter what endpoint, you always need to pass the token on the header that looks like the following:
Authorization: JWT your-token-here

1 - Create a Container:

Botdoc P2 Container is a session with multiple secure Features inside of it, with P2 you can make a Flow automation or just a simple file "push", "pull" or “DocuSign”.

Endpoint: https://api.botdoc.io/v1/module_container/container/ 
Method: POST.

Example of the body in JSON format:

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container/container/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "page_type": "p2",
    "callback_url": "https://link.to.your.callback.url"
}"

1.2 - Create a Container with a Requester:

To create a Container with a Requester attached, is simple, first of all, you need to create a Requester, if you don't have any Requester registered, follow the link: How to create a Requester

...

Note

Remember that, whenever a Container with a Requester attached to it is sent, the Requester is duplicated to a table RequesterContainer, to keep the data concise with the data on the day and time of the Container was sent, in case of this requester is modified or even deleted.


2 - Define Recipient(s):

After the Secure Container was created, you need to create the Recipient(s) of your Secure Container.
Endpoint: https://api.botdoc.io/v1/module_container/container/{container_id}/recipient/
Method: POST.

Example of the body in JSON format:

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container/container/{container_id}/recipient/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
   "first_name": "John",
   "last_name": "Smith"
}
"

3 - Define your RecipientItem(s)

Now, we need to add our RecipientItem linked to the Recipient in the Step 2.
Endpoint: https://api.botdoc.io/v1/module_container/recipient/{recipient_id}/recipient_item/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container/recipient/{recipient_id}/recipient_item/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
   "interface_class": "email",
   "value": "myemail@botdoc.io"
}
"

4 - Set an AuthCode

Now, if you want, you can protect your Secure Container with Two Factor Authentication.
Endpoint: https://api.botdoc.io/v1/module_container/authcode/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container/authcode/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "container": "{container_id}",
    "send_as": "email", 
    "to": "myemail@botdoc.io"
}"

5 - Define Email Message

Now, you must inform the Email Message if in the previewer step the transport method was sent to Email.
Endpoint: https://api.botdoc.io/v1/module_container/container/{container_id}/email/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container/container/{container_id}/email/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "subject": "nice subject",
    "body": "a nice message here"
}"

6 - Define SMS Message

Now, you must inform the SMS Message if in the previewer step, the transport method was sent to SMS.
Endpoint: https://api.botdoc.io/v1/module_container/container/{container_id}/sms/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container/container/{container_id}/sms/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "body": "a nice body here"
}"

7 - Add Features

Now, you must add a feature, can be Pull, Push or DocuSign, see 3 examples below:

7.1 - Pull Feature

If you want to request file(s) FROM your receiver, you must send a Pull Feature:
Endpoint: https://api.botdoc.io/v1/module_container_pull/pull/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container_pull/pull/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "container": {container_id},
    "title": "Nice Pull Title",
    "description": "Nice Pull Desc."
}"

7.2 - Push Feature

If you want to SEND file(s) to your Receiver, you must send a Push Feature:
Endpoint: https://api.botdoc.io/v1/module_container_push/push/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container_push/push/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "container": {container_id},
    "title": "Nice Push Title",
    "description": "Nice Push Desc.",
    "max_file_downloads": 4
}"

7.2.1 - Push File Feature

If you want to SEND file(s) to your Receiver, you must send a Push Feature and a Push File (required):
Endpoint: https://api.botdoc.io/v1/module_container_push/pushfile/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container_push/pushfile/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: multipart/form-data" \
--form "file=@C:\invoices\invoice_2020.pdf" \
--form "name=invoice_2020.pdf" \
--form "push={push_id}" \
--form "total_chunks=1"

7.3 - DocuSign Feature

If you want the Receiver to Sign something, you must send a DocuSign Feature:
Endpoint: https://api.botdoc.io/v1/module_container_docusign/docusign/
Method: POST.

...

Code Block
languagejson
curl -i --request POST "https://api.botdoc.io/v1/module_container_docusign/docusign/" \
--header "Authorization: JWT <Authorization Token>" \
--header "Content-Type: application/json" \
--data-raw "{
    "title": "Sign this doc. pls",
    "description": "this document allows you to get an bank loan",
    "envelope": {
        "template_id": "f53858a0-4810-492a-aba7-8dda6eb83ffc",
        "recipients": {
            "signers": [
                {
                    "name": "John Smith",
                    "email": "myemail@botdoc.io",
                    "client_user_id": "{recipient_id}",
                    "role_name": "Signer"
                }
            ]
        }
    },
    "container": {container_id}
}"

8 - Send the Notification to the Receiver(s)

Now, just send the Notification to the Receiver(s).
Endpoint: https://api.botdoc.io/v1/module_container/container/{container_id}/send_notification/
Method: POST.

...

Info

For more details about creating a requests you can take a look at our Botdoc API Reference on api.botdoc.io/documentation/#create-request

Filter by label (Content by label)
showLabelsfalse
max5
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@75205211
showSpacefalse
sortmodified
typepage
reversetrue
labelskb-how-to-article
cqllabel = "kb-how-to-article" and type = "page" and space = "BOTDOC"

...