{"id":25553794,"url":"https://github.com/docusign/sample-app-documentgeneration-php","last_synced_at":"2025-10-07T17:09:20.569Z","repository":{"id":232650113,"uuid":"779410467","full_name":"docusign/sample-app-documentgeneration-php","owner":"docusign","description":"MyDocGen showcases how to leverage the Docusign document generation feature to create professionally formatted documents that include personalized data","archived":false,"fork":false,"pushed_at":"2025-02-03T16:22:29.000Z","size":1353,"stargazers_count":4,"open_issues_count":3,"forks_count":2,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-04-11T22:43:19.651Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://mydocgen.sampleapps.docusign.com/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/docusign.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-29T19:20:56.000Z","updated_at":"2025-02-03T16:22:41.000Z","dependencies_parsed_at":"2024-05-02T10:45:01.955Z","dependency_job_id":"d7f32521-4e19-4e86-a684-e3b0fb75833c","html_url":"https://github.com/docusign/sample-app-documentgeneration-php","commit_stats":null,"previous_names":["docusign/sample-app-mydocgen-php","docusign/sample-app-documentgeneration-php"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/docusign/sample-app-documentgeneration-php","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docusign%2Fsample-app-documentgeneration-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docusign%2Fsample-app-documentgeneration-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docusign%2Fsample-app-documentgeneration-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docusign%2Fsample-app-documentgeneration-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/docusign","download_url":"https://codeload.github.com/docusign/sample-app-documentgeneration-php/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/docusign%2Fsample-app-documentgeneration-php/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278811851,"owners_count":26050183,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-02-20T12:01:41.163Z","updated_at":"2025-10-07T17:09:20.554Z","avatar_url":"https://github.com/docusign.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Document Generation Sample App: PHP and React\n\n## Introduction\n\nThe Document Generation Sample App is a Docusign sample application written in PHP (server) and React (client).\n\nThe Document Generation Sample App demonstrates the following:\n\n1. **Authentication** with Docusign via [JSON Web Token (JWT) Grant](https://developers.docusign.com/platform/auth/jwt/).\n2. Three document generation use cases:\n* A **Personal loan agreement** wherein a loan agent enters the customer's personal information and selects lease terms in the prefill form to generate a fully customized loan agreement. \n* An **HR offer letter** wherein an HR specialist generates offer letters personalized with information for up to three applicants. \n* A **legal form** wherein a legal firm employee generates an equal-pay claims application form that is personalized with a potential client’s information.\nBulk sending envelopes, sending envelopes via SMS, and embedded sending.\n\n## Prerequisites\n\n- Create a Docusign developer [account](https://go.docusign.com/o/sandbox/).\n- Create an application on the [Apps and Keys](https://admindemo.docusign.com/authenticate?goTo=appsAndKeys) page and copy credentials to `backend/.env`:\n  client ID (integration key), user ID, account ID and copy **RSA private key** to a file `storage/docusign_private.key`.\n  This [**video**](https://www.youtube.com/watch?v=GgDqa7-L0yo) demonstrates how to create an integration key (client ID) for a user application like this example.\n- Add redirect URI `{ PROTOCOL }://{ DOMAIN }/callback`\n- [PHP 8.1](https://www.php.net/downloads.php)\n- [Docker](https://www.docker.com/) installed and configured in your machine.\n- [Composer](https://getcomposer.org/download/) set up in your PATH environment variable so you can invoke it from any folder.\n\n\u003e For first time use, paste login endpoint URL into your browser and grant consent to the app.\n\n### Variables configuration\n\nCreate a copy of the file backend/.env.example, save the copy as backend/.env, and fill in the data:\n\n- MANAGER_LOGIN - email used for getting access token for endpoints\n- MANAGER_PASSWORD - password used for getting access token for endpoints\n- DOCUSIGN_BASE_URL - `https://demo.docusign.net/restapi` for development environment\n- DOCUSIGN_CLIENT_ID - integration key GUID\n- DOCUSIGN_USER_ID - impersonated user ID\n- DOCUSIGN_ACCOUNT_ID - API account ID\n\n## Local installation instructions\n\n1. Build the images using the following command:\n   \n   ```\n   docker compose -f docker-compose-local.yml build\n   ```\n\n2. Start the containers using the following command. Add the `-d` flag to run the process in the background:\n\n   ```\n   docker compose -d docker-compose-local.yml up\n   ```\n\n3. Open a new terminal and set the application key by running the command:\n\n   ```\n   docker exec -it mydocgen_php php artisan key:generate\n   ```\n\n4. Install the database structure using these two commands:\n\n   ```\n   docker exec -it mydocgen_php php artisan migrate --seed\n   docker exec -it mydocgen_php php artisan passport:install\n   ```\n\n5. Clear the cache:\n\n   ```\n   docker exec -it mydocgen_php php artisan cache:clear\n   ```\n\n6. Open a browser to [localhost](http://localhost).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdocusign%2Fsample-app-documentgeneration-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdocusign%2Fsample-app-documentgeneration-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdocusign%2Fsample-app-documentgeneration-php/lists"}