PolySign beneficiary authorization API

The beneficiary authorization API from PolySign — 6 operation(s) for beneficiary authorization.

OpenAPI Specification

polysign-beneficiary-authorization-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: The API Server as the interface to interact with AtomicNet
  license:
    name: PolySign License
    url: https://polysign.io/licenses/LICENSE-1.0
  title: AtomicNet API Server beneficiary authorization API
  version: 5ba508e7771507febd8e2056c369fffd575b4272
security:
- OAuth2:
  - participant
tags:
- name: beneficiary authorization
paths:
  /v1/beneficiary_status_updates/{beneficiary_auth_id}:
    get:
      summary: 'Get all status updates associated with a beneficiary authorization by its id.

        '
      tags:
      - beneficiary authorization
      parameters:
      - name: beneficiary_auth_id
        in: path
        description: The identifier of the beneficiary authorization.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: A list of beneficiary authorization status updates.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryAuthStatusUpdateList'
  /v1/beneficiary_authorizations/{beneficiary_auth_id}:
    get:
      summary: Get the details of a beneficiary authorization on AtomicNet by its id.
      tags:
      - beneficiary authorization
      parameters:
      - name: beneficiary_auth_id
        in: path
        description: The identifier of the beneficiary authorization.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: The beneficiary authorization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryAuth'
  /v1/beneficiary_authorizations/list:
    get:
      summary: Get the detail of all beneficiary authorizations on AtomicNet.
      tags:
      - beneficiary authorization
      parameters:
      - name: status
        in: query
        description: The specified status to be filtered on.
        example: pending
        schema:
          type: string
      responses:
        '200':
          description: A list of beneficiary authorizations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryAuthList'
  /v1/beneficiary_authorizations/list/local:
    get:
      summary: Get the detail of all beneficiary authorizations involved by this node.
      tags:
      - beneficiary authorization
      parameters:
      - name: status
        in: query
        description: The specified status to be filtered on.
        example: pending
        schema:
          type: string
      responses:
        '200':
          description: A list of beneficiary authorizations.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryAuthList'
  /v1/beneficiary_authorizations/request:
    post:
      summary: Request a new beneficiary authorization.
      tags:
      - beneficiary authorization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BeneficiaryAuth'
      responses:
        '200':
          description: The beneficiary authorization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryAuth'
  /v1/beneficiary_authorizations/:
    put:
      summary: Approve a beneficiary authorization.
      tags:
      - beneficiary authorization
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BeneficiaryAuth'
      responses:
        '200':
          description: The beneficiary authorization.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BeneficiaryAuth'
components:
  schemas:
    OnetimeIdMap4:
      type: object
      properties:
        one_time_id:
          type: string
          description: The one time ID.
        real_id:
          type: string
          description: The real ID.
      required:
      - one_time_id
      - real_id
      description: ID mapping.
    Metadata4:
      type: object
      properties:
        investor_ids:
          default: null
          description: The investor id mappings.
          allOf:
          - $ref: '#/components/schemas/OnetimeIdMapList4'
        book_operator_id:
          type:
          - string
          - 'null'
          format: uuid
          default: null
          description: Identifier for the associated Book Operator node.
        request_id:
          type:
          - string
          - 'null'
          default: null
          description: Unique identifier for the request.
        exchange_id:
          type:
          - string
          - 'null'
          format: uuid
          default: null
          description: Identifier for the associated Exchange node.
        status:
          type:
          - string
          - 'null'
          default: null
          description: State status for the record object.
        trade_portal_id:
          type:
          - string
          - 'null'
          format: uuid
          default: null
          description: Identifier for the associated Trade Portal node.
        commission:
          type:
          - number
          - 'null'
          default: null
          description: Order commissison.
        real_investor_id:
          type:
          - string
          - 'null'
          default: null
          description: Original identifier for the investor.
        expired:
          type:
          - boolean
          - 'null'
          default: false
          description: Expiry status for the record object.
    BeneficiaryAuthList:
      type: object
      properties:
        beneficiary_auths:
          type: array
          items:
            $ref: '#/components/schemas/BeneficiaryAuth'
      required:
      - beneficiary_auths
    AbcSignature4:
      type: object
      properties:
        digest_type:
          type: string
          description: The ABC digest type.
        abc_account_id:
          type: string
          description: Identifier of the ABC account.
        signature:
          type: string
          description: Signature of the digest.
        digest:
          type: string
          description: The digest to be signed.
        schema_version:
          type:
          - integer
          - 'null'
          default: 1
          description: Version for the message schema.
      required:
      - abc_account_id
      - digest
      - digest_type
      - signature
    BeneficiaryAuth:
      type: object
      properties:
        execution_status:
          type:
          - string
          - 'null'
          default: null
          description: Execution status for the beneficiary authorization object.
        metadata:
          description: Metadata for the associated record object.
          allOf:
          - $ref: '#/components/schemas/Metadata4'
        schema_version:
          type: integer
          default: 1
          description: Version for the message schema.
        signature:
          default: null
          description: Signature for the associated record object.
          allOf:
          - $ref: '#/components/schemas/AbcSignature4'
        record:
          description: Beneficiary authorization record.
          allOf:
          - $ref: '#/components/schemas/BeneficiaryAuthRecord'
      required:
      - record
      description: Beneficiary authorization schema.
    OnetimeIdMapList4:
      type: object
      properties:
        id_maps:
          type: array
          description: The list of ID mappings.
          items:
            $ref: '#/components/schemas/OnetimeIdMap4'
      description: List of ID mappings.
    BeneficiaryAuthStatusUpdateList:
      type: object
      properties:
        beneficiary_auth_status_updates:
          type: array
          items:
            $ref: '#/components/schemas/BeneficiaryAuthStatusUpdate'
      required:
      - beneficiary_auth_status_updates
      description: List of beneficiary authorization status update objects.
    BeneficiaryAuthStatusUpdate:
      type: object
      properties:
        beneficiary_auth_status_update_id:
          type: string
          format: uuid
          description: Identifier of the beneficiary auth status update.
        last_updated:
          type: string
          format: date-time
          description: ISO formatted timestamp for beneficiary authorization last status update.
        beneficiary_auth_id:
          type: string
          format: uuid
          description: Identifier of the beneficiary authorization denoting permission to receive the asset.
        status:
          type: string
          description: The most recently updated beneficiary auth status.
      required:
      - beneficiary_auth_id
      - beneficiary_auth_status_update_id
      - last_updated
      - status
      description: Beneficiary authorization status update object.
    BeneficiaryAuthRecord:
      type: object
      properties:
        expiration:
          type: string
          format: date-time
          description: ISO formatted timestamp for the authorization to last.
        investor_id:
          type: string
          description: Identifier of the investor that is being authorized.
        beneficiary_auth_id:
          type: string
          format: uuid
          description: Identifier of the beneficiary authorization denoting permission to receive the asset.
        asset_id:
          type: string
          description: Identifier of the asset being authorized.
      required:
      - asset_id
      - beneficiary_auth_id
      - expiration
      - investor_id
      description: Beneficiary authorization record object.
  securitySchemes:
    OAuth2:
      type: oauth2
      description: OAuth 2.0 with the client credentials grant flow.
      flows:
        clientCredentials:
          tokenUrl: /v1/auth/token
          scopes:
            participant: Grants access to participant.