openapi: 3.0.1
info:
  title: EIA TestPortal Services
  description: Contains the services EIA TestPortal exposes
  version: v1
paths:
  /csr:
    get:
      tags:
        - Home
      summary: Creates a CSR based on random keypair with provided referenceId in subject
      parameters:
        - name: referenceId
          in: query
          description: Reference code from eia
          schema:
            type: string
        - name: rsaStrength
          in: query
          description: The strengt of the key generation (default 3072)
          schema:
            type: integer
            format: int32
            default: 3072
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: string
            application/json:
              schema:
                type: string
            text/json:
              schema:
                type: string
  /api/identity/cprupdatemunicipality:
    post:
      tags:
        - Identity
      summary: Update municipality in CPR register (column KOMKOD in DataCache)
      parameters:
        - name: Cpr
          in: query
          description: The CPR number
          schema:
            type: string
        - name: MunicipalityCode
          in: query
          description: The new municipality code
          schema:
            type: string
      responses:
        '200':
          description: OK
  /api/organization/bo:
    post:
      tags:
        - Organization
      summary: Create a new organization for EIA and provision the BO organization with standard settings.
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationApiRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationApiRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationApiRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
  /api/organization/boextended:
    post:
      tags:
        - Organization
      summary: "Create a new BO organization for EIA and provision the BO organization with standard settings.\r\nThis extended method allows you specify the BO organization name, CVR-number and CPR-number of the organization\r\nadministrator."
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationExtendedApiRequest'
            example: {"name":"Min bo testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationExtendedApiRequest'
            example: {"name":"Min bo testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationExtendedApiRequest'
            example: {"name":"Min bo testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
  /api/organization/tu:
    post:
      tags:
        - Organization
      summary: Create a new TU organization for EIA and provision the TU organization with standard settings.
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierApiRequest'
            example: {"cssOrganizationType":"ServiceProvider","name":"Min tu testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierApiRequest'
            example: {"cssOrganizationType":"ServiceProvider","name":"Min tu testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierApiRequest'
            example: {"cssOrganizationType":"ServiceProvider","name":"Min tu testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
  /api/organization/tuextended:
    post:
      tags:
        - Organization
      summary: "Create a new TU organization for EIA and provision the organization with standard settings.\r\nThis extended method allows you specify the TU organization name, CVR-number and CPR-number of the organization\r\nadministrator."
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierExtendedApiRequest'
            example: {"cssOrganizationType":"ServiceProvider","name":"Min tu testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierExtendedApiRequest'
            example: {"cssOrganizationType":"ServiceProvider","name":"Min tu testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierExtendedApiRequest'
            example: {"cssOrganizationType":"ServiceProvider","name":"Min tu testorganisation 1234","cvrNumber":"81559418","adminCpr":"1211571009","adminEmail":"admin@example.com","password":"myTestPw","enableQualifiedCertificates":true,"organizationType":"Public","physicalPersonIAL":"Substantial","physicalPersonEidas":false,"defaultAllowSigning":true}
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationResponse'
  '/api/organization/{cvrNumber}/organizationidentity':
    post:
      tags:
        - Organization
      summary: Create a new organization identity including an organization certificate.
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
        - name: cvrNumber
          in: path
          required: true
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationIdentityRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationIdentityRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationIdentityRequest'
      responses:
        '200':
          description: OK
  /api/organization/employee:
    post:
      tags:
        - Organization
      summary: "Create a new employee for EIA and provision the employee with standard settings. Each employee will also be created\r\nin MitID simulator."
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateEmployeeRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateEmployeeRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateEmployeeRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateEmployeeResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateEmployeeResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateEmployeeResponse'
  /api/organization/atr:
    post:
      tags:
        - Organization
      summary: Adds atr (authorized to represent)
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationAtrRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationAtrRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateOrganizationAtrRequest'
      responses:
        '200':
          description: OK
  '/api/organization/{cvrNumber}/atr/{cprNumber}':
    delete:
      tags:
        - Organization
      summary: Removes atr (authorized to represent)
      parameters:
        - name: cvrNumber
          in: path
          description: ''
          required: true
          schema:
            type: string
        - name: cprNumber
          in: path
          description: ''
          required: true
          schema:
            type: string
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      responses:
        '200':
          description: OK
  /api/organization/local-idp:
    post:
      tags:
        - Organization
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateLocalIdPRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateLocalIdPRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateLocalIdPRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateLocalIdPResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateLocalIdPResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CreateLocalIdPResponse'
    put:
      tags:
        - Organization
      parameters:
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateLocalIdPRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateLocalIdPRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateLocalIdPRequest'
      responses:
        '200':
          description: OK
  '/api/organization/local-idp/{uuid}/updateorganizations':
    put:
      tags:
        - Organization
      parameters:
        - name: uuid
          in: path
          description: ''
          required: true
          schema:
            type: string
            format: uuid
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      requestBody:
        description: ''
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateLocalIdPOrganizationsRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateLocalIdPOrganizationsRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateLocalIdPOrganizationsRequest'
      responses:
        '200':
          description: OK
  /api/organization/local-idps:
    get:
      tags:
        - Organization
      summary: Get all Local IdPs
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.ProvisioningGetLocalIdPDto'
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.ProvisioningGetLocalIdPDto'
            text/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.ProvisioningGetLocalIdPDto'
  '/api/organization/{cvrNumber}/local-idps':
    get:
      tags:
        - Organization
      summary: Get Local IdPs for organization by CVR number.
      parameters:
        - name: cvrNumber
          in: path
          description: ''
          required: true
          schema:
            type: string
        - name: X-API-KEY
          in: header
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.GetLocalIdPResponse'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.GetLocalIdPResponse'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.GetLocalIdPResponse'
  '/api/organizationintegrationtest/update/{cvrNumber}':
    post:
      tags:
        - OrganizationIntegrationTest
      summary: Create or update an integration test organization - modeled from the production organization.
      parameters:
        - name: cvrNumber
          in: path
          required: true
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateOrganizationFromProductionApiRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateOrganizationFromProductionApiRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.UpdateOrganizationFromProductionApiRequest'
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.UpdateOrganizationFromProductionResponseData'
            application/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.UpdateOrganizationFromProductionResponseData'
            text/json:
              schema:
                $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.UpdateOrganizationFromProductionResponseData'
  '/api/organizationintegrationtest/exists/{cvrNumber}':
    post:
      tags:
        - OrganizationIntegrationTest
      summary: Checks if there already exists a integration test environment for the organization.
      parameters:
        - name: cvrNumber
          in: path
          required: true
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            text/plain:
              schema:
                type: boolean
            application/json:
              schema:
                type: boolean
            text/json:
              schema:
                type: boolean
components:
  schemas:
    NemLogin.Common.TestPortal.Integration.EIAClient.AssuranceLevel:
      enum:
        - NotSet
        - Low
        - Substantial
        - High
      type: string
    NemLogin.Common.TestPortal.Integration.EIAClient.ProductProfile:
      enum:
        - ADFS
        - OIOSAML3
        - Generic
      type: string
    NemLogin.Common.TestPortal.Integration.EIAClient.ProvisioningConnectedOrganization:
      type: object
      properties:
        cvrNumber:
          type: string
          nullable: true
        uuid:
          type: string
          format: uuid
        name:
          type: string
          nullable: true
      additionalProperties: false
    NemLogin.Common.TestPortal.Integration.EIAClient.ProvisioningGetLocalIdPDto:
      type: object
      properties:
        associatedFal:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.AssuranceLevel'
        displayName:
          type: string
          nullable: true
        productProfile:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.ProductProfile'
        uuid:
          type: string
          format: uuid
        connectedOrganizations:
          type: array
          items:
            $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.ProvisioningConnectedOrganization'
          nullable: true
        entityId:
          type: string
          nullable: true
        metadataXml:
          type: string
          nullable: true
      additionalProperties: false
    NemLogin.Common.TestPortal.Integration.EIAClient.UpdateIntegrationTestOrganizationFromProductionStatus:
      enum:
        - NotSet
        - OrganizationCreated
        - OrganizationUpdated
        - AdministratorAdded
        - AdministratorPasswordUpdated
        - AdministratorEmailOrPasswordMissing
        - ApiKeyUpdated
        - UpdateFailed
        - AdministratorAccessKeyInvalid
        - AdministratorEmailAlreadyExists
      type: string
    NemLogin.Common.TestPortal.Integration.EIAClient.UpdateOrganizationFromProductionResponseData:
      type: object
      properties:
        status:
          type: array
          items:
            $ref: '#/components/schemas/NemLogin.Common.TestPortal.Integration.EIAClient.UpdateIntegrationTestOrganizationFromProductionStatus'
          nullable: true
        updatedUserName:
          type: string
          nullable: true
        integrationTestLink:
          type: string
          nullable: true
        administratorAccessToken:
          type: string
          nullable: true
      additionalProperties: false
    NemLogin.Common.TestPortal.Models.AssuranceLevel:
      enum:
        - Low
        - Substantial
        - High
      type: string
      description: ''
    NemLogin.Common.TestPortal.Models.AuthorityType:
      enum:
        - None
        - PublicLawBody
        - PublicSupplier
        - PublicBroker
      type: string
      description: AuthorityType
    NemLogin.Common.TestPortal.Models.ConnectedOrganizationDto:
      type: object
      properties:
        cvrNumber:
          type: string
          description: Organization CVR number
          nullable: true
        uuid:
          type: string
          description: Organization UUID
          format: uuid
        name:
          type: string
          description: Organization Name
          nullable: true
      additionalProperties: false
      description: Connection Organization
    NemLogin.Common.TestPortal.Models.CreateEmployeeRequest:
      required:
        - adminEmail
        - cprNumber
        - cvrNumber
        - firstName
        - identityEmail
        - lastName
        - password
        - roles
        - userName
      type: object
      properties:
        userName:
          minLength: 1
          type: string
          description: UserName
        password:
          minLength: 1
          type: string
          description: Password
        firstName:
          minLength: 1
          type: string
          description: FirstName
        lastName:
          minLength: 1
          type: string
          description: LastName
        rid:
          type: string
          description: Rid
          nullable: true
        cvrName:
          type: string
          description: CvrName
          nullable: true
        cprNumber:
          maxLength: 10
          minLength: 10
          pattern: '[0-3][0-9][0-1][0-9][0-9][0-9]([0-9]){4}'
          type: string
          description: CprNumber
        cvrNumber:
          minLength: 1
          type: string
          description: CvrNumber
        identityEmail:
          minLength: 1
          pattern: '[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9!#\$%&''\*+/=\?\^_`\{\|\}~-]+(?:\.[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9!#\$%&''\*+/=\?\^_`\{|\}~-]+)*@(?:[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9](?:[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9-]*[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9])?\.)+[a-zA-Z0-9]{1,63}(?:[a-zA-Z0-9-]*[a-zA-Z0-9])?'
          type: string
          description: IdentityEmail
        adminEmail:
          minLength: 1
          pattern: '[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9!#\$%&''\*+/=\?\^_`\{\|\}~-]+(?:\.[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9!#\$%&''\*+/=\?\^_`\{|\}~-]+)*@(?:[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9](?:[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9-]*[ÖÄÜÉöäüéÆØÅæøåa-zA-Z0-9])?\.)+[a-zA-Z0-9]{1,63}(?:[a-zA-Z0-9-]*[a-zA-Z0-9])?'
          type: string
          description: AdminEmail
        roles:
          type: array
          items:
            type: string
          description: Roles
        uuid:
          type: string
          description: Uuid
          format: uuid
          nullable: true
        identityActivated:
          type: boolean
          description: Identity is activated right away
        identityActivatedCredentialTypes:
          type: array
          items:
            $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CredentialType'
          description: IdentityActivatedCredentialTypes
          nullable: true
        allowSealGeneration:
          type: boolean
          description: AllowSealGeneration
        allowQualifiedCertificateIssuance:
          type: boolean
          description: AllowQualifiedCertificateIssuance
        organizationIdentityNameForSeal:
          type: string
          description: OrganizationIdentityNameForSeal
          nullable: true
        addAdminAsKfobsAdmin:
          type: boolean
          description: Check if need to add the Admin az KFOBS_Admin
        addAdminAsKfobsSupport:
          type: boolean
          description: Check if need to add the Admin az KFOBS_Support
        allowSigning:
          type: boolean
          description: 'Set allow signing. If null, uses organization default'
          nullable: true
        isEidasApprover:
          type: boolean
          description: Mark employee identity as eidas approver
      additionalProperties: false
      description: Create employee request
    NemLogin.Common.TestPortal.Models.CreateEmployeeResponse:
      type: object
      properties:
        uuid:
          type: string
          description: uuid
          format: uuid
        rid:
          type: string
          description: Rid
          nullable: true
      additionalProperties: false
      description: Create employee response
    NemLogin.Common.TestPortal.Models.CreateLocalIdPRequest:
      type: object
      properties:
        associatedFal:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        displayName:
          type: string
          description: The name displayed to the user
          nullable: true
        productProfile:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.ProductProfile'
        metadataXml:
          type: string
          description: Metadata xml for this local identity provider
          nullable: true
        connectedOrganizations:
          type: array
          items:
            type: string
          description: The organizations connected to this identity provider as a list of cvr
          nullable: true
        cvrNumber:
          type: string
          description: The CVR number for this organization.
          nullable: true
      additionalProperties: false
      description: Create LocalIdp request
    NemLogin.Common.TestPortal.Models.CreateLocalIdPResponse:
      type: object
      properties:
        guid:
          type: string
          description: Local IdP GUID
          format: uuid
      additionalProperties: false
      description: Create LocalIdP response
    NemLogin.Common.TestPortal.Models.CreateOrganizationApiRequest:
      required:
        - adminEmail
        - password
      type: object
      properties:
        adminEmail:
          minLength: 1
          type: string
          description: AdminEmail
        password:
          minLength: 1
          type: string
          description: Password
          default: Test1234
        enableQualifiedCertificates:
          type: boolean
          description: EnableQualifiedCertificates
        organizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.OrganizationType'
        authorityType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AuthorityType'
        uuid:
          type: string
          description: Uuid
          format: uuid
          nullable: true
        administratorUuid:
          type: string
          description: AdministratorUuid
          format: uuid
          nullable: true
        physicalPersonIAL:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        physicalPersonEidas:
          type: boolean
          description: PhysicalPersonEidas
          default: false
        defaultAllowSigning:
          type: boolean
          description: DefaultAllowSigning
      additionalProperties: false
      description: Create organization request
    NemLogin.Common.TestPortal.Models.CreateOrganizationAtrRequest:
      type: object
      properties:
        cvr:
          type: string
          description: Cvr in which the person is ATR
          nullable: true
        cpr:
          type: string
          description: Cpr of the person identifying ATR
          nullable: true
        organizationName:
          type: string
          description: Name of the organization in which the person is ATR
          nullable: true
      additionalProperties: false
      description: ''
    NemLogin.Common.TestPortal.Models.CreateOrganizationExtendedApiRequest:
      required:
        - adminEmail
        - password
      type: object
      properties:
        adminEmail:
          minLength: 1
          type: string
          description: AdminEmail
        password:
          minLength: 1
          type: string
          description: Password
          default: Test1234
        enableQualifiedCertificates:
          type: boolean
          description: EnableQualifiedCertificates
        organizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.OrganizationType'
        authorityType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AuthorityType'
        uuid:
          type: string
          description: Uuid
          format: uuid
          nullable: true
        administratorUuid:
          type: string
          description: AdministratorUuid
          format: uuid
          nullable: true
        physicalPersonIAL:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        physicalPersonEidas:
          type: boolean
          description: PhysicalPersonEidas
          default: false
        defaultAllowSigning:
          type: boolean
          description: DefaultAllowSigning
        name:
          type: string
          description: Name
          nullable: true
        cvrNumber:
          type: string
          description: CvrNumber
          nullable: true
        adminCpr:
          type: string
          description: AdminCpr
          nullable: true
        adminUsername:
          type: string
          description: AdminUsername
          nullable: true
        adminMaxRegisteredIAL:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
      additionalProperties: false
      description: Create organization extended request
    NemLogin.Common.TestPortal.Models.CreateOrganizationIdentityRequest:
      type: object
      properties:
        cvrNumber:
          type: string
          description: ''
          nullable: true
        employeeAdminCprNumber:
          type: string
          description: ''
          nullable: true
        name:
          type: string
          description: ''
          nullable: true
        certificateEmail:
          type: string
          description: ''
          nullable: true
        certificateManagementRights:
          type: boolean
          description: ''
        pNumber:
          type: integer
          description: ''
          format: int64
          nullable: true
        seNumber:
          type: string
          description: ''
          nullable: true
        emailValidated:
          type: boolean
          description: ''
      additionalProperties: false
      description: ''
    NemLogin.Common.TestPortal.Models.CreateOrganizationResponse:
      type: object
      properties:
        organizationName:
          type: string
          description: OrganizationName
          nullable: true
        cvr:
          type: string
          description: CVR
          nullable: true
        firstname:
          type: string
          description: Firstname
          nullable: true
        lastname:
          type: string
          description: Lastname
          nullable: true
        username:
          type: string
          description: Username
          nullable: true
        password:
          type: string
          description: Password
          nullable: true
        eiaUri:
          type: string
          description: EiaUri
          nullable: true
        eiaIntTestUri:
          type: string
          description: EiaUri
          nullable: true
        myIdSimulatorUri:
          type: string
          description: MyIdSimulatorUri
          nullable: true
        administrationUri:
          type: string
          description: Administration uri
          nullable: true
        adminUuid:
          type: string
          description: Admin uuid
          format: uuid
        adminRid:
          type: string
          description: Admin RID
          nullable: true
        uuid:
          type: string
          description: The organization Uuid
          format: uuid
        apiAccessKey:
          type: string
          description: 'Optional Api access key to protect test data. If provided, all the api requests should include this key.'
          nullable: true
        organizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.OrganizationType'
        cssOrganizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CssOrganizationType'
        cssAuthorityType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AuthorityType'
      additionalProperties: false
      description: Create organization response
    NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierApiRequest:
      required:
        - adminEmail
        - password
      type: object
      properties:
        adminEmail:
          minLength: 1
          type: string
          description: AdminEmail
        password:
          minLength: 1
          type: string
          description: Password
          default: Test1234
        enableQualifiedCertificates:
          type: boolean
          description: EnableQualifiedCertificates
        organizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.OrganizationType'
        authorityType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AuthorityType'
        uuid:
          type: string
          description: Uuid
          format: uuid
          nullable: true
        administratorUuid:
          type: string
          description: AdministratorUuid
          format: uuid
          nullable: true
        physicalPersonIAL:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        physicalPersonEidas:
          type: boolean
          description: PhysicalPersonEidas
          default: false
        defaultAllowSigning:
          type: boolean
          description: DefaultAllowSigning
        cssOrganizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CssOrganizationType'
      additionalProperties: false
      description: Api request for creating service provider and/or it supplier
    NemLogin.Common.TestPortal.Models.CreateServiceProviderItSupplierExtendedApiRequest:
      required:
        - adminEmail
        - password
      type: object
      properties:
        adminEmail:
          minLength: 1
          type: string
          description: AdminEmail
        password:
          minLength: 1
          type: string
          description: Password
          default: Test1234
        enableQualifiedCertificates:
          type: boolean
          description: EnableQualifiedCertificates
        organizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.OrganizationType'
        authorityType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AuthorityType'
        uuid:
          type: string
          description: Uuid
          format: uuid
          nullable: true
        administratorUuid:
          type: string
          description: AdministratorUuid
          format: uuid
          nullable: true
        physicalPersonIAL:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        physicalPersonEidas:
          type: boolean
          description: PhysicalPersonEidas
          default: false
        defaultAllowSigning:
          type: boolean
          description: DefaultAllowSigning
        name:
          type: string
          description: Name
          nullable: true
        cvrNumber:
          type: string
          description: CvrNumber
          nullable: true
        adminCpr:
          type: string
          description: AdminCpr
          nullable: true
        adminUsername:
          type: string
          description: AdminUsername
          nullable: true
        adminMaxRegisteredIAL:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        cssOrganizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.CssOrganizationType'
      additionalProperties: false
      description: Extended Api request for creating service provider and/or it supplier
    NemLogin.Common.TestPortal.Models.CredentialType:
      enum:
        - PrivateMitID
        - NemID
      type: string
      description: CredentialType
    NemLogin.Common.TestPortal.Models.CssOrganizationType:
      enum:
        - UserOrganization
        - ServiceProvider
        - ITServiceProvider
        - ServiceProviderAndITServiceProvider
      type: string
      description: Organization type in CSS - Matches CSS OrgType table
    NemLogin.Common.TestPortal.Models.GetLocalIdPResponse:
      type: object
      properties:
        localIdPs:
          type: array
          items:
            $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.LocalIdPDto'
          description: List of Local IdPs
          nullable: true
      additionalProperties: false
      description: Get LocalIdP response
    NemLogin.Common.TestPortal.Models.LocalIdPDto:
      type: object
      properties:
        associatedFal:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        displayName:
          type: string
          description: The name displayed to the user
          nullable: true
        productProfile:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.ProductProfile'
        connectedOrganizations:
          type: array
          items:
            $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.ConnectedOrganizationDto'
          description: The organizations connected to this identity provider as a list of cvr
          nullable: true
        uuid:
          type: string
          description: The UUID of the Local IdP
          format: uuid
        entityId:
          type: string
          description: The Entity Id specified in the metadata
          nullable: true
      additionalProperties: false
      description: Local IdP DTO
    NemLogin.Common.TestPortal.Models.OrganizationType:
      enum:
        - Private
        - Public
      type: string
      description: OrganizationType
    NemLogin.Common.TestPortal.Models.ProductProfile:
      enum:
        - ADFS
        - OIOSAML3
      type: string
      description: Product Profile
    NemLogin.Common.TestPortal.Models.UpdateLocalIdPOrganizationsRequest:
      type: object
      properties:
        connectedOrganizations:
          type: array
          items:
            type: string
          description: The organizations connected to this identity provider as a list of cvr
          nullable: true
      additionalProperties: false
      description: Create LocalIdp request
    NemLogin.Common.TestPortal.Models.UpdateLocalIdPRequest:
      type: object
      properties:
        associatedFal:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.AssuranceLevel'
        displayName:
          type: string
          description: The name displayed to the user
          nullable: true
        productProfile:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.ProductProfile'
        metadataXml:
          type: string
          description: Metadata xml for this local identity provider
          nullable: true
        connectedOrganizations:
          type: array
          items:
            type: string
          description: The organizations connected to this identity provider as a list of cvr
          nullable: true
        uuid:
          type: string
          description: The UUID number for this LocalIdP.
          format: uuid
      additionalProperties: false
      description: Create LocalIdp request
    NemLogin.Common.TestPortal.Models.UpdateOrganizationFromProductionApiRequest:
      type: object
      properties:
        adminEmail:
          type: string
          description: Optional. AdminEmail
          nullable: true
        password:
          type: string
          description: Optional. Password
          nullable: true
        apiAccessKey:
          type: string
          description: 'Optional. Api access key to protect test data. If provided, all the api requests should include this key.'
          nullable: true
        enableQualifiedCertificates:
          type: boolean
          description: EnableQualifiedCertificates
        organizationType:
          $ref: '#/components/schemas/NemLogin.Common.TestPortal.Models.OrganizationType'
        organizationName:
          type: string
          description: Organization name
          nullable: true
      additionalProperties: false
      description: Used when creating a new BO organization from EIA production organization.
security:
  - basic: [ ]