Skip to main content

3S Gateway API (v0)

Download OpenAPI specification:Download

manage-controller

Set API Key status

Sets the API Key status for the specified token.

  • true — activates the API Key
  • false — deactivates the API Key
query Parameters
id
required
integer <int32>
Example: id=1

API Key ID number

status
required
boolean
Example: status=true

API Key status: true to activate, false to deactivate

Responses

Refresh API Key

Refresh new API Key with new dates

query Parameters
company
required
string
Example: company=2474a9fc-29c5-47fd-af51-9e97c4df4219

CompanyID

id
required
integer <int32>
Example: id=23

API Key ID

Responses

Set API Key date

Sets the API Key date for the specified token.

query Parameters
id
required
integer <int32>
Example: id=1

API Key ID number

field
required
string
Example: field=startDate

API Key date field: startDate | ExpireDate

date
required
string
Example: date=16.10.2025

API Key date

Responses

Update company

Update company data

Request Body schema: application/json
required
id
integer <int32>
Example: "12"
companyName
string
Example: "Company Name"
registrationNumber
string
Example: "43603066828"
taxId
string
Example: "LV43603066828"
email
string
Example: "user.company@server.com"
fullName
string
Example: "User Name"
phone
string
Example: "26543212"
registrationCountry
string
Example: "Latvia"
address
string
Example: "Street name str. 12-44"
city
string
Example: "Riga"
zip
string
Example: "LV-1001"
activeProfile
string
Example: "Company Name"
pricingPlan
string
Example: "Entry"

Responses

Request samples

Content type
application/json
{
  • "id": 12,
  • "companyName": "Company Name",
  • "registrationNumber": 43603066828,
  • "taxId": "LV43603066828",
  • "email": "user.company@server.com",
  • "fullName": "User Name",
  • "phone": 26543212,
  • "registrationCountry": "Latvia",
  • "address": "Street name str. 12-44",
  • "city": "Riga",
  • "zip": "LV-1001",
  • "activeProfile": "Company Name",
  • "pricingPlan": "Entry"
}

Upload certificate

Set company certificate

path Parameters
company
required
string
Example: TrustLynx

Company name

Request Body schema: multipart/form-data
file
required
string <binary>

Responses

Create company test certificate

Return new test company certificate

Request Body schema: multipart/form-data
csr
required
string <binary>

Responses

Upload sign file

Set sign csr file for company

path Parameters
company
required
string
Example: TrustLynx

Company name

Request Body schema: multipart/form-data
file
required
string <binary>

Responses

Upload auth csr file

Set auth csr file for company

path Parameters
company
required
string
Example: TrustLynx

Company name

Request Body schema: multipart/form-data
file
required
string <binary>

Responses

Search companies by partial name

Returns a list of company names that contain the specified substring. The search is case-insensitive and can be used for autocomplete or company lookup features.

query Parameters
companyName
required
string
Example: companyName=trus

Partial or full company name to search for

Responses

Response samples

Content type
application/json
"string"

Get company by company name

Get company info

path Parameters
company
required
string
Example: TrustLynx

Company name

Responses

Set certificate status

Sets the certificate status for the specified company.

  • true — activates the certificate (initiates the signing process)
  • false — deactivates the certificate (terminates or disables the certificate)
path Parameters
company
required
string
Example: TrustLynx

Company name

status
required
boolean
Example: true

Certificate status: true to activate, false to deactivate

Responses

Get signed document count by month

Returns the number of documents signed by the company during the specified month. The month parameter must be provided in the format "Month YYYY", for example, "November 2025". This endpoint is used to display monthly signing statistics in the management dashboard.

query Parameters
companyName
required
string
Example: companyName=Acme Corp

The name of the company for which to retrieve the signed document count. The search is case-insensitive and can be full.

month
required
string
Example: month=November 2025

Month and year for which to retrieve the signed document count. Format: 'Month YYYY' (e.g., 'November 2025').

Responses

Response samples

Content type
application/json
"string"

Delete company by ID

Delete by company ID

path Parameters
id
required
string <uuid>
Example: 5

Company ID

Responses

Response samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "company": {
    • "id": 1,
    • "companyName": "Company Name",
    • "taxId": "LV40003012345",
    • "registrationNumber": 1234567890,
    • "email": "test@domain.com",
    • "fullName": "Name Surname",
    • "phone": "+37122912321",
    • "registrationCountry": "Latvia",
    • "address": "Street Name 15",
    • "city": "Riga",
    • "zip": "LV-1035",
    • "activeProfile": "DEMOCOMPANY",
    • "certificateType": "QUALIFIED",
    • "pricingPlan": "Entry",
    • "haveCertificate": false,
    • "secret": ":]f>G3&by@",
    • "previousMonth": "October",
    • "currentMonth": "November",
    • "signingCountPreviousMonth": 25,
    • "signingCountCurrentMonth": 7,
    • "certificateStartDate": "15.10.2025",
    • "certificateExpireDate": "15.10.2026",
    • "certificateUploaded": true
    },
  • "profiles": [
    • {
      • "id": 1,
      • "profileName": "DEMOCOMPANY",
      • "tokenId": "DEMOCOMPANY_TOKEN",
      • "pdfSigningSigner": "string"
      }
    ],
  • "storedDocuments": {
    • "confirmationDocument": "string",
    • "authorizedDocument": "string",
    • "companyLogo": "string",
    • "certificate": "string",
    • "authCsr": "string",
    • "signCsr": "string"
    }
}

Delete API Key

Delete API Key

query Parameters
company
required
string
Example: company=2474a9fc-29c5-47fd-af51-9e97c4df4219

CompanyID

id
required
integer <int32>
Example: id=23

API Key ID

Responses

registration-controller

Complete process of registration a new company

Registers a new company in the system

Request Body schema: application/json
required

Details of the verification data

sessionId
string
Example: "be945409-864b-4ba8-8b88-76bf9827af20"
code
string
Example: "348774"

Responses

Request samples

Content type
application/json
{
  • "sessionId": "be945409-864b-4ba8-8b88-76bf9827af20",
  • "code": 348774
}

Resend verification code

Resends the verification code to the user for completing the registration process

Request Body schema: application/json
required
sessionId
string
Example: "be945409-864b-4ba8-8b88-76bf9827af20"
code
string
Example: "348774"

Responses

Request samples

Content type
application/json
{
  • "sessionId": "be945409-864b-4ba8-8b88-76bf9827af20",
  • "code": 348774
}

Start process of registration a new company

Start registers a new company in the system

Request Body schema: application/json
required

Details of the company to be registered

fullName
string
Example: "Name Surname"
companyName
string
Example: "Company Name"
taxId
string
Example: "LV40003012345"
registrationNumber
string
Example: "1234567890"
address
string
Example: "Street Name 15"
city
string
Example: "Riga"
zip
string
Example: "LV-1035"
registrationCountry
string
Example: "Latvia"
email
string
Example: "test@domain.com"
phone
string
Example: "+37129123345"
certificateType
string
Enum: "QUALIFIED" "TRUSTLYNX"
Example: "QUALIFIED"
pricingPlan
string
Enum: "ENTRY" "COMPANY" "ENTERPRISE"
Example: "Entry"

Responses

Request samples

Content type
application/json
{
  • "fullName": "Name Surname",
  • "companyName": "Company Name",
  • "taxId": "LV40003012345",
  • "registrationNumber": 1234567890,
  • "address": "Street Name 15",
  • "city": "Riga",
  • "zip": "LV-1035",
  • "registrationCountry": "Latvia",
  • "email": "test@domain.com",
  • "phone": "+37129123345",
  • "certificateType": "QUALIFIED",
  • "pricingPlan": "Entry"
}

Response samples

Content type
application/json
{
  • "sessionId": "be945409-864b-4ba8-8b88-76bf9827af20",
  • "userEmail": "<name>@domain.com"
}

certificate-controller

Initiate certificate application form signing

Starts the signing process for the certificate application form

Request Body schema: multipart/form-data
required

Details of the certificate form

certificateName
string
Example: "Certificate"

Name of the certificate

serialNumber
string
Example: "SN123456789"

Certificate serial number

organizationName
string
Example: "TrustLynx Ltd."

Organization name

department
string
Example: "IT Department"

Department

country
string
Example: "Latvia"

Country of the organization

email
string
Example: "info@trustlynx.com"

Organization email

keySize
string
Example: "2048"

Key size for the certificate

validity
integer <int32>
Example: "365"

Validity period of the certificate in days

authorizedPersonName
string
Example: "John"

Authorized person's name

authorizedPersonSurname
string
Example: "Doe"

Authorized person's surname

authorizedPersonPersonalIdentificationNumber
string
Example: "010190-12345"

Authorized person's personal identification number

authorizedPersonPhone
string
Example: "+37129123456"

Authorized person's phone number

authorizedPersonEmail
string
Example: "john.doe@trustlynx.com"

Authorized person's email

authorizedPerson
boolean
Example: "true"

Is the person authorized?

authorizedDocument
string <binary>

Document proving authority of the signer

companyLogo
string <binary>

Company logo which will be add to the document

receiveOfficialInfo
boolean
Example: "true"

Is the receive official information about this eSea?

contactPersonName
string
Example: "Jane"

Contact person's name

contactPersonSurname
string
Example: "Smith"

Contact person's surname

contactPersonPersonalIdentificationNumber
string
Example: "020290-54321"

Contact person's personal identification number

contactPersonJobTitle
string
Example: "Account Manager"

Contact person's job title

contactPersonPhone
string
Example: "+37129567890"

Contact person's phone number

contactPersonEmail
string
Example: "jane.smith@trustlynx.com"

Contact person's email

organizationPhone
string
Example: "+37167000001"

Organization phone number

address
string
Example: "Street 1"

Organization address

city
string
Example: "Riga"

City of the organization

zip
string
Example: "LV-1010"

ZIP code

organizationEmail
string
Example: "contact@trustlynx.com"

Organization general email

productPersonName
string
Example: "Alice"

Product person’s name

productPersonSurname
string
Example: "Brown"

Product person’s surname

productPersonalIdentificationNumber
string
Example: "030390-78901"

Product person’s personal identification number

productPersonPhone
string
Example: "+37129998877"

Product person’s phone number

productPersonEmail
string
Example: "alice.brown@trustlynx.com"

Product person’s email

additionalInfo
string
Example: "Urgent processing required"

Additional information

confirmationDocument
string <binary>

Confirmation document

Responses

sign-controller

Sign document by UUID Key

E-Seal document from request. For visual signature specify 'pdfSigningSigner' parameter value according to pdfSigningSigner schema.

Request Body schema: multipart/form-data
file
required
Array of strings <binary> [ items <binary > ]
visualization
required
string

Responses

Sign document by API Key

E-Seal document from request.

path Parameters
profile
required
string
Example: TrustLynx

Company profile

Request Body schema: multipart/form-data
file
required
Array of strings <binary> [ items <binary > ]
visualization
required
string

Responses

Response samples

Content type
application/json
{
  • "code": 404,
  • "message": "API Key not found"
}

profile-controller

Create/Edit a new profile

Registers a profile in the system

Request Body schema: application/json
required

Details of the profile to be registered

uuid
string
Example: "cca7e202-78c6-4899-a0e3-66ec7ce3d5be"
id
integer <int32>
Example: "1"
profileName
string
Example: "Profile Name"
tokenId
string
Example: "Token Name"
signObject
string
Example: "{\\n \\\"signatureLocation\\\": \\\"Tallinn, Estonia\\\",\\n \\\"signatureReason\\\": \\\"Approve\\\", ....."

Responses

Request samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "id": 1,
  • "profileName": "Profile Name",
  • "tokenId": "Token Name",
  • "signObject": "{\\n \\\"signatureLocation\\\": \\\"Tallinn, Estonia\\\",\\n \\\"signatureReason\\\": \\\"Approve\\\", ....."
}

Response samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "company": {
    • "id": 1,
    • "companyName": "Company Name",
    • "taxId": "LV40003012345",
    • "registrationNumber": 1234567890,
    • "email": "test@domain.com",
    • "fullName": "Name Surname",
    • "phone": "+37122912321",
    • "registrationCountry": "Latvia",
    • "address": "Street Name 15",
    • "city": "Riga",
    • "zip": "LV-1035",
    • "activeProfile": "DEMOCOMPANY",
    • "certificateType": "QUALIFIED",
    • "pricingPlan": "Entry",
    • "haveCertificate": false,
    • "secret": ":]f>G3&by@",
    • "previousMonth": "October",
    • "currentMonth": "November",
    • "signingCountPreviousMonth": 25,
    • "signingCountCurrentMonth": 7,
    • "certificateStartDate": "15.10.2025",
    • "certificateExpireDate": "15.10.2026",
    • "certificateUploaded": true
    },
  • "profiles": [
    • {
      • "id": 1,
      • "profileName": "DEMOCOMPANY",
      • "tokenId": "DEMOCOMPANY_TOKEN",
      • "pdfSigningSigner": "string"
      }
    ],
  • "storedDocuments": {
    • "confirmationDocument": "string",
    • "authorizedDocument": "string",
    • "companyLogo": "string",
    • "certificate": "string",
    • "authCsr": "string",
    • "signCsr": "string"
    }
}

Update profile name

Update profile name in the system

Request Body schema: application/json
required

Details of the profile to be registered

uuid
string
Example: "cca7e202-78c6-4899-a0e3-66ec7ce3d5be"
profileName
string
Example: "Profile Name"

Responses

Request samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "profileName": "Profile Name"
}

Response samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "company": {
    • "id": 1,
    • "companyName": "Company Name",
    • "taxId": "LV40003012345",
    • "registrationNumber": 1234567890,
    • "email": "test@domain.com",
    • "fullName": "Name Surname",
    • "phone": "+37122912321",
    • "registrationCountry": "Latvia",
    • "address": "Street Name 15",
    • "city": "Riga",
    • "zip": "LV-1035",
    • "activeProfile": "DEMOCOMPANY",
    • "certificateType": "QUALIFIED",
    • "pricingPlan": "Entry",
    • "haveCertificate": false,
    • "secret": ":]f>G3&by@",
    • "previousMonth": "October",
    • "currentMonth": "November",
    • "signingCountPreviousMonth": 25,
    • "signingCountCurrentMonth": 7,
    • "certificateStartDate": "15.10.2025",
    • "certificateExpireDate": "15.10.2026",
    • "certificateUploaded": true
    },
  • "profiles": [
    • {
      • "id": 1,
      • "profileName": "DEMOCOMPANY",
      • "tokenId": "DEMOCOMPANY_TOKEN",
      • "pdfSigningSigner": "string"
      }
    ],
  • "storedDocuments": {
    • "confirmationDocument": "string",
    • "authorizedDocument": "string",
    • "companyLogo": "string",
    • "certificate": "string",
    • "authCsr": "string",
    • "signCsr": "string"
    }
}

demo-user-controller

Start process of verification a demo user

Start verification a new demo user data in the system

Request Body schema: application/json
required

Verification details of the demo user

token
string
Example: "bYpPFCekjO"

Responses

Request samples

Content type
application/json
{
  • "token": "bYpPFCekjO"
}

Response samples

Content type
application/json
{
  • "sessionId": "be945409-864b-4ba8-8b88-76bf9827af20",
  • "userEmail": "<name>@domain.com"
}

Demo Sign document

E-Seal document from request. Used Demo schema

Request Body schema: multipart/form-data
file
required
string <binary>
token
required
string

Responses

Start process of registration a demo user

Start registers a new demo user in the system

Request Body schema: application/json
required

Details of the demo user to be registered

email
string
Example: "test@domain.com"

Responses

Request samples

Content type
application/json
{
  • "email": "test@domain.com"
}

Response samples

Content type
application/json
{
  • "sessionId": "be945409-864b-4ba8-8b88-76bf9827af20",
  • "userEmail": "<name>@domain.com"
}

esealing-controller

Request company deletion

Submits a request for deleting a company profile

Request Body schema: application/json
required
companyName
string
Example: "Company Name"
userName
string
Example: "User Name"
email
string
Example: "user.company@server.com"

Responses

Request samples

Content type
application/json
{
  • "companyName": "Company Name",
  • "userName": "User Name",
  • "email": "user.company@server.com"
}

Response samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "company": {
    • "id": 1,
    • "companyName": "Company Name",
    • "taxId": "LV40003012345",
    • "registrationNumber": 1234567890,
    • "email": "test@domain.com",
    • "fullName": "Name Surname",
    • "phone": "+37122912321",
    • "registrationCountry": "Latvia",
    • "address": "Street Name 15",
    • "city": "Riga",
    • "zip": "LV-1035",
    • "activeProfile": "DEMOCOMPANY",
    • "certificateType": "QUALIFIED",
    • "pricingPlan": "Entry",
    • "haveCertificate": false,
    • "secret": ":]f>G3&by@",
    • "previousMonth": "October",
    • "currentMonth": "November",
    • "signingCountPreviousMonth": 25,
    • "signingCountCurrentMonth": 7,
    • "certificateStartDate": "15.10.2025",
    • "certificateExpireDate": "15.10.2026",
    • "certificateUploaded": true
    },
  • "profiles": [
    • {
      • "id": 1,
      • "profileName": "DEMOCOMPANY",
      • "tokenId": "DEMOCOMPANY_TOKEN",
      • "pdfSigningSigner": "string"
      }
    ],
  • "storedDocuments": {
    • "confirmationDocument": "string",
    • "authorizedDocument": "string",
    • "companyLogo": "string",
    • "certificate": "string",
    • "authCsr": "string",
    • "signCsr": "string"
    }
}

Find company by authentication data

Find by user data

Responses

Response samples

Content type
application/json
{
  • "uuid": "cca7e202-78c6-4899-a0e3-66ec7ce3d5be",
  • "company": {
    • "id": 1,
    • "companyName": "Company Name",
    • "taxId": "LV40003012345",
    • "registrationNumber": 1234567890,
    • "email": "test@domain.com",
    • "fullName": "Name Surname",
    • "phone": "+37122912321",
    • "registrationCountry": "Latvia",
    • "address": "Street Name 15",
    • "city": "Riga",
    • "zip": "LV-1035",
    • "activeProfile": "DEMOCOMPANY",
    • "certificateType": "QUALIFIED",
    • "pricingPlan": "Entry",
    • "haveCertificate": false,
    • "secret": ":]f>G3&by@",
    • "previousMonth": "October",
    • "currentMonth": "November",
    • "signingCountPreviousMonth": 25,
    • "signingCountCurrentMonth": 7,
    • "certificateStartDate": "15.10.2025",
    • "certificateExpireDate": "15.10.2026",
    • "certificateUploaded": true
    },
  • "profiles": [
    • {
      • "id": 1,
      • "profileName": "DEMOCOMPANY",
      • "tokenId": "DEMOCOMPANY_TOKEN",
      • "pdfSigningSigner": "string"
      }
    ],
  • "storedDocuments": {
    • "confirmationDocument": "string",
    • "authorizedDocument": "string",
    • "companyLogo": "string",
    • "certificate": "string",
    • "authCsr": "string",
    • "signCsr": "string"
    }
}

audit-controller

Find audit message

Find audit messages by company name and date range

query Parameters
companyName
required
string
Example: companyName=Company Name
startDate
required
string
Example: startDate=24.08.2025
endDate
required
string
Example: endDate=26.08.2025
pageNumber
required
integer <int32>
Example: pageNumber=0
pageSize
required
integer <int32>
Example: pageSize=10
sortField
string
Default: "createdAt"
Example: sortField=createdAt
sortDirection
string
Default: "desc"
Example: sortDirection=desc

Responses

Save audit message

Save new audit message

Request Body schema: application/json
required
companyName
string
Example: "Company Name"
auditType
string
Enum: "USER" "SYSTEM" "ERROR" "API_KEY"
Example: "USER"
message
string
Example: "User action"

Responses

Request samples

Content type
application/json
{
  • "companyName": "Company Name",
  • "auditType": "USER",
  • "message": "User action"
}

api-key-controller

Create new API Key

Save new API Key object

query Parameters
uuidBundle
required
string
Example: uuidBundle=03d6b08c-d99e-4ee7-90dc-88afbb42e4dd

UUID

profileName
required
string
Example: profileName=TLX_PROD

Profile Name

Responses

Find API Keys

Find all API Keys

query Parameters
uuidBundle
required
string
Example: uuidBundle=03d6b08c-d99e-4ee7-90dc-88afbb42e4dd

UUID

profileName
required
string
Example: profileName=TLX_PROD

Profile Name

Responses