> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# व्यवसाय सत्र PDF API

> Didit के साथ किसी पूरे हो चुके व्यवसाय सत्यापन (KYB) सत्र की PDF रिपोर्ट डाउनलोड करें: रजिस्ट्री डेटा, प्रमुख व्यक्ति, स्वामी, दस्तावेज़, AML और समीक्षा।



व्यवसाय सत्र PDF जनरेट करने के लिए API प्रॉम्प्ट
        प्रॉम्प्ट को क्लिपबोर्ड पर कॉपी करें



      
      

\<pre>

\`Download the PDF report of one finished Didit business verification (KYB) session.

Endpoint:
GET https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/businesses/{business_session_id}/pdf/

Authentication:
Use the x-api-key header with my Didit API key. A scoped key needs businesses: read and media: read; a key limited to some workflows or to approved sessions can't call this endpoint. application_id must be the application the key belongs to.

Goal:
\- Store an audit-ready KYB report for my compliance archive, or attach it to a case or regulator request.

Behavior:
\- business_session_id is the session_id of the KYB session.
\- The session must be "Approved", "Declined" or "In Review"; any other status returns 403.
\- The body is binary application/pdf, not JSON. Content-Disposition: attachment; filename=business_<business_session_id>.pdf.
\- The report covers company registry data, key people and beneficial owners, documents, AML results and the other workflow features, plus the session's tags and reviews. With white-label customization on, it uses my logo and privacy policy URL.
\- Rendered on every call: store the file instead of fetching it repeatedly.

Example call:
curl --fail -X GET "https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/businesses/c2d3e4f5-0617-4829-9a3b-4c5d6e7f8091/pdf/" \
-H "x-api-key: YOUR_API_KEY" \
\--output business-report.pdf

What to read from the response:
\- The PDF bytes. Do not parse the body as JSON.
\- Content-Disposition - the suggested file name.

Failure modes:
\- 401 - the API key has expired.
\- 403 - {"detail": "You can only generate a PDF for sessions in review, declined or approved."} when the session is not finished; {"detail": "Authentication credentials were not provided or are invalid."} for a missing key (a wrong, revoked or expired key gets 401); {"detail": "You do not have permission to perform this action."} for a key of another application; a scoped key without businesses: read or media: read; a key limited to workflows or approved sessions; a request from outside the key's IP list.
\- 404 - {"detail": "Business session not found."}
\- 429 - more than 600 GET requests per minute with this key.

Side effects: none. Not billed.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

यहाँ पेस्ट करें

[PDF जनरेट करें](https://docs.didit.me/hi/sessions-api/generate-pdf.md) KYB रिपोर्ट भी जनरेट करता है। अपने इंटीग्रेशन के अनुसार जो उपयुक्त हो, उसका उपयोग करें: यह endpoint आपके संगठन और एप्लिकेशन के ज़रिए सत्र को संदर्भित करता है, जबकि दूसरा केवल सत्र ID का उपयोग करता है।> [!NOTE]
>
> रिपोर्ट तभी उपलब्ध होती है जब सत्र `Approved`, `Declined` या `In Review` स्थिति में हो। इसका अनुरोध करने से पहले [webhook](https://docs.didit.me/hi/integration/webhooks.md) `status.updated` की प्रतीक्षा करें।## संबंधित- [PDF जनरेट करें](https://docs.didit.me/hi/sessions-api/generate-pdf.md)
- [PDF और CSV में एक्सपोर्ट करें](https://docs.didit.me/hi/console/export-pdf-csv.md)
- [KYB रिस्पॉन्स स्कीमा](https://docs.didit.me/hi/business-verification/response-schema.md)


## OpenAPI

````yaml hi/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/businesses/{business_session_id}/pdf/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: पहचान सत्यापन API। x-api-key हेडर के साथ प्रमाणीकृत करें।
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/organization/{organization_id}/application/{application_id}/businesses/{business_session_id}/pdf/:
    get:
      tags:
        - Businesses
      summary: व्यावसायिक सत्र की PDF रिपोर्ट डाउनलोड करें
      description: >-
        एक व्यवसाय सत्यापन (KYB) सत्र की PDF रिपोर्ट रेंडर करें: कंपनी रजिस्ट्री
        डेटा, प्रमुख व्यक्ति और वास्तविक स्वामी, दस्तावेज़, AML परिणाम और अन्य
        वर्कफ़्लो सुविधाएँ, साथ ही सत्र के टैग और समीक्षा गतिविधि। व्हाइट लेबल
        कस्टमाइज़ेशन सक्षम होने पर, रिपोर्ट में आपका लोगो और प्राइवेसी पॉलिसी
        URL शामिल होता है। मुख्य भाग (body) स्वयं PDF (`application/pdf`) है,
        JSON नहीं।


        सत्र `Approved`, `Declined` या `In Review` स्थिति में होना चाहिए; कोई
        अन्य स्थिति `403` लौटाती है, इसलिए पहले `status.updated`
        [webhook](https://docs.didit.me/hi/integration/webhooks) की प्रतीक्षा
        करें। रिपोर्ट प्रत्येक कॉल पर रेंडर की जाती है और कुछ भी बिल नहीं किया
        जाता है, इसलिए इसे बार-बार लाने के बजाय फ़ाइल को स्टोर करें। `GET
        /v3/session/{sessionId}/generate-pdf/` केवल सत्र ID द्वारा उसी प्रकार की
        रिपोर्ट रेंडर करता है।


        PDF रिपोर्ट को मीडिया माना जाता है: एक स्कोप्ड API कुंजी के लिए
        `businesses: read` और `media: read` की आवश्यकता होती है, और कुछ
        वर्कफ़्लो या केवल स्वीकृत सत्रों तक सीमित कुंजी इसे कॉल नहीं कर सकती है।
      operationId: get_business_session_pdf
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: संगठन UUID।
          example: 11111111-2222-3333-4444-555555555555
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: >-
            एप्लिकेशन UUID। यह वही एप्लिकेशन होना चाहिए जिससे API कुंजी संबंधित
            है: किसी अन्य एप्लिकेशन पर उपयोग की गई कुंजी को `403` मिलता है।
          example: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
        - name: business_session_id
          in: path
          required: true
          description: >-
            व्यवसाय सत्यापन (KYB) सत्र का `session_id`, जैसा कि सत्र बनाए जाने
            पर लौटाया गया था। किसी अन्य एप्लिकेशन का सत्र `404` लौटाता है।
          schema:
            type: string
            format: uuid
          example: 22222222-3333-4444-5555-666666666666
      responses:
        '200':
          description: >-
            रेंडर किया गया PDF, सीधे बाइनरी `application/pdf` के रूप में लौटाया
            गया।
          headers:
            Content-Disposition:
              description: हमेशा `attachment; filename=business_{business_session_id}.pdf`।
              schema:
                type: string
                example: >-
                  attachment;
                  filename=business_22222222-3333-4444-5555-666666666666.pdf
          content:
            application/pdf:
              schema:
                type: string
                format: binary
        '401':
          description: >-
            API कुंजी की समय-सीमा समाप्त हो गई है। केवल समाप्ति तिथि के साथ बनाई
            गई कुंजी ही समाप्त हो सकती है; उस तिथि के बाद इसके साथ किया गया
            प्रत्येक अनुरोध `401` रिस्पॉन्स देता है।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            अनुरोध की अनुमति नहीं है या सत्र समाप्त नहीं हुआ है। `detail` पढ़ें:
            एक सत्र जो `Approved`, `Declined` या `In Review` नहीं है, एक
            अनुपलब्ध API कुंजी (गलत, निरस्त या समय-सीमा समाप्त कुंजी को `401`
            मिलता है), एक `application_id` जो कुंजी का एप्लिकेशन नहीं है,
            `media: read` या `businesses: read` के बिना स्कोप्ड कुंजी, वर्कफ़्लो
            या स्वीकृत सत्रों तक सीमित कुंजी, या कुंजी की IP सूची के बाहर से
            किया गया अनुरोध।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Session not finished:
                  value:
                    detail: >-
                      You can only generate a PDF for sessions in review,
                      declined or approved.
                Missing or invalid key:
                  value:
                    detail: >-
                      Authentication credentials were not provided or are
                      invalid.
                Another application:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without media read:
                  value:
                    detail: This API key has no read access to media.
                Scoped key without businesses read:
                  value:
                    detail: This API key has no read access to companies.
                Key limited to workflows or approved sessions:
                  value:
                    detail: >-
                      This API key only reaches sessions inside its workflow or
                      status limits, so it can't use this endpoint.
                Outside the key's IP list:
                  value:
                    detail: This API key can't be used from this IP address.
        '404':
          description: >-
            एप्लिकेशन में इस ID वाला कोई व्यावसायिक सत्र मौजूद नहीं है (कभी नहीं
            बनाया गया, हटा दिया गया, या किसी अन्य एप्लिकेशन के स्वामित्व में
            है)। जो मान UUID नहीं है, वह इस JSON बॉडी के बजाय एक `404` HTML पेज
            लौटाता है।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Not found:
                  value:
                    detail: Business session not found.
        '429':
          description: >-
            इस API कुंजी के साथ प्रति मिनट 600 से अधिक GET अनुरोध। `Retry-After`
            में दिए गए सेकंड तक प्रतीक्षा करें, फिर पुनः प्रयास करें।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              examples:
                Throttled:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
          headers:
            Retry-After:
              description: वर्तमान एक-मिनट की विंडो रीसेट होने तक के सेकंड।
              schema:
                type: integer
                example: 23
            X-RateLimit-Limit:
              description: इस बजट में प्रति मिनट अनुमत अनुरोध।
              schema:
                type: integer
            X-RateLimit-Remaining:
              description: वर्तमान विंडो में शेष अनुरोध।
              schema:
                type: integer
            X-RateLimit-Reset:
              description: Unix समय जब विंडो रीसेट होती है।
              schema:
                type: integer
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl --fail -X GET
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/businesses/22222222-3333-4444-5555-666666666666/pdf/'
            \
              -H 'x-api-key: YOUR_API_KEY' \
              --output business_report.pdf
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            content = client.businesses.generate_session_pdf(
                "22222222-3333-4444-5555-666666666666",
            )
            with open("download.pdf", "wb") as file:
                file.write(content)
        - lang: javascript
          label: Node.js
          source: >-
            import { writeFile } from "node:fs/promises";

            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            const didit = new Didit();


            const content = await
            didit.businesses.generateSessionPdf("22222222-3333-4444-5555-666666666666");

            await writeFile("download.pdf", Buffer.from(await
            content.arrayBuffer()));
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID\n// and DIDIT_APPLICATION_ID.\nclient := didit.NewClient()\n\nresp, err := client.Businesses.GenerateSessionPDF(ctx, \"22222222-3333-4444-5555-666666666666\")\nif err != nil {\n\tlog.Fatal(err)\n}\ndefer resp.Body.Close()\nfile, err := os.Create(\"download.pdf\")\nif err != nil {\n\tlog.Fatal(err)\n}\ndefer file.Close()\nif _, err := io.Copy(file, resp.Body); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: >-
            import java.nio.file.Path;

            import me.didit.Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            Didit client = new Didit();


            client.businesses().generateSessionPdf("22222222-3333-4444-5555-666666666666")
                    .writeTo(Path.of("download.pdf"));
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            $didit = new DiditClient();


            $content =
            $didit->businesses->generateSessionPdf('22222222-3333-4444-5555-666666666666');

            $content->saveTo('download.pdf');
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            # and DIDIT_APPLICATION_ID.

            didit = Didit::Client.new


            content =
            didit.businesses.generate_session_pdf("22222222-3333-4444-5555-666666666666")

            File.binwrite("download.pdf", content)
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            using var client = new DiditClient();


            var content = await
            client.Businesses.GenerateSessionPdfAsync("22222222-3333-4444-5555-666666666666");

            await content.SaveToAsync("download.pdf");
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        आपकी एप्लिकेशन की API कुंजी, Business Console में Developers -> API keys
        से। प्राथमिक कुंजी के पास पूर्ण एक्सेस होता है। एक नामित कुंजी को स्कोप
        किया जा सकता है: प्रति संसाधन none, read या write, कुछ वर्कफ़्लो या
        स्वीकृत सत्रों तक सीमित, IP पतों की सूची तक सीमित, और समाप्ति तिथि तक
        सीमित। 401 का अर्थ है कि कुंजी गलत है, निरस्त कर दी गई है या उसकी
        समय-सीमा समाप्त हो गई है; 403 का अर्थ है कि कोई कुंजी नहीं भेजी गई थी,
        कुंजी के पास इस संसाधन या कार्रवाई का एक्सेस नहीं है, या अनुरोध उसकी IP
        सूची से बाहर के पते से आया था; सत्र रूट पर 404 का अर्थ है कि सत्र कुंजी
        के वर्कफ़्लो या स्थितियों से बाहर है। मीडिया एक्सेस के बिना एक कुंजी को
        छवि, वीडियो और PDF URL null के रूप में प्राप्त होते हैं, और सत्र write
        के बिना एक कुंजी को सत्र लिंक और token null के रूप में प्राप्त होते हैं।
        देखें https://docs.didit.me/console/api-keys।

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.