{
  "openapi": "3.0.0",
  "info": {
    "title": "Signicat Secure Share API",
    "version": "v1",
    "description": "\n- **Base URL**: `https://api.signicat.com/secure-share/`\n- **Documentation**: See the [Secure Share](/docs/secure-share/) developer documentation.\n- **Support**: [Create a support ticket](https://dashboard.signicat.com/contact-us/tickets/) in the Signicat Dashboard.\n\n# Introduction\n\nThe Secure Share API enables you to securely share files with other people in a programmatic way.\n\nYou can choose among different levels of security, ranging from weaker methods, such as One-Time Passwords (OTPs), to stronger methods, like using electronic IDs (eIDs).\n\nThis REST API uses the OAuth 2.0 protocol for authorisation. All request and response bodies are formatted in JSON.\n\n# Get started\n\nBefore you can start making requests to this API, you need to learn how to connect to it. To do this, see the **Connect to Signicat APIs** [Quick start guide](/docs/connect-to-signicat-apis/quick-start-guide/).\n\n## Audit logs\n\nUse the Signicat **Audit logs** service to see documented evidence of the sequence of activities that have affected a system.\n\n- Access it: **Signicat Dashboard** > **Settings** > [**Audit logs**](https://dashboard.signicat.com/audit)\n- For information generic to all Signicat audit logs, see the general [Audit logs](/docs/audit-logs/) documentation.\n\n## Errors\n\nWhen you make an API call to Signicat and an error occurs, you will receive a response message with an error code.\n\n- For errors generic to all Signicat APIs, see the general [Error codes](/docs/error-codes/) documentation.\n\n## Events (callback)\n\nUse the Signicat **Events** service to automatically receive information about when something happens in one of our services into your system.\n\n- Access it: Go to **Signicat Dashboard** > **Settings** > [**Events**](https://dashboard.signicat.com/events)\n- For information generic to all Signicat events, see the general [Events](/docs/events/) documentation.\n\n> **Note**: This is often referred to as callback.\n",
    "contact": "",
    "license": "",
    "termsOfService": ""
  },
  "servers": [
    {
      "url": "https://api.signicat.com/secure-share"
    }
  ],
  "tags": [
    {
      "name": "Shares",
      "description": "Contains requests related to share objects"
    },
    {
      "name": "Recipients",
      "description": "Contains requests related to recipients"
    },
    {
      "name": "Files",
      "description": "Contains requests related to files"
    }
  ],
  "paths": {
    "/shares": {
      "post": {
        "tags": [
          "Shares"
        ],
        "summary": "Create share",
        "description": "Create a secure share to upload files into",
        "operationId": "CreateShareEndpoint",
        "requestBody": {
          "x-name": "CreateShareDto",
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateShareDto"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "201": {
            "description": "Share created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ShareResponseDto"
                },
                "example": {
                  "id": "30f104cb-d458-4bed-918e-e5722675d501",
                  "title": "Title of the share",
                  "description": "Description of what this share contains",
                  "externalReference": "12b7497f-d426-4c6b-8fbc-f4876867d055",
                  "usageReference": "b69f70fd-a8fd-4ebb-8075-18223c9c9b1c",
                  "recipients": [],
                  "files": [],
                  "expires": "2026-05-20T12:06:52.2707919+00:00",
                  "created": "2026-05-13T12:06:52.2772616+00:00",
                  "contactDetails": {
                    "email": "email@example.com",
                    "name": "name",
                    "mobile": null,
                    "notificationOptions": null
                  },
                  "tags": [
                    "custom-tag",
                    "another-custom-tag"
                  ],
                  "requestDomain": "my-custom-domain",
                  "completedRecipients": 0,
                  "status": "Active",
                  "providerPath": "secure-share"
                }
              }
            }
          },
          "400": {
            "description": "Request validation failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Shares"
        ],
        "summary": "List shares",
        "description": "List shares created by your account using filters",
        "operationId": "ListSharesEndpoint",
        "parameters": [
          {
            "name": "from",
            "in": "query",
            "description": "Starting date for share create time",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            },
            "example": "2026-05-06T12:06:52.28736+00:00"
          },
          {
            "name": "to",
            "in": "query",
            "description": "Ending date for share create time",
            "schema": {
              "type": "string",
              "format": "date-time",
              "nullable": true
            },
            "example": "2026-05-13T12:06:52.2873924+00:00"
          },
          {
            "name": "offset",
            "in": "query",
            "description": "The number of share to skip",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "example": 10
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of fetched shares",
            "schema": {
              "type": "integer",
              "format": "int32",
              "nullable": true
            },
            "example": 50
          },
          {
            "name": "sort",
            "in": "query",
            "description": "Supported fields: `title`, `created`, `expires`",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "example": null
          },
          {
            "name": "search",
            "in": "query",
            "description": "Keywords to search for in the share title",
            "schema": {
              "type": "string",
              "nullable": true
            },
            "example": "important"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PaginatedResultDtoOfShareResponseDto"
                },
                "example": {
                  "limit": 50,
                  "offset": 10,
                  "count": 1,
                  "total": 1,
                  "data": [
                    {
                      "id": "afe58723-4d6b-4983-a287-99a941221463",
                      "title": "Title of the share",
                      "description": "Description of the share",
                      "externalReference": "f13139e5-5eb5-4ab7-a97e-360f3e7a7e36",
                      "usageReference": "db61676e-1ab8-4713-b12b-a868a6528430",
                      "recipients": [
                        {
                          "id": "353fcd5e-650c-4e14-b50f-434ff66a743c",
                          "externalReference": "859a65fa-b29a-4f77-802f-1cbf33e853eb",
                          "firstName": "John",
                          "lastName": "Johnson",
                          "email": "john.johnson@signicat.com",
                          "mobile": "0777777777",
                          "fileAccessInfos": [
                            {
                              "id": "442b6e0a-26ab-4dd8-93b4-f217ebc89894",
                              "lastDownloadedAt": "2026-05-13T12:06:52.2876464+00:00"
                            }
                          ],
                          "fileRestrictions": [
                            "442b6e0a-26ab-4dd8-93b4-f217ebc89894"
                          ],
                          "authentication": [
                            {
                              "identityProvider": "otp-sms",
                              "idpId": null,
                              "nin": null
                            },
                            {
                              "identityProvider": "otp-email",
                              "idpId": null,
                              "nin": null
                            }
                          ],
                          "loggedInTime": "2026-05-13T12:01:52.2876605+00:00",
                          "url": null,
                          "notification": {
                            "sendEmail": true,
                            "sendSms": true,
                            "language": "En"
                          }
                        }
                      ],
                      "files": [
                        {
                          "id": "442b6e0a-26ab-4dd8-93b4-f217ebc89894",
                          "name": "File1",
                          "status": "Success",
                          "size": 1234,
                          "message": null
                        },
                        {
                          "id": "b48cd187-0627-4ad1-989b-345bf7e5a9ce",
                          "name": "File2",
                          "status": "VirusFound",
                          "size": 5023412,
                          "message": "This file contains a malicious script"
                        },
                        {
                          "id": "d86e4b03-8912-4691-acc2-a55b1ad4359c",
                          "name": "File3",
                          "status": "Failed",
                          "size": 5678,
                          "message": "Something went wrong uploading the file"
                        },
                        {
                          "id": "cde7f572-4b68-4d3b-bf1f-3d2a977f6b43",
                          "name": "File4",
                          "status": "Success",
                          "size": 69420,
                          "message": null
                        }
                      ],
                      "expires": "2026-05-20T12:06:52.2876819+00:00",
                      "created": "2026-05-13T12:06:52.2876822+00:00",
                      "contactDetails": {
                        "email": "email@example.com",
                        "name": "John Musk",
                        "mobile": null,
                        "notificationOptions": null
                      },
                      "tags": [
                        "custom-tag"
                      ],
                      "requestDomain": "my-custom-domain",
                      "completedRecipients": 0,
                      "status": "Active",
                      "providerPath": "secure-share"
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "application/problem+json": {
                "schema": {
                  "$ref": "#/components/schemas/SignicatValidationProblemDetails"
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    },
    "/shares/{shareId}": {
      "get": {
        "tags": [
          "Shares"
        ],
        "summary": "Get share",
        "description": "Get a secure share object",
        "operationId": "GetShareEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "04c2f1e1-8fcb-4e46-96f7-f5438c94c7ee"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ShareResponseDto"
                },
                "example": {
                  "id": "dbad7995-5528-472f-8766-7028f0c54dc7",
                  "title": "Title of the share",
                  "description": "Description of the share",
                  "externalReference": "d6a7cfd1-70d7-487b-8fa2-3276b5e15914",
                  "usageReference": "7360b57f-71b5-4b41-9a31-b8a366f8d009",
                  "recipients": [
                    {
                      "id": "3439a463-e80c-4e64-a2bf-c198515f44c8",
                      "externalReference": "fc21323d-b361-4c47-b2c6-eedf91caccf4",
                      "firstName": "John",
                      "lastName": "Johnson",
                      "email": "john.johnson@signicat.com",
                      "mobile": "0777777777",
                      "fileAccessInfos": [
                        {
                          "id": "c5232c75-949e-4eef-b6aa-d1436f803b01",
                          "lastDownloadedAt": "2026-05-13T12:06:52.2808685+00:00"
                        }
                      ],
                      "fileRestrictions": [
                        "c5232c75-949e-4eef-b6aa-d1436f803b01"
                      ],
                      "authentication": [
                        {
                          "identityProvider": "otp-sms",
                          "idpId": null,
                          "nin": null
                        },
                        {
                          "identityProvider": "otp-email",
                          "idpId": null,
                          "nin": null
                        }
                      ],
                      "loggedInTime": "2026-05-13T12:01:52.2849757+00:00",
                      "url": null,
                      "notification": {
                        "sendEmail": true,
                        "sendSms": true,
                        "language": "En"
                      }
                    },
                    {
                      "id": "84bd70c0-fea9-4fd3-8ecf-672efdfb5116",
                      "externalReference": "74998464-d898-40f3-97bc-37dc92da2182",
                      "firstName": "Mark",
                      "lastName": "Markus",
                      "email": "mark.markus@signicat.com",
                      "mobile": "0771234567",
                      "fileAccessInfos": [
                        {
                          "id": "c5232c75-949e-4eef-b6aa-d1436f803b01",
                          "lastDownloadedAt": "2026-05-13T12:06:52.2851606+00:00"
                        },
                        {
                          "id": "d314db76-b3e3-467b-9470-a06a69b02713",
                          "lastDownloadedAt": "2026-05-13T12:06:52.2853154+00:00"
                        }
                      ],
                      "fileRestrictions": null,
                      "authentication": [
                        {
                          "identityProvider": "nbid",
                          "idpId": "1234-5678-7890",
                          "nin": null
                        },
                        {
                          "identityProvider": "mitid",
                          "idpId": null,
                          "nin": "12351246127"
                        }
                      ],
                      "loggedInTime": "2026-05-13T12:01:52.2853228+00:00",
                      "url": null,
                      "notification": {
                        "sendEmail": true,
                        "sendSms": false,
                        "language": "En"
                      }
                    }
                  ],
                  "files": [
                    {
                      "id": "c5232c75-949e-4eef-b6aa-d1436f803b01",
                      "name": "File1",
                      "status": "Success",
                      "size": 1234,
                      "message": null
                    },
                    {
                      "id": "5bff931d-da9a-4a67-bf10-4b2d77ba00eb",
                      "name": "File2",
                      "status": "VirusFound",
                      "size": 5023412,
                      "message": "This file contains a malicious script"
                    },
                    {
                      "id": "c164d8df-edc1-4c29-a3f9-a237e29b0590",
                      "name": "File3",
                      "status": "Failed",
                      "size": 5678,
                      "message": "Something went wrong uploading the file"
                    },
                    {
                      "id": "d314db76-b3e3-467b-9470-a06a69b02713",
                      "name": "File4",
                      "status": "Success",
                      "size": 69420,
                      "message": null
                    }
                  ],
                  "expires": "2026-05-20T12:06:52.28533+00:00",
                  "created": "2026-05-13T12:06:52.2853302+00:00",
                  "contactDetails": {
                    "email": "email@example.com",
                    "name": "John Musk",
                    "mobile": null,
                    "notificationOptions": null
                  },
                  "tags": [
                    "custom-tag"
                  ],
                  "requestDomain": "my-custom-domain",
                  "completedRecipients": 0,
                  "status": "Active",
                  "providerPath": "secure-share"
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Share not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      },
      "delete": {
        "tags": [
          "Shares"
        ],
        "summary": "Delete share",
        "description": "Remove a secure share with all the data in it (recipients/files)",
        "operationId": "HardDeleteShareEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "ac52a051-2a80-42d0-a3e3-72f317ee6582"
          }
        ],
        "responses": {
          "204": {
            "description": "Share deleted successfully"
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Share not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Shares"
        ],
        "summary": "Update share",
        "description": "Update an existing share object",
        "operationId": "Update share",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "4008dda3-facc-4ebd-a70c-935b36aa597a"
          }
        ],
        "requestBody": {
          "x-name": "UpdateShareDto",
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateShareDto"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "201": {
            "description": "Share updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ShareResponseDto"
                },
                "example": {
                  "id": "9db29ccc-4cdd-41c4-bd5e-89d91406e63c",
                  "title": "Title of the share",
                  "description": "Description of what this share contains",
                  "externalReference": "92519ed7-a543-47ee-8c15-f58a49cbd6e7",
                  "usageReference": "17abb224-c35b-4e47-98cf-97d3b00f3f34",
                  "recipients": [],
                  "files": [],
                  "expires": "2026-05-13T12:06:52.2886378+00:00",
                  "created": "2026-05-06T12:06:52.2886378+00:00",
                  "contactDetails": {
                    "email": "email@example.com",
                    "name": "name",
                    "mobile": null,
                    "notificationOptions": null
                  },
                  "tags": [],
                  "requestDomain": null,
                  "completedRecipients": 0,
                  "status": "Active",
                  "providerPath": "secure-share"
                }
              }
            }
          },
          "400": {
            "description": "Request validation failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    },
    "/shares/{shareId}/recipients": {
      "post": {
        "tags": [
          "Recipients"
        ],
        "summary": "Create recipient",
        "description": "Create a recipient and add it to an existing share",
        "operationId": "CreateRecipientEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "The identifier of the share this recipient belongs to",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "69d2ee25-97b0-4fee-aa10-56a25872efee"
          }
        ],
        "requestBody": {
          "x-name": "CreateRecipientDto",
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRecipientDto"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "201": {
            "description": "Recipient created successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecipientDto"
                },
                "example": {
                  "id": "8bafd853-6ecd-48a5-a6dc-90added675e7",
                  "externalReference": "5432ec31-1ba6-4a4a-a572-aca495e42d3c",
                  "firstName": "John",
                  "lastName": "Johnson",
                  "email": "john.johnson@signicat.com",
                  "mobile": "0777777777",
                  "fileAccessInfos": [
                    {
                      "id": "7a893f96-a927-42e6-9650-ccc297a6a450",
                      "lastDownloadedAt": "2026-05-13T12:06:52.2902191+00:00"
                    }
                  ],
                  "fileRestrictions": [
                    "7a893f96-a927-42e6-9650-ccc297a6a450"
                  ],
                  "authentication": [
                    {
                      "identityProvider": "otp-sms",
                      "idpId": null,
                      "nin": null
                    },
                    {
                      "identityProvider": "otp-email",
                      "idpId": null,
                      "nin": null
                    }
                  ],
                  "loggedInTime": "2026-05-13T12:01:52.2902248+00:00",
                  "url": null,
                  "notification": {
                    "sendEmail": true,
                    "sendSms": true,
                    "language": "En"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request validation failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Share not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    },
    "/shares/{shareId}/recipients/{recipientId}": {
      "delete": {
        "tags": [
          "Recipients"
        ],
        "summary": "Delete recipient",
        "description": "Remove a recipient from an existing share",
        "operationId": "DeleteRecipientEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "c9de8f70-a131-4116-ae3d-6f3af0f58e45"
          },
          {
            "name": "recipientId",
            "in": "path",
            "required": true,
            "description": "Unique Recipient identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "a8252a8c-956f-4a88-8a76-5aba5d161f7b"
          }
        ],
        "responses": {
          "204": {
            "description": "Recipient deleted successfully"
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Recipient not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      },
      "get": {
        "tags": [
          "Recipients"
        ],
        "summary": "Get recipient",
        "description": "Get a recipient from an existing share",
        "operationId": "GetRecipientEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "652bd7bb-6d74-44c0-a8cb-e9eed512df32"
          },
          {
            "name": "recipientId",
            "in": "path",
            "required": true,
            "description": "Unique Recipient identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "0dd9a37a-0339-42ff-a7f5-b165692749a6"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecipientDto"
                },
                "example": {
                  "id": "af492316-75ef-48e6-9437-7f773c607701",
                  "externalReference": "1956d588-f1f5-46e4-8ef8-c5f6c23a1b15",
                  "firstName": "John",
                  "lastName": "Johnson",
                  "email": "john.johnson@signicat.com",
                  "mobile": "0777777777",
                  "fileAccessInfos": [
                    {
                      "id": "21673ac9-2df6-43c1-8776-d7340c5e970d",
                      "lastDownloadedAt": "2026-05-13T12:06:52.2918307+00:00"
                    }
                  ],
                  "fileRestrictions": [
                    "21673ac9-2df6-43c1-8776-d7340c5e970d"
                  ],
                  "authentication": [
                    {
                      "identityProvider": "otp-sms",
                      "idpId": null,
                      "nin": null
                    },
                    {
                      "identityProvider": "otp-email",
                      "idpId": null,
                      "nin": null
                    }
                  ],
                  "loggedInTime": "2026-05-13T12:01:52.2918386+00:00",
                  "url": null,
                  "notification": {
                    "sendEmail": true,
                    "sendSms": true,
                    "language": "En"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Recipient not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      },
      "patch": {
        "tags": [
          "Recipients"
        ],
        "summary": "Update recipient",
        "description": "Update a recipient from an existing share",
        "operationId": "UpdateRecipientEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "The identifier of the share this recipient belongs to",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "a4b7e815-dfac-49cc-bacb-5705e733fc13"
          },
          {
            "name": "recipientId",
            "in": "path",
            "required": true,
            "description": "Unique recipient identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "7e8aad81-babe-4e33-9113-4ea04cb0b3f7"
          }
        ],
        "requestBody": {
          "x-name": "UpdateRecipientDto",
          "description": "",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateRecipientDto"
              }
            }
          },
          "required": true,
          "x-position": 1
        },
        "responses": {
          "201": {
            "description": "Share updated successfully",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RecipientDto"
                },
                "example": {
                  "id": "4191e70c-1571-4fe5-94df-16062d1239ff",
                  "externalReference": "38837861-686c-4104-a48f-ffb75cf99398",
                  "firstName": "John",
                  "lastName": "Johnson",
                  "email": "john.johnson@signicat.com",
                  "mobile": "0777777777",
                  "fileAccessInfos": [],
                  "fileRestrictions": [],
                  "authentication": [
                    {
                      "identityProvider": "sbid",
                      "idpId": "5678-1234-3456",
                      "nin": "10234567893"
                    }
                  ],
                  "loggedInTime": "2026-05-13T12:01:52.2937604+00:00",
                  "url": null,
                  "notification": {
                    "sendEmail": true,
                    "sendSms": true,
                    "language": "En"
                  }
                }
              }
            }
          },
          "400": {
            "description": "Request validation failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    },
    "/shares/{shareId}/recipients/{recipientId}/reminder": {
      "get": {
        "tags": [
          "Recipients"
        ],
        "summary": "Remind recipient",
        "description": "Send a reminder notification to a specific recipient",
        "operationId": "ReminderNotificationEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "1517cac3-51e6-4e32-a520-cf6f7dec8262"
          },
          {
            "name": "recipientId",
            "in": "path",
            "required": true,
            "description": "Unique Recipient identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "22928dad-ac05-4d8f-a9b3-ebab8c56fe88"
          }
        ],
        "responses": {
          "204": {
            "description": "Recipient deleted successfully"
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Recipient not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    },
    "/shares/{shareId}/files/{fileId}": {
      "delete": {
        "tags": [
          "Files"
        ],
        "summary": "Delete file",
        "description": "Remove a file from the storage",
        "operationId": "DeleteFileEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "21bd03cd-2a56-4ffb-a702-378b902f8129"
          },
          {
            "name": "fileId",
            "in": "path",
            "required": true,
            "description": "Unique File identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "0aa47bcb-e525-4363-acca-19ee75c97e5b"
          }
        ],
        "responses": {
          "204": {
            "description": "File deleted successfully"
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "File not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    },
    "/shares/{shareId}/files": {
      "post": {
        "tags": [
          "Files"
        ],
        "summary": "Upload file",
        "description": "Upload a file(s) using multipart/form-data request body",
        "operationId": "UploadFileEndpoint",
        "parameters": [
          {
            "name": "shareId",
            "in": "path",
            "required": true,
            "description": "Unique Share identifier",
            "schema": {
              "type": "string",
              "format": "guid"
            },
            "example": "2576df5d-cc63-4b07-80af-4da7efcb7b77"
          }
        ],
        "responses": {
          "200": {
            "description": "Success",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UploadFileDto"
                  }
                },
                "example": [
                  {
                    "id": "2179155e-27fd-42db-a118-7a4cbb84ca15",
                    "name": "File1",
                    "status": "Success",
                    "size": 1234,
                    "message": null
                  },
                  {
                    "id": "0e010c1f-3e03-4b62-bdb5-f5312ac730f5",
                    "name": "File2",
                    "status": "VirusFound",
                    "size": 5023412,
                    "message": "This file contains a malicious script"
                  },
                  {
                    "id": "0ff003d3-f63f-4895-9a8c-63d1c31490e2",
                    "name": "File3",
                    "status": "Failed",
                    "size": 5678,
                    "message": "Something went wrong uploading the file"
                  },
                  {
                    "id": "a92daf37-a240-4b18-96dc-4830060bb1cb",
                    "name": "File4",
                    "status": "Success",
                    "size": 69420,
                    "message": null
                  }
                ]
              }
            }
          },
          "401": {
            "description": "Authentication failed",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          },
          "404": {
            "description": "Share not found"
          },
          "500": {
            "description": "Internal server error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProblemDetails"
                },
                "example": {
                  "type": null,
                  "title": null,
                  "status": null,
                  "detail": null,
                  "instance": null
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "ShareResponseDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string",
            "format": "guid"
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "description": {
            "type": "string",
            "nullable": true
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "usageReference": {
            "type": "string",
            "nullable": true
          },
          "recipients": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/RecipientDto"
            }
          },
          "files": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/UploadFileDto"
            }
          },
          "expires": {
            "type": "string",
            "format": "date-time"
          },
          "created": {
            "type": "string",
            "format": "date-time"
          },
          "contactDetails": {
            "$ref": "#/components/schemas/ContactDetailsDto"
          },
          "tags": {
            "type": "array",
            "nullable": true,
            "items": {
              "type": "string"
            }
          },
          "requestDomain": {
            "type": "string",
            "nullable": true
          },
          "completedRecipients": {
            "type": "integer",
            "format": "int32"
          },
          "status": {
            "$ref": "#/components/schemas/ShareStatus"
          },
          "providerPath": {
            "type": "string"
          }
        }
      },
      "RecipientDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string",
            "format": "guid"
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          },
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "nullable": true
          },
          "mobile": {
            "type": "string",
            "nullable": true
          },
          "fileAccessInfos": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/FileAccessInfosDto"
            }
          },
          "fileRestrictions": {
            "type": "array",
            "nullable": true,
            "items": {
              "type": "string",
              "format": "guid"
            }
          },
          "authentication": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/AuthenticationDto"
            }
          },
          "loggedInTime": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          },
          "url": {
            "type": "string",
            "nullable": true
          },
          "notification": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/NotificationDto"
              }
            ]
          }
        }
      },
      "FileAccessInfosDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string",
            "format": "guid"
          },
          "lastDownloadedAt": {
            "type": "string",
            "format": "date-time",
            "nullable": true
          }
        }
      },
      "AuthenticationDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "identityProvider": {
            "type": "string"
          },
          "idpId": {
            "type": "string",
            "nullable": true
          },
          "nin": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "NotificationDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "sendEmail": {
            "type": "boolean"
          },
          "sendSms": {
            "type": "boolean"
          },
          "language": {
            "$ref": "#/components/schemas/Language"
          }
        }
      },
      "Language": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "En",
          "No",
          "Fi",
          "De",
          "Fr",
          "Nl",
          "Da",
          "Sv"
        ],
        "enum": [
          "En",
          "No",
          "Fi",
          "De",
          "Fr",
          "Nl",
          "Da",
          "Sv"
        ]
      },
      "UploadFileDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "id": {
            "type": "string",
            "format": "guid"
          },
          "name": {
            "type": "string"
          },
          "status": {
            "$ref": "#/components/schemas/FileStatus"
          },
          "size": {
            "type": "integer",
            "format": "int64"
          },
          "message": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "FileStatus": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "Pending",
          "UploadedToQuarantine",
          "Scanning",
          "Success",
          "Failed",
          "VirusFound",
          "Skipped"
        ],
        "enum": [
          "Pending",
          "UploadedToQuarantine",
          "Scanning",
          "Success",
          "Failed",
          "VirusFound",
          "Skipped"
        ]
      },
      "ContactDetailsDto": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "email"
        ],
        "properties": {
          "email": {
            "type": "string",
            "format": "email",
            "minLength": 1,
            "pattern": "^[^@]+@[^@]+$",
            "nullable": false
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "mobile": {
            "type": "string",
            "nullable": true
          },
          "notificationOptions": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/SenderNotificationDto"
              }
            ]
          }
        }
      },
      "SenderNotificationDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "sendEmail": {
            "type": "boolean"
          },
          "sendSms": {
            "type": "boolean"
          }
        }
      },
      "ShareStatus": {
        "type": "string",
        "description": "",
        "x-enumNames": [
          "Active",
          "Expired",
          "Completed",
          "Empty"
        ],
        "enum": [
          "Active",
          "Expired",
          "Completed",
          "Empty"
        ]
      },
      "ProblemDetails": {
        "type": "object",
        "additionalProperties": {
          "nullable": true
        },
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "CreateShareDto": {
        "type": "object",
        "example": {
          "title": "Title of the share",
          "description": "Description of what this share contains",
          "externalReference": "12b7497f-d426-4c6b-8fbc-f4876867d055",
          "usageReference": "b69f70fd-a8fd-4ebb-8075-18223c9c9b1c",
          "recipients": [],
          "contactDetails": {
            "email": "email@example.com",
            "name": "name",
            "mobile": null,
            "notificationOptions": null
          },
          "tags": [
            "custom-tag",
            "another-custom-tag"
          ],
          "expires": "2026-05-20T12:06:52.2707919+00:00",
          "requestDomain": "my-custom-domain"
        },
        "additionalProperties": false,
        "required": [
          "contactDetails"
        ],
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the share",
            "nullable": true,
            "example": "Title of the share"
          },
          "description": {
            "type": "string",
            "description": "Description of what this share contains",
            "nullable": true,
            "example": "Description of what this share contains"
          },
          "externalReference": {
            "type": "string",
            "description": "Create a reference to your own system, this value is also used for binding billing events",
            "nullable": true,
            "example": "12b7497f-d426-4c6b-8fbc-f4876867d055"
          },
          "usageReference": {
            "type": "string",
            "nullable": true,
            "example": "b69f70fd-a8fd-4ebb-8075-18223c9c9b1c"
          },
          "recipients": {
            "type": "array",
            "description": "A list of recipients for this share, we recommend to add them later after you add the files",
            "example": [],
            "items": {
              "$ref": "#/components/schemas/CreateShareRecipientDto"
            }
          },
          "contactDetails": {
            "description": "Sender contact details that the recipients can see after they authenticate",
            "nullable": false,
            "example": {
              "email": "email@example.com",
              "name": "name",
              "mobile": null,
              "notificationOptions": null
            },
            "$ref": "#/components/schemas/ContactDetailsDto"
          },
          "tags": {
            "type": "array",
            "description": "Keywords you can use for filtering your shares",
            "nullable": true,
            "example": [
              "custom-tag",
              "another-custom-tag"
            ],
            "items": {
              "type": "string"
            }
          },
          "expires": {
            "type": "string",
            "description": "Expire date for this share, after that you and your recipients can't access the share anymore",
            "format": "date-time",
            "nullable": true,
            "example": "2026-05-20T12:06:52.2707919+00:00"
          },
          "requestDomain": {
            "type": "string",
            "description": "This specifies the domain you want to use for this specific session. The domain will be visible in the end-user's browser. This domain needs to be correctly configured on your account!",
            "nullable": true,
            "example": "my-custom-domain"
          }
        }
      },
      "CreateShareRecipientDto": {
        "type": "object",
        "additionalProperties": false,
        "required": [
          "authentication"
        ],
        "properties": {
          "firstName": {
            "type": "string",
            "nullable": true
          },
          "lastName": {
            "type": "string",
            "nullable": true
          },
          "email": {
            "type": "string",
            "format": "email",
            "pattern": "^[^@]+@[^@]+$",
            "nullable": true
          },
          "mobile": {
            "type": "string",
            "nullable": true
          },
          "authentication": {
            "type": "array",
            "minLength": 1,
            "nullable": false,
            "items": {
              "$ref": "#/components/schemas/AuthenticationDto"
            }
          },
          "notification": {
            "$ref": "#/components/schemas/NotificationDto"
          },
          "externalReference": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "GetShareRequest": {
        "type": "object",
        "additionalProperties": false
      },
      "HardDeleteShareRequest": {
        "type": "object",
        "additionalProperties": false
      },
      "PaginatedResultDtoOfShareResponseDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "limit": {
            "type": "integer",
            "format": "int32"
          },
          "offset": {
            "type": "integer",
            "format": "int32"
          },
          "count": {
            "type": "integer",
            "format": "int32"
          },
          "total": {
            "type": "integer",
            "format": "int64"
          },
          "data": {
            "type": "array",
            "nullable": true,
            "items": {
              "$ref": "#/components/schemas/ShareResponseDto"
            }
          }
        }
      },
      "SignicatValidationProblemDetails": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          },
          "code": {
            "type": "string",
            "nullable": true
          },
          "invalidParams": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/InvalidParam"
            }
          }
        }
      },
      "InvalidParam": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "name": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        }
      },
      "ListQueryDto": {
        "type": "object",
        "additionalProperties": false
      },
      "UpdateShareDto": {
        "type": "object",
        "example": {
          "title": "Title of the share",
          "description": "Description of what this share contains",
          "contactDetails": {
            "email": "email@example.com",
            "name": "name",
            "mobile": null,
            "notificationOptions": null
          },
          "expires": "2026-05-13T12:06:52.2886378+00:00"
        },
        "additionalProperties": false,
        "properties": {
          "title": {
            "type": "string",
            "description": "Title of the share",
            "nullable": true,
            "example": "Title of the share"
          },
          "description": {
            "type": "string",
            "description": "Description of what this share contains",
            "nullable": true,
            "example": "Description of what this share contains"
          },
          "contactDetails": {
            "nullable": true,
            "example": {
              "email": "email@example.com",
              "name": "name",
              "mobile": null,
              "notificationOptions": null
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/UpdateContactDetailsDto"
              }
            ]
          },
          "expires": {
            "type": "string",
            "description": "Expire date for this share, after that you and your recipients can't access the share anymore",
            "format": "date-time",
            "nullable": true,
            "example": "2026-05-13T12:06:52.2886378+00:00"
          }
        }
      },
      "UpdateContactDetailsDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "email": {
            "type": "string",
            "format": "email",
            "pattern": "^[^@]+@[^@]+$",
            "nullable": true
          },
          "name": {
            "type": "string",
            "nullable": true
          },
          "mobile": {
            "type": "string",
            "nullable": true
          },
          "notificationOptions": {
            "nullable": true,
            "oneOf": [
              {
                "$ref": "#/components/schemas/SenderNotificationDto"
              }
            ]
          }
        }
      },
      "CreateRecipientDto": {
        "type": "object",
        "example": {
          "firstName": "John",
          "lastName": "Johnson",
          "email": "john.johnson@signicat.com",
          "mobile": "+4771234567",
          "fileRestrictions": [],
          "authentication": [
            {
              "identityProvider": "nbid",
              "idpId": "1234-3456-5678",
              "nin": "12345678901"
            }
          ],
          "notification": {
            "sendEmail": true,
            "sendSms": true,
            "language": "En"
          },
          "externalReference": "5f578586-7c35-4afc-a5ca-bd67205c5f93"
        },
        "additionalProperties": false,
        "required": [
          "authentication"
        ],
        "properties": {
          "firstName": {
            "type": "string",
            "description": "Recipient first name",
            "nullable": true,
            "example": "John"
          },
          "lastName": {
            "type": "string",
            "description": "Recipient last name",
            "nullable": true,
            "example": "Johnson"
          },
          "email": {
            "type": "string",
            "description": "Recipient email. Email is required if mobile is not provided or if it used by authentications or notifications",
            "format": "email",
            "pattern": "^[^@]+@[^@]+$",
            "nullable": true,
            "example": "john.johnson@signicat.com"
          },
          "mobile": {
            "type": "string",
            "description": "Recipient mobile. Mobile is required if email is not provided or if it used by authentications or notifications",
            "nullable": true,
            "example": "+4771234567"
          },
          "fileRestrictions": {
            "type": "array",
            "description": "A list of file ids that this recipient has access to, if empty, this recipient will have access to all the file from the share",
            "nullable": true,
            "example": [],
            "items": {
              "type": "string",
              "format": "guid"
            }
          },
          "authentication": {
            "type": "array",
            "description": "List of authentication methods for a recipient",
            "minLength": 1,
            "nullable": false,
            "example": [
              {
                "identityProvider": "nbid",
                "idpId": "1234-3456-5678",
                "nin": "12345678901"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AuthenticationDto"
            }
          },
          "notification": {
            "description": "Recipient notification setup",
            "nullable": true,
            "example": {
              "sendEmail": true,
              "sendSms": true,
              "language": "En"
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/NotificationDto"
              }
            ]
          },
          "externalReference": {
            "type": "string",
            "description": "Create a reference to your own system",
            "nullable": true,
            "example": "5f578586-7c35-4afc-a5ca-bd67205c5f93"
          }
        }
      },
      "DeleteRecipientRequest": {
        "type": "object",
        "additionalProperties": false
      },
      "GetRecipientRequest": {
        "type": "object",
        "additionalProperties": false
      },
      "ReminderNotificationRequest": {
        "type": "object",
        "additionalProperties": false
      },
      "UpdateRecipientDto": {
        "type": "object",
        "example": {
          "firstName": "John",
          "lastName": "Johnson",
          "email": "john.johnson@signicat.com",
          "mobile": "+4771234567",
          "externalReference": "691add78-a84f-41f1-b742-2292ed9d906c",
          "fileRestrictions": [],
          "authentication": [
            {
              "identityProvider": "sbid",
              "idpId": "5678-1234-3456",
              "nin": "10234567893"
            }
          ],
          "notification": {
            "sendEmail": true,
            "sensSms": true,
            "language": null
          }
        },
        "additionalProperties": false,
        "properties": {
          "firstName": {
            "type": "string",
            "description": "Recipient first name",
            "nullable": true,
            "example": "John"
          },
          "lastName": {
            "type": "string",
            "description": "Recipient last name",
            "nullable": true,
            "example": "Johnson"
          },
          "email": {
            "type": "string",
            "description": "Recipient email",
            "format": "email",
            "pattern": "^[^@]+@[^@]+$",
            "nullable": true,
            "example": "john.johnson@signicat.com"
          },
          "mobile": {
            "type": "string",
            "description": "Recipient mobile",
            "nullable": true,
            "example": "+4771234567"
          },
          "externalReference": {
            "type": "string",
            "description": "Create a reference to your own system",
            "nullable": true,
            "example": "691add78-a84f-41f1-b742-2292ed9d906c"
          },
          "fileRestrictions": {
            "type": "array",
            "description": "A list of file ids that this recipient has access to, if empty, this recipient will have access to all the file from the share",
            "nullable": true,
            "example": [],
            "items": {
              "type": "string",
              "format": "guid"
            }
          },
          "authentication": {
            "type": "array",
            "description": "List of authentication methods for a recipient",
            "nullable": true,
            "example": [
              {
                "identityProvider": "sbid",
                "idpId": "5678-1234-3456",
                "nin": "10234567893"
              }
            ],
            "items": {
              "$ref": "#/components/schemas/AuthenticationDto"
            }
          },
          "notification": {
            "description": "Recipient notification setup",
            "nullable": true,
            "example": {
              "sendEmail": true,
              "sensSms": true,
              "language": null
            },
            "oneOf": [
              {
                "$ref": "#/components/schemas/UpdateNotificationDto"
              }
            ]
          }
        }
      },
      "UpdateNotificationDto": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "sendEmail": {
            "type": "boolean"
          },
          "sensSms": {
            "type": "boolean"
          },
          "language": {
            "type": "string",
            "nullable": true
          }
        }
      },
      "DeleteFileRequest": {
        "type": "object",
        "additionalProperties": false
      },
      "UploadFileRequest": {
        "type": "object",
        "additionalProperties": false
      }
    },
    "securitySchemes": {
      "JWTBearerAuth": {
        "type": "http",
        "description": "Enter a JWT token to authorize the requests...",
        "scheme": "Bearer",
        "bearerFormat": "JWT"
      }
    }
  },
  "x-generator": "NSwag v14.6.3.0 (NJsonSchema v11.5.2.0 (Newtonsoft.Json v13.0.0.0))"
}