كيف يمكنني تطبيق قالب على الوثيقة باستخدام Docusign بقية API

StackOverflow https://stackoverflow.com//questions/20034028

  •  21-12-2019
  •  | 
  •  

سؤال

أنا أعمل حاليا مع docusign بقية API و أنا أتساءل عما إذا كان أي شخص لديه مثال على كيف يمكن إضافة المستندات والقوالب في مغلف واحد.لدي الوصول إلى قالب معرف أحتاج ولقد استعملت مركب قوالب لخلق مغلف مع وثائق متعددة مع ما يقابلها من القوالب.أنا أفعل هذا فقط باستخدام قالب معرف على الرغم من.الآن أنا في محاولة لمعرفة كيفية إضافة مستند إلى مركب القالب.إذا كان المستند يحتوي على قالب(لدي الوصول إلى قالب معرفات إذا كان لديك واحدة) ينبغي تطبيق القالب على تلك الوثيقة.

يمكن تطبيق قوالب وثيقة خلال بقية API ؟ إذا كان الأمر كذلك ، هل يوجد لديك مثال ؟

هل كانت مفيدة؟

المحلول

وإليك بعض الأمثلة التي تبين كيف مركب قوالب يمكن استخدامها في الجمع بين المعلومات من قالب(s) مع المعلومات المحددة عن طريق طلب API نفسها.

مثال #1:

المثال التالي طلب يخلق مغلف حيث القالب يستخدم لتحديد العلامات والمتلقي الأدوار الظرف ، ولكن الوثيقة معلومات المستلم يتم توفيرها من قبل في طلب API نفسها.

POST https://demo.docusign.net/restapi/v2/accounts/ACCOUNTNBR/envelopes HTTP/1.1

X-DocuSign-Authentication: {"Username":"USERNAME","Password":"PASSWORD","IntegratorKey":"INTEGRATORKEY"}
Content-Type: multipart/form-data; boundary=MY_BOUNDARY
Accept: application/json
Host: demo.docusign.net
Content-Length: 162100

--MY_BOUNDARY
Content-Type: application/json
Content-Disposition: form-data

{
    "emailBlurb":"Test Email Body",
    "emailSubject": "Test Email Subject",
    "status" : "sent",
    "compositeTemplates": [
    {
        "serverTemplates": [
        {
            "sequence" : 1,
            "templateId": "TEMPLATE_ID"
        }],
        "inlineTemplates": [
        {
            "sequence" : 2,
            "recipients": {
                "signers" : [{
                    "email": "bettysemail@outlook.com",
                    "name": "Betty Adamson",
                    "recipientId": "1",
                    "roleName": "RoleOne"
                }]
            }
        }],
        "document": {
            "documentId": 1,
            "name": "test1.pdf"
        }
    }]
}

--MY_BOUNDARY
Content-Type: application/pdf
Content-Disposition: file; filename="TestDocAPI.pdf"; documentid="1"

<document bytes removed>

--MY_BOUNDARY--

كما هو مبين أعلاه ، إلى تقديم الوثيقة(s) عن طريق طلب API في حد ذاته يتطلب تقديم متعدد الجزء الطلب أين الجزء الأول يمثل كاملة سلمان الطلب, و كل جزء لاحق من هذا الطلب يمثل محتويات وثيقة واحدة هذا هو المشار إليه في JSON.إذا كان لديك سلمان إشارات عدة وثائق الطلب الخاص بك سوف تحتوي على إضافية/منفصلة جزء لكل وثيقة.

مركب قوالب قوية في أنها تعطيك قدرا كبيرا من المرونة في حيث الجمع بين المعلومات من القوالب مع المعلومات (الوثائق والمستفيدين) المقدمة عبر API طلب نفسه في وقت التشغيل.المثال أعلاه هو بسيط جدا (قالب واحد ، وثيقة واحدة ، مستلم واحد) - ولكن يمكن بسهولة أن تمتد حالات حيث كنت ترغب في الجمع بين قوالب متعددة/الوثائق/المتلقين.

(على سبيل المثال الطلب على p26-27 من بقية API دليل يبين الشكل الأساسي المطلوب عندما إرسال رسالة متعددة الأجزاء الطلب: http://www.docusign.com/sites/default/files/REST_API_Guide_v2.pdf.)

مثال رقم 2:

التالي دعنا نفترض أن كنت تريد أن تدرج في مغلف جميع الوثائق التي تم تعريفها في قالب ، ولكنك تريد أيضا أن تشمل اثنين من وثائق إضافية (لم يحددها قالب) في الظرف.المثال التالي طلب يخلق مغلف مع 2 الوثائق التي تم تحديدها كجزء من طلب API (CustomerAgreement.pdf و الفاتورة.pdf) ، وجميع الوثائق التي تم تعريفها بواسطة القالب هذا هو المشار إليه في 3 مركب هيكل القالب.بضع ملاحظات عامة:

  • الوثائق تظهر في الظرف في الترتيب الذي يتم المحدد في طلب سلمان.في هذا المثال, هذا يعني أن الوثيقة أمر:1) CustomerAgreement.pdf (المحدد عبر API طلب في أول مركب قالب هيكل) ، 2) الفاتورة.pdf (المحدد عبر API طلب في الثانية المركب هيكل القالب), و 3) جميع الوثائق المحددة من قبل القالب الذي هو المشار إليه في الثالثة مركب هيكل القالب.

  • على الرغم من أن كل فرد مركب هيكل القالب يجب تحديد المستفيد معلومات -- DocuSign ستكون مباراة/دمج أي متطابقة المتلقي معلومات عند تشكيل المتلقي جمع المغلف.في هذا المثال, مما أدى مغلف واحد فقط المستلم:آبي أبوت.

لأننا تحديد اثنين من الوثائق عبر API طلب, طلب ما مجموعه ثلاثة أجزاء:1) سلمان, 2) محتويات الوثيقة الأولى و 3) محتويات الوثيقة الثانية.

POST https://demo.docusign.net/restapi/v2/accounts/ACCOUNTNBR/envelopes HTTP/1.1

X-DocuSign-Authentication: {"Username":"USERNAME","Password":"PASSWORD","IntegratorKey":"INTEGRATORKEY"}
Content-Type: multipart/form-data; boundary=MY_BOUNDARY
Accept: application/json
Host: demo.docusign.net
Content-Length: 162100

--MY_BOUNDARY
Content-Type: application/json
Content-Disposition: form-data

{
    "status" : "sent",
    "emailSubject" : "Test Envelope Subject",
    "emailBlurb" : "Test Envelope Blurb",
    "compositeTemplates": [
    {
        "inlineTemplates": [
        {
            "sequence" : 1,
            "recipients": {
                "signers" : [{
                    "email": "abbysemail@outlook.com",
                    "name": "Abby Abbott",
                    "recipientId": "1"
                }]
            }
        }],
        "document": {
            "documentId": 1,
            "name": "CustomerAgreement",
            "fileExtension": "pdf"
        }
    },
    {
        "inlineTemplates": [
        {
            "sequence" : 2,
            "recipients": {
                "signers" : [{
                    "email": "abbysemail@outlook.com",
                    "name": "Abby Abbott",
                    "recipientId": "1"
                }]
            }
        }],
        "document": {
            "documentId": 2,
            "name": "Invoice",
            "fileExtension": "pdf"
        }
    },
    {
        "serverTemplates": [
        {
            "sequence" : 1,
            "templateId": "TEMPLATE_ID"
        }],
        "inlineTemplates": [
        {
            "sequence" : 2,
            "recipients": {
                "signers" : [{
                    "email": "abbysemail@outlook.com",
                    "name": "Abby Abbott",
                    "recipientId": "1",
                    "roleName": "Initiator",
                    "routingOrder":"1"
                }
                ]
            }
        }]
    }]
}

--MY_BOUNDARY
Content-Type: application/pdf
Content-Disposition: file; filename="CustomerAgreement.pdf"; documentid="1"

    <document bytes removed>

--MY_BOUNDARY
Content-Type: application/pdf
Content-Disposition: file; filename="Invoice.pdf"; documentid="2"

    <document bytes removed>

--MY_BOUNDARY--
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top