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

# Get package

> Retrieves a single package by its unique identifier, including its documents,
stakeholders, actors, elements and current status.



## OpenAPI

````yaml /nsev/api-reference/openapi.yaml get /packages/{packageId}
openapi: 3.0.0
info:
  title: NSEV WebPortal API
  version: 4.0.0
  contact:
    name: NSEV Support Team
    url: https://connectivegroup.my.site.com/s/contactsupport?language=en_US
  description: >
    **Nitro Sign Enterprise Verified (NSEV) WebPortal API Version 4**


    A comprehensive digital signing API that enables secure document signing
    workflows.

    This API provides endpoints for managing packages, documents, elements,
    stakeholders, 

    and signing processes within the NSEV platform.


    ## Authentication


    This API supports multiple authentication methods:


    ### Basic Authentication

    Traditional HTTP Basic Authentication using username and password.


    ### OAuth 2.0


    **Client Credentials Flow (Machine-to-Machine)**

    - Full API access including administrative endpoints

    - Ideal for server-to-server integrations


    **Authorization Code Flow (User-based)**

    - Limited API access excluding administrative endpoints

    - Ideal for user-facing applications

    - Supports delegated user access scenarios


    ## API Variants


    This specification is available in two variants:

    - **Full API**: Complete API with all endpoints (BasicAuth + OAuth2 M2M)

    - **User API**: Limited API excluding admin endpoints (OAuth2 user-based
    only)


    Administrative endpoints (`/poisonqueue`, `/absenceperiods`, `/auditproofs`)
    are 

    restricted to machine-to-machine authentication only.
        
    ## Versioning


    This API follows semantic versioning principles. Major version changes may
    introduce

    breaking changes, while minor and patch versions maintain backwards
    compatibility.
servers:
  - url: '{baseUrl}/esig/webportalapi/v4'
    variables:
      baseUrl:
        default: https://your-tenant.sign.gonitro.com
        description: >-
          Your tenant-specific base URL, including scheme and host (e.g.
          https://acme.sign.gonitro.com). Each NSEV customer has a unique URL.
          Replace this with yours before sending a request. The esig path
          segment is required - the Web Application Firewall routes requests on
          it.
security:
  - basicAuth: []
  - bearerAuth: []
tags:
  - name: Configuration
    description: |
      Endpoints for retrieving system configuration settings,
      contact groups, templates and signing methods.
  - name: Packages
    description: |
      Core endpoints for creating, managing, and tracking packages
      throughout their lifecycle.
  - name: Documents
    description: |
      Endpoints for adding, removing, and managing documents within packages.
      Handles document upload, processing, and metadata management.
  - name: Elements
    description: |
      Endpoints for managing elements (fields) within documents,
      including signatures and other form elements.
  - name: Stakeholders
    description: |
      Endpoints for managing stakeholders (recipients)
      associated with packages and their roles in the package workflow.
  - name: Actors
    description: |
      Endpoints for managing individual actors within stakeholders,
      including their contact information and role preferences:
      Approver, FormFiller, Signer or Receiver
  - name: Process
    description: |
      Endpoints for managing the package process workflow, including
      process steps, parallel actions, and workflow orchestration.
  - name: AuditTrails
    description: |
      Modern endpoints for retrieving comprehensive audit trails as signed PDFs,
      verifying the integrity of audit trail data and retrieving audit events.
  - name: BulkActions
    description: |
      Endpoints for performing and managing bulk actions on multiple packages.
  - name: Users
    description: |
      Endpoints for managing user accounts, including user invitations.
  - name: AbsencePeriods
    description: |
      Administrative endpoints for managing user absence periods and
      delegation settings during out-of-office scenarios.

      **Access Level**: Machine-to-machine only (administrative access required)
paths:
  /packages/{packageId}:
    parameters:
      - $ref: '#/components/parameters/packageIdPathParam'
    get:
      tags:
        - Packages
      summary: Get package
      description: >-
        Retrieves a single package by its unique identifier, including its
        documents,

        stakeholders, actors, elements and current status.
      operationId: getPackage
      responses:
        '200':
          description: Package was found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Package'
        '401':
          $ref: '#/components/responses/UnAuthorized'
        '404':
          $ref: '#/components/responses/NotFound.Package'
components:
  parameters:
    packageIdPathParam:
      name: packageId
      in: path
      required: true
      description: The target package's unique identifier
      schema:
        $ref: '#/components/schemas/Package.Id'
  schemas:
    Package:
      type: object
      description: Response model for a package
      additionalProperties: false
      properties:
        Id:
          $ref: '#/components/schemas/Package.Id'
        BatchId:
          $ref: '#/components/schemas/Package.BatchId'
        Name:
          $ref: '#/components/schemas/Package.Name'
        Status:
          $ref: '#/components/schemas/Package.Status'
        IsActionNeeded:
          type: boolean
          description: >-
            If present, the package contains not fully uploaded documents.
            Signatures/markers were detected and user must take an action to
            keep/remove them.
        CreationDate:
          $ref: '#/components/schemas/CreationDate'
        ExpiryDate:
          $ref: '#/components/schemas/ExpiryDate'
        RevocationDate:
          $ref: '#/components/schemas/RevocationDate'
        Initiator:
          $ref: '#/components/schemas/Package.Initiator'
        UnplacedElements:
          type: array
          description: This package's elements that aren't placed aynywhere yet
          items:
            $ref: '#/components/schemas/UnplacedElementResult'
        Documents:
          type: array
          description: This package's documents
          items:
            $ref: '#/components/schemas/Document'
        Stakeholders:
          type: array
          description: This package's stakeholders
          items:
            $ref: '#/components/schemas/Stakeholder'
        DefaultLegalNotice:
          allOf:
            - $ref: '#/components/schemas/LegalNotice'
            - type: object
              description: The default legal notice that will be added to a signing field
        ExternalReference:
          $ref: '#/components/schemas/ExternalReference'
        DocumentGroupCode:
          $ref: '#/components/schemas/Package.DocumentGroupCode'
        ThemeCode:
          type: string
          description: identifier of the theme this package has
        CallBackUrl:
          type: string
          format: url
          description: >-
            url that will be called each time a signature has been put on the
            document
        NotificationCallBackUrl:
          type: string
          format: url
          description: url that will be called when the signer requests a new signing url
        F2fSigningUrl:
          type: string
          format: url
          description: >-
            Link to the package which allows to start a face to face signing
            session
        PreviewUrl:
          type: string
          format: url
          description: Link to the package which allows only a preview of documents
        DefaultRedirectUrl:
          type: string
          format: url
          description: >
            Default url to which stakeholders will be redirected after
            completing their actions.

            Set on package submit, when actor has no RedirectUrl.
        F2fRedirectUrl:
          type: string
          format: url
          description: >
            Url to which the end user is redirected after all fields have been
            signed with ‘face to face’ signing.
        IsUnsignedContentDownloadable:
          type: boolean
          description: >
            Whether a signer can download the unsigned content of this package
            or not

            Default when not specified is taken from config ( Customization
            Settings > IsDownloadUnsignedFilesEnabled )
        IsReassignEnabled:
          type: boolean
          description: >
            Whether a stakeholder can reassign his/her action ( actor ) to
            another party.  

            Default when not specified is taken from config ( Customization
            Settings > IsReassignEnabled )
        ActionUrlExpirationPeriodInDays:
          type: integer
          nullable: true
          minimum: 1
          description: >
            This parameter determines after how many days the action URLs must
            expire when they are not used.

            When no value is entered, this parameter takes its value from the
            Config Index setting IsActionUrlExpirationEnabled

            under Customization Settings. 

            The maximum value equals the number of days left until 9999-12-31.
        ProofCorrelationId:
          $ref: '#/components/schemas/ProofCorrelationId'
        AddInitiatorAsReceiver:
          type: boolean
          nullable: true
          description: >
            If true, adds the initiator as a receiver on submit.   This property
            is only available on draft packages.
        MustBeArchived:
          type: boolean
          nullable: false
          description: >-
            If true, the package will be sent to the external archive when
            status is FINISHED.
        ArchiveAuditProofs:
          type: boolean
          nullable: false
          description: >-
            If true, the audit proofs will be sent to the external archive when
            package status is FINISHED.
        ArchiveAuditTrail:
          type: boolean
          nullable: false
          description: >-
            If true, the audit trail will be sent to the external archive when
            package status is FINISHED.
        Warnings:
          type: array
          items:
            $ref: '#/components/schemas/Warning'
        AutomaticReminder:
          $ref: '#/components/schemas/AutomaticReminder'
        ExpirationReminder:
          $ref: '#/components/schemas/ExpirationReminder'
        OtpAuthenticationSetting:
          $ref: '#/components/schemas/OtpAuthenticationSetting'
    Package.Id:
      allOf:
        - $ref: '#/components/schemas/Guid'
        - type: string
          description: A package's unique identifier
    Package.BatchId:
      allOf:
        - $ref: '#/components/schemas/Guid'
        - type: string
          description: A batch's unique identifier, grouping multiple packages
    Package.Name:
      type: string
      description: >-
        Name of the package. It is shown in the NSEV WebPortal and used as the

        file name when the package is downloaded as a `.zip` file, so do not add
        a file

        extension.


        Avoid forbidden file-name characters - slash (`/`), backslash (`\`),
        question

        mark (`?`), percent (`%`), asterisk (`*`), colon (`:`), pipe (`|`),
        single

        quote, double quote (`"`), less-than (`<`) and greater-than (`>`) - and

        HTML-sensitive characters such as ampersand (`&`) and apostrophe. This
        list is

        not exhaustive. When using itsme signing, use only characters supported
        by

        ISO 8859-15; some software-generated characters such as curly
        apostrophes and

        long dashes are not supported.
      nullable: false
      minLength: 1
      maxLength: 150
      example: example package
    Package.Status:
      type: string
      description: The status of a package
      enum:
        - Draft
        - Pending
        - InProgress
        - Ending
        - Finished
        - Archived
        - Rejected
        - Revoked
        - Expired
        - Failed
        - Processing
        - ProcessingFailed
    CreationDate:
      type: string
      format: date-time
      description: When the resource was created
    ExpiryDate:
      type: string
      format: date-time
      description: When the resource will expire
    RevocationDate:
      type: string
      format: date-time
      nullable: true
      description: >-
        Date and time in UTC when the package got revoked. Will only be present
        for packages that are revoked.
    Package.Initiator:
      allOf:
        - $ref: '#/components/schemas/EmailAddress'
        - description: Email address of a known user of the webSigner portal
    UnplacedElementResult:
      oneOf:
        - $ref: '#/components/schemas/UnplacedSigningFieldResult'
        - $ref: '#/components/schemas/UnplacedCheckBoxFieldResult'
        - $ref: '#/components/schemas/UnplacedTextBoxFieldResult'
        - $ref: '#/components/schemas/UnplacedRadioGroupResult'
      discriminator:
        propertyName: Type
        mapping:
          SigningField:
            $ref: '#/components/schemas/UnplacedSigningFieldResult'
          CheckBoxField:
            $ref: '#/components/schemas/UnplacedCheckBoxFieldResult'
          TextBoxField:
            $ref: '#/components/schemas/UnplacedTextBoxFieldResult'
          RadioGroup:
            $ref: '#/components/schemas/UnplacedRadioGroupResult'
    Document:
      allOf:
        - $ref: '#/components/schemas/DocumentCreatedSync'
        - type: object
      properties:
        IsActionNeeded:
          type: boolean
          description: >-
            Indicates that the document is not fully processed and user must
            take an action to keep/remove signatures/markers. (presented only
            for draft packages if true)
        ErrorCode:
          type: string
          description: >-
            The code of error occured during async document uploading.
            (presented only for processingFailed document)
        HasSignatures:
          type: boolean
          description: >-
            If present, the document data contains signatures. (Returns only for
            document with IsActionNeeded)
        HasSigningFields:
          type: boolean
          description: >-
            If present, the document data contains signing field markers.
            (Returns only for document with IsActionNeeded)
        HasFormFields:
          type: boolean
          description: >-
            If present, the document data contains form field markers. (Returns
            only for document with IsActionNeeded)
    Stakeholder:
      oneOf:
        - $ref: '#/components/schemas/UndecidedStakeholder'
        - $ref: '#/components/schemas/PersonStakeholder'
        - $ref: '#/components/schemas/GroupStakeholder'
        - $ref: '#/components/schemas/ContactGroupStakeholder'
      discriminator:
        propertyName: Type
        mapping:
          Undecided:
            $ref: '#/components/schemas/UndecidedStakeholder'
          Person:
            $ref: '#/components/schemas/PersonStakeholder'
          Group:
            $ref: '#/components/schemas/GroupStakeholder'
          ContactGroup:
            $ref: '#/components/schemas/ContactGroupStakeholder'
    LegalNotice:
      title: Custom legal notice text
      type: object
      properties:
        Text:
          description: >-
            A custom legal notice the signer must retype before placing their
            signature. Use this

            when the notice is not one of the named notices configured in the
            Config Index. Write

            it in the same language as the package's documents. Legal notices
            are case-sensitive.
          type: string
          maxLength: 1000
          example: Read and approved
    ExternalReference:
      type: string
      maxLength: 256
      description: >-
        External reference to this resource set by the calling application. NSEV

        does not use this value itself. When filtering packages, this matches
        the

        package-level external reference only, not document or field references.
    Package.DocumentGroupCode:
      type: string
      description: >-
        Identifier of the document group the package is uploaded to. By default
        an

        initiator uploads to their personal "My Documents" folder, which cannot
        be

        shared. An NSEV admin can configure additional document groups so users

        can collaborate on each other's packages. To use "My Documents", omit
        this

        parameter or pass `00001`; to use a specific group, pass its document
        group

        code. Use the Get document groups call to discover the configured codes.
    ProofCorrelationId:
      type: string
      deprecated: true
      description: Id for correlating with other resources in the proofs system
    Warning:
      oneOf:
        - $ref: '#/components/schemas/ProcessWarning'
        - $ref: '#/components/schemas/PackageWarning'
        - $ref: '#/components/schemas/DocumentWarning'
      discriminator:
        propertyName: ResourceType
        mapping:
          process:
            $ref: '#/components/schemas/ProcessWarning'
          package:
            $ref: '#/components/schemas/PackageWarning'
          document:
            $ref: '#/components/schemas/DocumentWarning'
    AutomaticReminder:
      description: >-
        Contains information about a package's automatic reminder settings.
        Please note that values are taken from configuration defaults, if
        request object is empty.
      properties:
        IsSendAutomaticRemindersEnabled:
          type: boolean
        DaysBeforeFirstReminder:
          type: integer
          minimum: 1
        IsRepeatRemindersEnabled:
          type: boolean
        RepeatReminders:
          type: integer
          minimum: 1
    ExpirationReminder:
      description: >-
        Contains information about a package's expiration reminder settings.
        Please note that values are taken from configuration defaults, if
        request object is empty.
      properties:
        IsSendExpirationRemindersEnabled:
          type: boolean
        DaysBeforeExpirationReminder:
          type: integer
          minimum: 1
    OtpAuthenticationSetting:
      description: Contains settings for the package OTP authentication
      properties:
        IsSmsOtpAuthenticationEnabled:
          type: boolean
          nullable: false
        IsMailOtpAuthenticationEnabled:
          type: boolean
          nullable: false
    PackageNotFoundError:
      title: Package not found
      allOf:
        - $ref: '#/components/schemas/NotFoundError'
      example:
        ErrorCode: Package.NotFound:00000000-0000-0000-0000-000000000000
        ErrorMessage: >-
          The package with id '00000000-0000-0000-0000-000000000000' could not
          be found
    Guid:
      title: GUID
      type: string
      description: A globally unique identifier
      format: guid
      example: 00000000-0000-0000-0000-000000000000
    EmailAddress:
      title: Email address
      type: string
      format: email
      example: hello@world.test
    UnplacedSigningFieldResult:
      title: Unplaced signing field (result)
      allOf:
        - $ref: '#/components/schemas/UnplacedElementBaseResult'
        - type: object
          description: A field that can be signed by an actor
          properties:
            Type:
              enum:
                - SigningField
            SigningMethods:
              type: array
              items:
                $ref: '#/components/schemas/SigningMethod'
            LegalNotice:
              $ref: '#/components/schemas/LegalNotice'
      example:
        Type: signingField
        SigningMethods:
          - manual
        LegalNotice:
          Text: read and approved
        Id: C923F37A-DD9F-4877-B81C-40F2940C51B0
        ActorId: 4F2C1AED-DAE3-44F5-9879-0E3FFF9ED0B8
        Status: Pending
        ExternalReference: external reference example
        MarkerType: PdfFormField
        MarkerId: '#SIG01'
    UnplacedCheckBoxFieldResult:
      title: Unplaced check box field (result)
      allOf:
        - $ref: '#/components/schemas/UnplacedElementBaseResult'
        - $ref: '#/components/schemas/UnplacedFormFieldBaseResult'
        - type: object
          description: Parameters for creating a check box field
          properties:
            Type:
              enum:
                - CheckBoxField
            DefaultValue:
              type: boolean
              description: Is the check box field checked by default
            Checked:
              type: boolean
              description: The value of the completed check box field
      example:
        Id: 5F2D5145-D31C-4D9E-8635-F687D7CC414A
        ActorId: A6BB68DD-F295-45B7-85D3-1D2DFE55A721
        Type: checkBoxField
        Status: Pending
        Name: checkBox1
        Label: some label
        ToolTipLabel: some tooltip
        IsRequired: false
        DefaultValue: true
        Checked: true
    UnplacedTextBoxFieldResult:
      title: Unplaced text box field (result)
      allOf:
        - $ref: '#/components/schemas/UnplacedElementBaseResult'
        - $ref: '#/components/schemas/UnplacedFormFieldBaseResult'
        - type: object
          description: Parameters for creating a text box field
          properties:
            Type:
              enum:
                - TextBoxField
            DefaultValue:
              type: string
              description: The template for default value of the text box
            IsMultiline:
              type: boolean
              description: Defines if the text box field should be multiline
            CharLimit:
              type: integer
              nullable: true
              description: Limits the number of characters on the text box field
            Value:
              type: string
              description: The value of the completed text box field
      example:
        Id: 5F2D5145-D31C-4D9E-8635-F687D7CC414A
        ActorId: A6BB68DD-F295-45B7-85D3-1D2DFE55A721
        Type: textBoxField
        Status: Pending
        ExternalReference: external reference
        Name: checkBox1
        Label: some label
        ToolTipLabel: some tooltip
        IsRequired: false
        DefaultValue: something
        IsMultiline: true
        CharLimit: 200
        Value: text
    UnplacedRadioGroupResult:
      title: Unplaced radio group (result)
      allOf:
        - $ref: '#/components/schemas/UnplacedElementBaseResult'
        - $ref: '#/components/schemas/UnplacedFormFieldBaseResult'
        - type: object
          description: Parameters for creating a radio button group
          properties:
            Type:
              enum:
                - RadioGroup
            Selected:
              type: string
              description: The name of selected option
            Options:
              type: array
              description: The radio button group Options
              items:
                $ref: '#/components/schemas/UnplacedRadioOptionResult'
      example:
        Id: 5F2D5145-D31C-4D9E-8635-F687D7CC414A
        ActorId: A6BB68DD-F295-45B7-85D3-1D2DFE55A721
        Type: textBoxField
        Status: Pending
        ExternalReference: external reference
        Name: checkBox1
        Label: some label
        ToolTipLabel: some tooltip
        IsRequired: false
        Options:
          - Name: option1
            Label: option1 label
            IsSelected: true
          - Name: option2
            Label: option2 label
            IsSelected: false
    DocumentCreatedSync:
      type: object
      description: A single document
      additionalProperties: false
      properties:
        Id:
          $ref: '#/components/schemas/Document.Id'
        PackageId:
          $ref: '#/components/schemas/Package.Id'
        Name:
          $ref: '#/components/schemas/Document.Name'
        CreationDate:
          $ref: '#/components/schemas/CreationDate'
        MediaType:
          allOf:
            - $ref: '#/components/schemas/MediaType'
            - enum:
                - application/pdf
                - application/xml
        Language:
          $ref: '#/components/schemas/Language'
        Status:
          $ref: '#/components/schemas/Document.Status'
        Elements:
          type: array
          description: The document's elements
          items:
            $ref: '#/components/schemas/Element'
        ExternalReference:
          $ref: '#/components/schemas/ExternalReference'
        ProofCorrelationId:
          $ref: '#/components/schemas/ProofCorrelationId'
        OrderIndex:
          $ref: '#/components/schemas/Document.OrderIndex'
    UndecidedStakeholder:
      title: Undecided stakeholder
      allOf:
        - $ref: '#/components/schemas/StakeholderBase'
        - type: object
          description: Unspecified stakeholder
          required:
            - Type
          properties:
            Type:
              type: string
              description: The type of stakeholder
              nullable: false
              enum:
                - Undecided
    PersonStakeholder:
      title: Person stakeholder
      allOf:
        - $ref: '#/components/schemas/StakeholderBase'
        - type: object
          description: A single individual
          required:
            - Language
            - LastName
            - EmailAddress
          properties:
            Type:
              type: string
              description: The type of stakeholder
              nullable: false
              enum:
                - Person
            Language:
              $ref: '#/components/schemas/Language'
            FirstName:
              $ref: '#/components/schemas/Stakeholder.FirstName'
            LastName:
              $ref: '#/components/schemas/Stakeholder.LastName'
            EmailAddress:
              $ref: '#/components/schemas/EmailAddress'
            PhoneNumber:
              $ref: '#/components/schemas/PhoneNumber'
            BirthDate:
              type: string
              format: date
            AdditionalProperties:
              $ref: '#/components/schemas/AdditionalProperties'
            Substitutes:
              type: array
              description: Active substitutes of the person
              items:
                $ref: '#/components/schemas/StakeholderSubstitute'
      example:
        Id: 00000000-0000-0000-0000-000000000000
        PackageId: 00000000-0000-0000-0000-000000000000
        Type: person
        Actors:
          - Id: 00000000-0000-0000-0000-000000000000
            Type: signer
            Status: available
            Links:
              - https://dothething.test
          - Id: 00000000-0000-0000-0000-000000000000
            Type: signer
            Status: unavailable
          - Id: 00000000-0000-0000-0000-000000000000
            Type: signer
            Status: skipped
        ExternalReference: string
        Language: en
        FirstName: string
        LastName: string
        EmailAddress: hello@world.test
        BirthDate: '2020-01-22'
    GroupStakeholder:
      title: Group stakeholder
      allOf:
        - $ref: '#/components/schemas/StakeholderBase'
        - type: object
          description: >-
            a group of people where a single member will have to perform an
            action
          properties:
            Type:
              type: string
              description: The type of stakeholder
              nullable: false
              enum:
                - Group
            GroupName:
              type: string
              maxLength: 128
              description: Name of the group
            Members:
              type: array
              description: Members of the group
              items:
                $ref: '#/components/schemas/GroupMember'
      example:
        Id: 00000000-0000-0000-0000-000000000000
        PackageId: 00000000-0000-0000-0000-000000000000
        Type: group
        Actors:
          - Id: 00000000-0000-0000-0000-000000000000
            Type: signer
            Status: available
            MemberLinks:
              - Email: zu@li.test
                Link: https://dothething.test
              - Email: john@doe.test
                Link: https://alsocompleteyouraction.test
        GroupName: Group123
        Members:
          - Language: en
            FirstName: John
            LastName: Doe
            EmailAddress: john@doe.test
            BirthDate: '1990-01-16'
          - Language: en
            FirstName: Zu
            LastName: Li
            EmailAddress: zu@li.test
            BirthDate: '1991-03-14'
    ContactGroupStakeholder:
      title: Contact group stakeholder
      allOf:
        - $ref: '#/components/schemas/StakeholderBase'
        - type: object
          description: >-
            A contact group defined in NSEV where a single member will have to
            perform an action, is converted to 'group' when the package is
            submitted
          properties:
            Type:
              type: string
              description: The type of stakeholder
              nullable: false
              enum:
                - ContactGroup
            ContactGroupCode:
              type: string
              description: an NSEV contactgroup identifier
            Members:
              description: The members of the referenced contact group
              type: array
              items:
                $ref: '#/components/schemas/GroupMember'
      example:
        Id: 00000000-0000-0000-0000-000000000000
        PackageId: 00000000-0000-0000-0000-000000000000
        Type: contactGroup
        ContactGroupCode: '00002'
        Actors:
          - Id: 00000000-0000-0000-0000-000000000000
            Type: signer
            Status: available
            MemberLinks:
              - Email: john@doe.test
                Link: https://alsocompleteyouraction.test
              - Email: zu@li.test
                Link: https://dothething.test
        ExternalReference: string
        Members:
          - Language: en
            FirstName: John
            LastName: Doe
            EmailAddress: john@doe.test
            BirthDate: '1990-01-16'
          - Language: en
            FirstName: Zu
            LastName: Li
            EmailAddress: zu@li.test
            BirthDate: '1991-03-14'
    ProcessWarning:
      title: Process warning
      allOf:
        - $ref: '#/components/schemas/WarningBase'
        - type: object
          description: >
            A warning about the process of a package.  

            E.g. group members that don't have the necessary data to sign with a
            signing method
          properties:
            Stakeholder:
              type: object
              description: The stakeholder involved
              properties:
                Id:
                  $ref: '#/components/schemas/Stakeholder.Id'
                ExternalReference:
                  $ref: '#/components/schemas/ExternalReference'
            Actor:
              description: The actor involved
              properties:
                Id:
                  $ref: '#/components/schemas/Actor.Id'
      example:
        ResourceType: process
        Code: ContactGroup.SomeMissingPhoneNumbers
        Message: >-
          Some of the group members don't have a phone number required for
          [SmsOTP] signing type.
        Stakeholder:
          Id: 82c6b4f4-70fe-4fff-b176-6df0f4e79293
          ExternalReference: userXYZ
        Actor:
          Id: 73462bf5-8430-411d-befb-b35c92f35e10
    PackageWarning:
      title: Package warning
      allOf:
        - $ref: '#/components/schemas/WarningBase'
        - type: object
          description: |
            A warning about the package.  
            E.g. the package size exceeded the recommended limit.
      example:
        ResourceType: package
        Code: Package.RecommendedMaxSize:150
        Message: Recommended size of the package is 150 MB
    DocumentWarning:
      title: Document warning
      allOf:
        - $ref: '#/components/schemas/WarningBase'
        - type: object
          description: |
            A warning about the document of a package. 
            E.g. the document size exceeded the recommended limit.
          properties:
            Document:
              type: object
              description: The document involved
              properties:
                Id:
                  $ref: '#/components/schemas/Document.Id'
                ExternalReference:
                  $ref: '#/components/schemas/ExternalReference'
      example:
        ResourceType: document
        Code: Document.RecommendedMaxSize:100
        Message: Recommended maximum document size is 100 MB.
        Document:
          Id: 02caccbb-91b4-4e7a-902a-0e0cfc9cf134
          ExternalReference: doc1
    NotFoundError:
      title: Not found
      allOf:
        - $ref: '#/components/schemas/Error'
        - description: The resource could not be found
      example:
        ErrorCode: Document.NotFound:00000000-0000-0000-0000-000000000000
        ErrorMessage: >-
          The document with id '00000000-0000-0000-0000-000000000000' could not
          be found
    UnplacedElementBaseResult:
      type: object
      description: An element on a document, e.g. a signing field
      required:
        - Type
      properties:
        Id:
          $ref: '#/components/schemas/Element.Id'
        ActorId:
          allOf:
            - $ref: '#/components/schemas/Actor.Id'
            - nullable: true
              type: string
        Type:
          $ref: '#/components/schemas/Element.Type'
        Status:
          $ref: '#/components/schemas/Element.Status'
        ExternalReference:
          $ref: '#/components/schemas/ExternalReference'
        MarkerType:
          $ref: '#/components/schemas/Element.MarkerType'
        MarkerId:
          $ref: '#/components/schemas/Element.MarkerId'
    SigningMethod:
      title: Signing method name
      type: string
      description: An NSEV signing method
      example: manual
    UnplacedFormFieldBaseResult:
      type: object
      description: A form field that can be completed by an actor
      properties:
        Name:
          type: string
          description: The name of the form field
        Label:
          type: string
          description: The label or alternative name of the form field
        ToolTipLabel:
          type: string
          description: The tool tip label of the form field
        IsRequired:
          type: boolean
          description: Is the form field required
    UnplacedRadioOptionResult:
      allOf:
        - type: object
          description: Parameters for creating a radio button option
          properties:
            Name:
              type: string
              description: The name/choice of the option
            Label:
              type: string
              description: The label or alternative name of the option
            IsSelected:
              type: boolean
              description: Is the option pre-selected
    Document.Id:
      allOf:
        - $ref: '#/components/schemas/Guid'
        - type: string
          description: A document's unique identifier
    Document.Name:
      type: string
      nullable: false
      description: Name of the document
      minLength: 1
      maxLength: 150
      example: example document
    MediaType:
      nullable: false
      type: string
      format: mediaType
      description: The media type of a file
      example: application/pdf
    Language:
      type: string
      format: languageCode
      description: A country's 2 letter ISO code (ISO 639-1)
      example: en
    Document.Status:
      type: string
      description: The status of a document
      enum:
        - Draft
        - Pending
        - InProgress
        - Ending
        - Finished
        - Rejected
        - Revoked
        - Expired
        - Failed
        - Processing
        - ProcessingFailed
    Element:
      oneOf:
        - $ref: '#/components/schemas/SigningField'
        - $ref: '#/components/schemas/CheckBoxField'
        - $ref: '#/components/schemas/TextBoxField'
        - $ref: '#/components/schemas/RadioGroup'
      discriminator:
        propertyName: Type
        mapping:
          SigningField:
            $ref: '#/components/schemas/SigningField'
          CheckBoxField:
            $ref: '#/components/schemas/CheckBoxField'
          TextBoxField:
            $ref: '#/components/schemas/TextBoxField'
          RadioGroup:
            $ref: '#/components/schemas/RadioGroup'
    Document.OrderIndex:
      type: integer
      description: The Order Index of the document.
    StakeholderBase:
      type: object
      description: A person or group with an interest in a package
      additionalProperties: false
      required:
        - Type
      properties:
        Id:
          $ref: '#/components/schemas/Stakeholder.Id'
        PackageId:
          $ref: '#/components/schemas/Package.Id'
        Type:
          $ref: '#/components/schemas/Stakeholder.Type'
        Actors:
          type: array
          description: The actions to be performed
          items:
            $ref: '#/components/schemas/Actor'
        ExternalReference:
          $ref: '#/components/schemas/ExternalReference'
    Stakeholder.FirstName:
      type: string
      maxLength: 150
      description: First name of the stakeholder
    Stakeholder.LastName:
      type: string
      maxLength: 150
      description: Last name of the stakeholder
    PhoneNumber:
      type: string
      example: +32xxxxxxxxx
      description: >-
        Phone number used to receive an SMS OTP. Always include the country code
        (for

        example +32xxxxxxxxx); use a leading plus sign rather than "00" as the

        international dialing prefix, and never include spaces.
    AdditionalProperties:
      type: object
      description: >-
        Additional stakeholder properties configured in the Contact Properties
        Settings of

        the configuration - any extra stakeholder information the administrator
        requires

        (for example maiden name or nationality). Two properties are configured
        by default

        in every environment: **BeId** (the stakeholder's national security
        number) and

        **BeLawyer** (their lawyer ID). When a mandated signing rule is applied
        to a

        property, that property becomes mandatory and its value is checked
        against the

        data extracted from the signing certificate or returned by the signing
        service; a

        match is required for the stakeholder to be mandated to sign. Use Get
        signing

        methods to see which additional properties are mandatory for each
        signing method.
      additionalProperties:
        type: object
      example:
        BeId: '12345678900'
        BeLawyer: b459d74c-1f90-4d63-9f4a-6de9cead8c5e
    StakeholderSubstitute:
      required:
        - Language
        - LastName
        - EmailAddress
      allOf:
        - $ref: '#/components/schemas/Person'
        - $ref: '#/components/schemas/Substitute.AllowedToReassign'
        - type: object
          properties:
            Actor:
              $ref: '#/components/schemas/SubstituteActor'
    GroupMember:
      required:
        - Language
        - LastName
        - EmailAddress
      properties:
        Language:
          $ref: '#/components/schemas/Language'
        FirstName:
          type: string
          maxLength: 150
        LastName:
          type: string
          maxLength: 150
        EmailAddress:
          $ref: '#/components/schemas/EmailAddress'
        BirthDate:
          type: string
          format: date
        PhoneNumber:
          $ref: '#/components/schemas/PhoneNumber'
        ExternalReference:
          $ref: '#/components/schemas/ExternalReference'
        AdditionalProperties:
          $ref: '#/components/schemas/AdditionalProperties'
        Substitutes:
          type: array
          description: Active substitutes of the group member
          items:
            $ref: '#/components/schemas/StakeholderSubstitute'
    WarningBase:
      type: object
      description: |
        A notice of a possible problem so it can be resolved or prevented
      properties:
        ResourceType:
          type: string
          description: The subject of the warning
          enum:
            - process
            - package
            - document
            - archiving
        Code:
          type: string
        Message:
          type: string
    Stakeholder.Id:
      allOf:
        - $ref: '#/components/schemas/Guid'
        - type: string
          description: A stakeholder's unique identifier
    Actor.Id:
      allOf:
        - $ref: '#/components/schemas/Guid'
        - type: string
          description: This actor's unique identifier
    Error:
      title: Error
      type: object
      description: Something that went wrong
      example:
        ErrorCode: Something.WentWrong
        ErrorMessage: Something went wrong
      properties:
        ErrorCode:
          type: string
          description: >-
            An error code of something that went wrong, in the form of
            'Subject.Error:value'
        ErrorMessage:
          type: string
          description: A human-readable explanation of what went wrong
    Element.Id:
      allOf:
        - $ref: '#/components/schemas/Guid'
        - type: string
          description: An element's unique identifier
    Element.Type:
      type: string
      description: >-
        the type of element ( the discriminator of the different types of
        elements, for the moment there's just one! )
      nullable: false
      enum:
        - SigningField
        - TextBoxField
        - CheckBoxField
        - RadioGroup
    Element.Status:
      type: string
      description: The status of a document element
      enum:
        - Pending
        - InProgress
        - Rejected
        - Failed
        - Finished
        - Refused
    Element.MarkerType:
      type: string
      description: the type of marker (if set)
      nullable: true
      enum:
        - None
        - Text
        - PdfFormField
    Element.MarkerId:
      type: string
      description: A piece of text or PDF field identifier
      nullable: true
    SigningField:
      title: Signing field
      allOf:
        - $ref: '#/components/schemas/ElementBase'
        - type: object
          description: A field that can be signed by an actor
          properties:
            Location:
              $ref: '#/components/schemas/Element.Location'
            UsedSigningMethod:
              type: string
              description: The signingmethod that was used to sign this signingfield
            SigningMethods:
              type: array
              items:
                $ref: '#/components/schemas/SigningMethod'
            KeyPairMappings:
              type: array
              items:
                $ref: '#/components/schemas/KeyPairMapping'
            LegalNotice:
              $ref: '#/components/schemas/LegalNotice'
            Dimensions:
              $ref: '#/components/schemas/Element.Dimensions'
    CheckBoxField:
      title: Check box field
      allOf:
        - $ref: '#/components/schemas/ElementBase'
        - $ref: '#/components/schemas/FormFieldBase'
        - type: object
          description: Parameters for creating a check box field
          properties:
            Location:
              $ref: '#/components/schemas/Element.Location'
            Dimensions:
              $ref: '#/components/schemas/Element.Dimensions'
            DefaultValue:
              type: boolean
              description: Is the check box field checked by default
            Checked:
              type: boolean
              description: The value of the completed check box field
    TextBoxField:
      title: Text box field
      allOf:
        - $ref: '#/components/schemas/ElementBase'
        - $ref: '#/components/schemas/FormFieldBase'
        - type: object
          description: Parameters for creating a text box field
          properties:
            Location:
              $ref: '#/components/schemas/Element.Location'
            Dimensions:
              $ref: '#/components/schemas/Element.Dimensions'
            DefaultValue:
              type: string
              description: The template for default value of the text box
            IsMultiline:
              type: boolean
              description: Defines if the text box field should be multiline
            CharLimit:
              type: integer
              nullable: true
              description: Limits the number of characters on the text box field
            Value:
              type: string
              description: The value of the completed text box field
    RadioGroup:
      title: Radio group
      allOf:
        - $ref: '#/components/schemas/ElementBase'
        - $ref: '#/components/schemas/FormFieldBase'
        - type: object
          description: Parameters for creating a radio button group
          properties:
            Selected:
              type: string
              description: The name of selected option
            Options:
              type: array
              description: The radio button group Options
              items:
                $ref: '#/components/schemas/RadioOption'
    Stakeholder.Type:
      type: string
      description: >-
        The type of stakeholder, and the discriminator across the stakeholder
        variants.


        - **Person** - a single individual; only that person can act.

        - **Group** - a group of people defined inline; any member may act on
        behalf of
          the group, and once one member acts the others cannot.
        - **ContactGroup** - references a contact group created in the WebPortal
        by its
          code; behaves like a group. Exists only while the package is in draft and is
          converted to **Group** when the package moves to pending.
        - **Undecided** - the implicit stakeholder a package starts with before
        any
          stakeholder has been assigned; it cannot be deleted.
      nullable: false
      enum:
        - Undecided
        - Person
        - Group
        - ContactGroup
    Actor:
      oneOf:
        - $ref: '#/components/schemas/SignerActor'
        - $ref: '#/components/schemas/ReceiverActor'
        - $ref: '#/components/schemas/ApproverActor'
        - $ref: '#/components/schemas/FormFillerActor'
      discriminator:
        propertyName: Type
        mapping:
          Signer:
            $ref: '#/components/schemas/SignerActor'
          Receiver:
            $ref: '#/components/schemas/ReceiverActor'
          Approver:
            $ref: '#/components/schemas/ApproverActor'
          FormFiller:
            $ref: '#/components/schemas/FormFillerActor'
      example:
        Type: signer
        Status: available
        Elements:
          - Id: 00000000-0000-0000-0000-000000000000
            Type: signingField
            Location:
              Page: 2
              Top: 250
              Left: 250
            Dimensions:
              Width: 230
              Height: 230
    Person:
      type: object
      description: A person
      required:
        - Language
        - LastName
        - EmailAddress
      properties:
        Language:
          allOf:
            - $ref: '#/components/schemas/Language'
            - description: The person's language
        Title:
          type: string
          maxLength: 100
          description: The person's title
          example: Ms.
        FirstName:
          type: string
          maxLength: 150
          description: The person's first name
          example: Jane
        LastName:
          type: string
          maxLength: 150
          description: The person's last name
          example: Doe
        EmailAddress:
          allOf:
            - $ref: '#/components/schemas/EmailAddress'
            - description: The person's email address
        PhoneNumber:
          allOf:
            - $ref: '#/components/schemas/PhoneNumber'
            - description: The person's phone number
            - example: +1 202-918-2132
        BirthDate:
          type: string
          format: date
        ExternalReference:
          allOf:
            - $ref: '#/components/schemas/ExternalReference'
            - description: The person's external reference
            - example: Client_XYZ_Account_Manager
        AdditionalProperties:
          allOf:
            - $ref: '#/components/schemas/AdditionalProperties'
            - description: The person's additional properties
    Substitute.AllowedToReassign:
      type: object
      properties:
        AllowedToReassign:
          type: boolean
          description: >-
            Indicates whether the substitute is allowed to reassign the actor to
            another party
    SubstituteActor:
      properties:
        Id:
          $ref: '#/components/schemas/Actor.Id'
        Type:
          $ref: '#/components/schemas/Actor.Type'
    ElementBase:
      type: object
      description: An element on a document, e.g. a signing field
      required:
        - Type
      properties:
        Id:
          $ref: '#/components/schemas/Element.Id'
        ActorId:
          allOf:
            - $ref: '#/components/schemas/Actor.Id'
            - nullable: true
              description: Is null when no actor has been assigned to this field yet
              type: string
        Type:
          $ref: '#/components/schemas/Element.Type'
        Status:
          $ref: '#/components/schemas/Element.Status'
        ExternalReference:
          $ref: '#/components/schemas/ExternalReference'
        CompletedDate:
          type: string
          format: dateTime
    Element.Location:
      type: object
      description: where an element is placed
      required:
        - Page
        - Left
        - Top
      properties:
        Page:
          type: integer
          description: >-
            The page of the document the element is placed on. Pages are
            1-based: 1 is the first page; 0 must not be used. To count from the
            end, use negative integers: -1 is the last page, -2 the
            second-to-last, and so on.
        Top:
          type: number
          format: float
          minimum: 0
          description: how far from the top edge of the document this is placed
        Left:
          type: number
          format: float
          minimum: 0
          description: how far from the left edge of the document this is placed
      example:
        Page: 2
        Top: 200
        Left: 200
    KeyPairMapping:
      type: object
      description: >-
        A mapping between signing method and the keypair to be used for signing
        with this method. If a signing method is not mentioned in this list,
        then the default keypair will be used when signing
      properties:
        SigningMethodName:
          description: The name of an NSEV signing method
          type: string
          example: MailOtp:MailOtp
        KeyPair:
          description: >-
            The name of the keypair that is used for signing if the
            corresponding signing method is chosen
          type: string
          example: MyKeyPair
    Element.Dimensions:
      title: Element dimensions
      type: object
      description: >
        The size of an element in points. The minimum width and height depend on
        the element

        type - a signing field must be at least 50 × 30, other elements at least
        10 × 10.

        See the [Field positioning guide](/nsev/build/guides/field-positioning).
      required:
        - Width
        - Height
      properties:
        Width:
          type: number
          format: float
          description: width of the element
          maximum: 999999
        Height:
          type: number
          format: float
          description: height of the element
          maximum: 999999
      example:
        Width: 200
        Height: 200
    FormFieldBase:
      type: object
      description: A form field that can be completed by an actor
      properties:
        Name:
          type: string
          description: The name of the form field
        Label:
          type: string
          description: The label or alternative name of the form field
        ToolTipLabel:
          type: string
          description: The tool tip label of the form field
        IsRequired:
          type: boolean
          description: Is the form field required
    RadioOption:
      allOf:
        - type: object
          description: Parameters for creating a radio button option
          properties:
            Name:
              type: string
              description: The name/choice of the option
            Label:
              type: string
              description: The label or alternative name of the option
            IsSelected:
              type: boolean
              description: Is the option pre-selected
            Location:
              $ref: '#/components/schemas/Element.Location'
            Dimensions:
              $ref: '#/components/schemas/Element.Dimensions'
    SignerActor:
      title: Signer
      allOf:
        - $ref: '#/components/schemas/ActorBase'
        - type: object
          description: Signs one or more signing fields
          properties:
            Type:
              enum:
                - Signer
            Result:
              $ref: '#/components/schemas/SignerActorResult'
            Elements:
              type: array
              description: The actor's elements
              items:
                oneOf:
                  - $ref: '#/components/schemas/SigningField'
            RedirectUrl:
              type: string
              format: url
              description: >
                Url to which the stakeholder is redirected after completing this
                action
            RedirectType:
              type: string
              enum:
                - AfterSession
                - Immediately
                - AfterDelay
                - AfterCompletion
              description: >
                When stakeholder gets redirected after completing this action
                  * afterSession - Redirect after signing session is ended, but before package is completed (only important for last signer).
                  * immediately - Redirect as soon as possible.
                  * afterDelay - Redirect after some delay (defined on frontend).
                  * afterCompletion - Redirect after the package is completed.

                Only valid together with RedirectUrl - the API rejects
                RedirectType without it.
            BackButtonUrl:
              type: string
              format: url
              description: >-
                URL to which the end user is sent after pressing close session
                button
              example: https://homepage.example.test
    ReceiverActor:
      title: Receiver
      allOf:
        - $ref: '#/components/schemas/ActorBase'
        - type: object
          description: Can download a copy of the fully signed document
          properties:
            Type:
              enum:
                - Receiver
    ApproverActor:
      title: Approver
      allOf:
        - $ref: '#/components/schemas/ActorBase'
        - type: object
          description: Determines whether a document is fit for signing
          properties:
            Type:
              enum:
                - Approver
            RedirectUrl:
              type: string
              format: url
              description: >
                Url to which the stakeholder is redirected after completing this
                action, always as soon as possible
            BackButtonUrl:
              type: string
              format: url
              description: >-
                URL to which the end user is sent after pressing close session
                button
              example: https://homepage.example.test
            Result:
              $ref: '#/components/schemas/ApproverActorResult'
    FormFillerActor:
      title: Form filler
      allOf:
        - $ref: '#/components/schemas/ActorBase'
        - type: object
          description: Completes one or more form fields
          properties:
            Type:
              enum:
                - FormFiller
            Elements:
              type: array
              description: The actor's elements
              items:
                oneOf:
                  - $ref: '#/components/schemas/CheckBoxField'
                  - $ref: '#/components/schemas/TextBoxField'
                  - $ref: '#/components/schemas/RadioGroup'
            RedirectUrl:
              type: string
              format: url
              description: >
                Url to which the stakeholder is redirected after completing this
                action
            RedirectType:
              type: string
              enum:
                - AfterSession
                - Immediately
                - AfterDelay
                - AfterCompletion
              description: >
                When stakeholder gets redirected after completing this action
                  * afterSession - Redirect after signing session is ended, but before package is completed (only important for last signer).
                  * immediately - Redirect as soon as possible.
                  * afterDelay - Redirect after some delay (defined on frontend).
                  * afterCompletion - Redirect after the package is completed.

                Only valid together with RedirectUrl - the API rejects
                RedirectType without it.
            BackButtonUrl:
              type: string
              format: url
              description: >-
                URL to which the end user is sent after pressing close session
                button
              example: https://homepage.example.test
            Result:
              $ref: '#/components/schemas/FormFillerActorResult'
    Actor.Type:
      type: string
      description: >-
        The type of action an actor performs on a package, and the discriminator
        across

        the actor variants.


        - **FormFiller** - fills TextBoxField, CheckBoxField and RadioGroup
        elements; does
          not sign or approve. Must be placed in the first process step.
        - **Approver** - approves a document as fit for signing, before any
        signer acts.
          Must be placed in the first process step (may share it with FormFillers).
        - **Signer** - signs one or more signing fields.

        - **Receiver** - receives a copy of the fully signed document; takes no
        action and
          must be placed in the last process step.
      enum:
        - Signer
        - Receiver
        - Approver
        - FormFiller
    ActorBase:
      allOf:
        - type: object
          description: An action to be performed
          additionalProperties: false
          properties:
            Id:
              $ref: '#/components/schemas/Actor.Id'
            Type:
              $ref: '#/components/schemas/Actor.Type'
            Status:
              $ref: '#/components/schemas/Actor.Status'
            SuppressNotifications:
              type: boolean
              default: false
              description: suppress the notifications for this actor
        - type: object
          properties:
            ActionUrls:
              type: array
              items:
                type: object
                description: links to interact with the package for this stakeholder
                properties:
                  Email:
                    type: string
                    format: email
                    description: >-
                      email address of the person stakeholder that will have to
                      perform this action
                  Url:
                    type: string
                    format: url
                    description: >-
                      link to interact with the package for this person
                      stakeholder
                  Type:
                    type: string
                    description: Type of action url
                    enum:
                      - Approver
                      - FormFiller
                      - Signer
                      - Preview
                      - Download
                      - Archive
        - type: object
          properties:
            Links:
              type: array
              description: Only present when the actor's stakeholder is a person.
              items:
                type: string
                format: url
                description: links to interact with the package for this person stakeholder
            MemberLinks:
              type: array
              description: >-
                Only present when the actor's stakeholder is a group or contact
                group.
              items:
                type: object
                description: links to interact with the package for this group stakeholder
                properties:
                  Email:
                    type: string
                    format: email
                    description: >-
                      email address of the member that will have to perform this
                      action
                  Link:
                    type: string
                    format: url
                    description: >-
                      link to interact with the package for this stakeholder
                      member
    SignerActorResult:
      allOf:
        - $ref: '#/components/schemas/ActorResult'
        - type: object
          properties:
            RejectReason:
              type: string
              description: why a signer rejected signing
    ApproverActorResult:
      allOf:
        - $ref: '#/components/schemas/ActorResult'
        - type: object
          properties:
            RejectReason:
              type: string
              description: why an approver rejected the package
    FormFillerActorResult:
      allOf:
        - $ref: '#/components/schemas/ActorResult'
        - type: object
          properties:
            RejectReason:
              type: string
              description: why a form filler rejected the package
    Actor.Status:
      type: string
      description: >-
        The status of an actor's action.


        - **Draft** - the package is still in draft; the action is not yet
        active.

        - **Waiting** - the action is waiting for an earlier process step to
        complete.

        - **Available** - the action is ready to be performed.

        - **InProgress** - the action is being performed.

        - **Failed** - the action failed.

        - **Finished** - the action was completed.

        - **Rejected** - the actor rejected the document.

        - **Skipped** - the action was skipped (for example via skip
        approvers/signers).
      enum:
        - Draft
        - Waiting
        - Available
        - InProgress
        - Failed
        - Finished
        - Rejected
        - Skipped
    ActorResult:
      type: object
      description: The result of a completed action
      properties:
        CompletedBy:
          type: object
          properties:
            Email:
              type: string
              format: email
              example: john@doe.test
            VerifiedName:
              type: string
              nullable: true
              example: John Doe
              description: >-
                The name of a person taken from third party authentication
                services.
        CompletedDate:
          type: string
          format: dateTime
  responses:
    UnAuthorized:
      description: Caller is unauthorized to perform this operation
    NotFound.Package:
      description: Package could not be found
      content:
        application/json:
          schema:
            type: array
            items:
              $ref: '#/components/schemas/PackageNotFoundError'
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >
        Bearer token authentication using JSON Web Tokens (JWT) or opaque
        tokens.


        **Usage**: Send the access token in the Authorization header:

        ```

        Authorization: Bearer <access_token>

        ```

````