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

# Add new beneficiary document



## OpenAPI

````yaml /openapi/kyb.yaml post /kyb/forms/{companyId}/beneficiaries/{beneficiaryId}/documents/
openapi: 3.1.0
info:
  title: iDenfy IVS Core API
  version: 0.0.0
  description: iDenfy Identity Verification Service's Core API documentation.
  contact:
    name: API Support
    url: https://idenfy-ivs.atlassian.net/servicedesk/customer/portal/1/group/-1
  x-logo:
    url: /static/idenfy_logo.svg
    altText: iDenfy logo
servers:
  - url: https://ivs.idenfy.com
security: []
tags:
  - name: KYB Token
    description: KYB token endpoints to begin KYB flow.
  - name: KYB Forms
    description: Endpoints for KYB form actions.
  - name: KYB Documents
    description: KYB documents CRUD endpoints for the KYB form.
  - name: Beneficiaries
    description: Beneficiaries CRUD endpoints for the KYB form.
  - name: KYB Questionnaires
    description: KYB questionnaires endpoints.
  - name: Companies
    description: Endpoints for actions with companies.
  - name: Credit Bureau
    description: Endpoints for actions with credit bureau documents.
  - name: GOV Registers
    description: Endpoints for actions with GOV registers documents.
  - name: GOV Orders
    description: Endpoints for actions with GOV ordered documents.
  - name: SOS Reports
    description: Endpoints for actions with SOS filing documents.
  - name: Webhooks
    description: Webhooks.
externalDocs:
  description: For other/more docs on iDenfy services visit our main documentation page.
  url: https://documentation.idenfy.com
paths:
  /kyb/forms/{companyId}/beneficiaries/{beneficiaryId}/documents/:
    post:
      tags:
        - KYB Documents
      summary: Add new beneficiary document
      operationId: kybFormsBeneficiariesDocumentsCreate
      parameters:
        - in: path
          name: beneficiaryId
          schema:
            type: string
          required: true
        - in: path
          name: companyId
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BeneficiaryDocumentCreateRequest'
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryDocumentCreate'
          description: ''
      security:
        - kybTokenAuth: []
        - apiKeyPair: []
components:
  schemas:
    BeneficiaryDocumentCreateRequest:
      oneOf:
        - $ref: '#/components/schemas/IndividualKybDocCreateRequest'
        - $ref: '#/components/schemas/CompanyKybDocCreateRequest'
    BeneficiaryDocumentCreate:
      oneOf:
        - $ref: '#/components/schemas/IndividualKybDocCreate'
        - $ref: '#/components/schemas/CompanyKybDocCreate'
    IndividualKybDocCreateRequest:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/IndividualKybDocTypeEnum'
        filename:
          type: string
          nullable: true
          maxLength: 100
        file:
          type: string
          format: byte
          description: >-
            Base64 encoded document file. Can be: `jpeg`, `jpg`, `png`, `gif`,
            `webp`, `heic`, `heif`, `pdf` files.
      required:
        - file
        - type
    CompanyKybDocCreateRequest:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/KybDocumentTypeEnum'
        filename:
          type: string
          nullable: true
          maxLength: 100
        file:
          type: string
          format: byte
          description: >-
            Base64 encoded document file. Can be: `jpeg`, `jpg`, `png`, `gif`,
            `webp`, `heic`, `heif`, `pdf` files.
      required:
        - file
        - type
    IndividualKybDocCreate:
      type: object
      properties:
        id:
          type: string
          readOnly: true
        type:
          $ref: '#/components/schemas/IndividualKybDocTypeEnum'
        filename:
          type: string
          nullable: true
          maxLength: 100
        file:
          type: string
          format: uri
          description: >-
            Base64 encoded document file. Can be: `jpeg`, `jpg`, `png`, `gif`,
            `webp`, `heic`, `heif`, `pdf` files.
      required:
        - file
        - id
        - type
    CompanyKybDocCreate:
      type: object
      properties:
        id:
          type: string
          readOnly: true
        type:
          $ref: '#/components/schemas/KybDocumentTypeEnum'
        filename:
          type: string
          nullable: true
          maxLength: 100
        file:
          type: string
          format: uri
          description: >-
            Base64 encoded document file. Can be: `jpeg`, `jpg`, `png`, `gif`,
            `webp`, `heic`, `heif`, `pdf` files.
      required:
        - file
        - id
        - type
    IndividualKybDocTypeEnum:
      enum:
        - IDENTITY_DOCUMENT
        - PROOF_OF_ADDRESS
        - OTHER
      type: string
    KybDocumentTypeEnum:
      enum:
        - INCORPORATION_CERT
        - DIRECTOR_CERT
        - SHAREHOLDER_CERT
        - UBO_CERT
        - INCORPORATION_ARTICLES
        - SHAREHOLDER_REGISTRY
        - DIRECTORS_REGISTRY
        - STATE_REGISTRY
        - UBO_REGISTRY
        - OWNERSHIP_STRUCTURE
        - INCUMBENCY_CERT
        - TRUST_AGREEMENT
        - INFORMATION_STATEMENT
        - GOOD_STANDING_CERT
        - PROOF_OF_DOMAIN
        - PROOF_OF_ADDRESS
        - SOURCE_OF_FUNDS
        - BANK_STATEMENT
        - INVOICE
        - ONLINE_PRESENCE
        - DIRECTOR_ONLINE_PRESENCE
        - SHAREHOLDER_ONLINE_PRESENCE
        - WEBSITE_OVERVIEW
        - E_SIGNATURE_CERT
        - ANNUAL_REPORT
        - NAME_CHANGE_PROOF
        - TRADING_STATUS_PROOF
        - ORG_CHART
        - COMPANY_ADVERSE_MEDIA
        - INDIVIDUAL_ADVERSE_MEDIA
        - EMAIL_CHECK
        - SOURCE_OF_WEALTH
        - OTHER
      type: string
  securitySchemes:
    kybTokenAuth:
      type: http
      scheme: bearer
      description: >-
        Authentication for actions with all operations associated with KYB
        form.<br>

        Token obtained from *KYB form token generation* endpoint as
        ``tokenString`` value.<br>
    apiKeyPair:
      type: http
      scheme: basic
      description: >-
        The request must contain basic auth headers where username is *API key*
        and password is *API secret*.<br>

        In order for you to start using our API you will need an **API key** and
        **API secret**.<br>

        Both can be retrieved by contacting *iDenfy's support* or *iDenfy's
        sales team*.

````