upGrad Partner Service API

Channel-partner operations API for upGrad's referral and franchise network: partner onboarding and KYC document upload/verification, prospect (lead) capture and status transitions, store and team-member hierarchy management, commission rules, and partner invoice / credit-note reporting. 54 operations across 46 paths, secured by an AUTH-TOKEN API key header. The springdoc-generated OpenAPI is served anonymously at https://partner.upgrad.com/api-docs while every operation itself requires credentials.

Operations 54

PUT /vpc-only/user/{userId}/vendorCode #
PUT /vpc-only/prospect/{leadId}/{lsqEmail} #
PUT /user/{userId}/partner/stage/{type} #
PUT /user/{userId}/address-status #
PUT /update-rm-id #
PUT /update-partner-invoice-credit-note #
GET /team-member/{teamMemberId} #
PUT /team-member/{teamMemberId} #
GET /store/{storeId} #
PUT /store/{storeId} #
DELETE /store/{storeId} #
GET /commission-rule #
PUT /commission-rule #
POST /commission-rule #
POST /vpc-only/login-list #
POST /user/{userId}/verify/document #
POST /user/{userId}/partner/document #
GET /user/{userId}/partner-detail #
POST /user/{userId}/partner-detail #
POST /upload-csv-details #
GET /team-member #
POST /team-member #
POST /team-member/business-owner/{userId} #
GET /store #
POST /store #
POST /save-status #
GET /prospect #
POST /prospect #
POST /program-key-cache/update #
POST /invoice/{userId}/document #
POST /form-config/delete-form #
POST /form-config/add #
POST /business-type/add #
GET /user/{userId}/partner/documents #
GET /team-member/{userId}/manager/{teamMemberId} #
GET /team-member/{teamMemberId}/hierarchy #
GET /team-member/{teamMemberId}/count #
GET /sap/ug-partners #
GET /prospect/{prospectId}/lead/{leadId} #
GET /program-key-cache #
DELETE /program-key-cache #
GET /partner/master-data/{type} #
GET /partner-status #
GET /partner-list #
GET /partner-invoice-credit-note-report #
GET /learner-inv-cn-details #
GET /invoice-status-flow #
GET /invoice-document-url/{dmsUploadId} #
GET /invoice-credit-note-dashboard #
GET /hit-scheduler-process-credit-note-and-invoice-data #
GET /form-config/{partner} #
GET /commission-rule/{commissionId} #
GET /business-type #
DELETE /user/{userId}/partner/co-partner/{partnerCoOwnerId} #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/upgrad-partner-service-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

upgrad-partner-openapi.yml Raw ↑
openapi: 3.0.1
info:
  title: Partner Service
  license:
    name: Apache 2.0
    url: https://upgrad.com
  version: '1'
servers:
- url: https://partner.upgrad.com
  description: Generated server url
security:
- AUTH-TOKEN: []
paths:
  '**inorganic**': {}
  '*': {}
  /vpc-only/user/{userId}/vendorCode:
    put:
      tags:
      - partner-controller
      operationId: updateVendorCode
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: vendorCode
        in: query
        required: true
        schema:
          type: string
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /vpc-only/prospect/{leadId}/{lsqEmail}:
    put:
      tags:
      - prospect-controller
      operationId: updateProspect
      parameters:
      - name: leadId
        in: path
        required: true
        schema:
          type: string
      - name: lsqEmail
        in: path
        required: true
        schema:
          type: string
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /user/{userId}/partner/stage/{type}:
    put:
      tags:
      - status-controller
      operationId: updatePartnerStage
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: type
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          multipart/form-data:
            schema:
              type: object
              properties:
                request:
                  $ref: '#/components/schemas/UpdatePartnerStageRequestDto'
                file:
                  type: string
                  format: binary
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /user/{userId}/address-status:
    put:
      tags:
      - partner-controller
      operationId: updateAddressStatus
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: status
        in: query
        required: true
        schema:
          type: boolean
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /update-rm-id:
    put:
      tags:
      - partner-controller
      operationId: updateRmId
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateRmIdDto'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                type: string
  /update-partner-invoice-credit-note:
    put:
      tags:
      - partner-invoice-credit-note-controller
      operationId: updatePartnerInvoiceCreditDetails
      parameters:
      - name: partnerInvoiceCreditNoteId
        in: query
        required: true
        schema:
          type: integer
          format: int64
      - name: partnerInvoiceFlowId
        in: query
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /team-member/{teamMemberId}:
    get:
      tags:
      - team-member-controller
      operationId: getTeamMemberDetail
      parameters:
      - name: teamMemberId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/TeamMemberResponseDto'
    put:
      tags:
      - team-member-controller
      operationId: partialUpdateTeamMember
      parameters:
      - name: teamMemberId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              type: object
              additionalProperties:
                type: object
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /store/{storeId}:
    get:
      tags:
      - store-controller
      operationId: getStoreDetail
      parameters:
      - name: storeId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: pageable
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/Pageable'
      - name: storeFilter
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/StoreFilterDto'
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ResponseStoreDto'
    put:
      tags:
      - store-controller
      operationId: updateStoreDetail
      parameters:
      - name: storeId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StoreDto'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/StoreDto'
    delete:
      tags:
      - store-controller
      operationId: deleteStoreDetail
      parameters:
      - name: storeId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /commission-rule:
    get:
      tags:
      - commission-rule-controller
      operationId: getCommissionRules
      parameters:
      - name: predicate
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/Predicate'
      - name: pageable
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/Pageable'
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/PageResponseCommissionRuleDto'
    put:
      tags:
      - commission-rule-controller
      operationId: updateCommissionRule
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommissionRuleDto'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
    post:
      tags:
      - commission-rule-controller
      operationId: saveCommissionRule
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CommissionRuleDto'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /vpc-only/login-list:
    post:
      tags:
      - login-list-upload-controller
      operationId: saveLoginListUploadDetails
      parameters:
      - name: loginListUploadDetails
        in: query
        required: true
        schema:
          $ref: '#/components/schemas/LoginListUploadDto'
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
  /user/{userId}/verify/document:
    post:
      tags:
      - partner-document-controller
      operationId: verifyDocument
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DocumentVerifyRequest'
        required: true
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/DMSUploadResponse'
  /user/{userId}/partner/document:
    post:
      tags:
      - partner-document-controller
      operationId: uploadPartnerDocument
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      - name: files
        in: query
        required: false
        schema:
          type: array
          items:
            type: string
            format: binary
      - name: coPartner
        in: query
        required: false
        schema:
          type: string
      - name: attributes
        in: query
        required: false
        schema:
          type: string
      - name: updateDetails
        in: query
        required: false
        schema:
          type: string
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '405':
          description: Method Not Allowed
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '503':
          description: Service Unavailable
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '404':
          description: Not Found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '403':
          description: Forbidden
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '429':
          description: Too Many Requests
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '200':
          description: OK
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/DocumentResponse'
  /user/{userId}/partner-detail:
    get:
      tags:
      - partner-controller
      operationId: getPartnerInfo
      parameters:
      - name: userId
        in: path
        required: true
        schema:
          type: integer
          format: int64
      responses:
        '500':
          description: Internal Server Error
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '400':
          description: Bad Request
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/ErrorContext'
        '409':
          description: Conflict
   

# --- truncated at 32 KB (123 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/upgrad/refs/heads/main/openapi/upgrad-partner-openapi.yml