openapi: 3.0.1 info: title: Provisioning Orchestrator description: Handles the requests of the provisioning termsOfService: https://www.fascicolosanitario.gov.it/it/note-legali contact: name: Fascicolo Sanitario Elettronico 2.0 url: https://developers.italia.it/it/fse/ version: 1.0.0 x-api-id: '1' x-summary: Provisioning Orchestrator servers: - url: https://modipa-val.fse.salute.gov.it/govway/rest/in/FSE/provisioning/v1 description: Generated server url tags: - name: Health check Status Actuator - name: Multiple certificate service paths: /certificate/revoke/multi: post: tags: - Multiple certificate service summary: Multiple certificate revocation request inserted description: Multiple certificate revocation request inserted operationId: revokeCertificatesRequest_1 requestBody: content: application/json: schema: $ref: '#/components/schemas/WrapRevokeMultiRequestDTO' required: true responses: '200': description: Revocation request sent correctly content: application/json: schema: $ref: '#/components/schemas/RevokeResponseDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /certificate/renew/multi: post: tags: - Multiple certificate service summary: Multiple certificate renovation request inserted description: Multiple certificate renovation request inserted operationId: renewCertificatesRequest_1 requestBody: content: multipart/form-data: schema: required: - files - renewInfo type: object properties: renewInfo: $ref: '#/components/schemas/WrapRenewMultiRequestDTO' files: maxLength: 1000 maxItems: 1000 minItems: 1 type: array items: maxLength: 10000 type: string format: binary additionalProperties: false responses: '200': description: Renovation request sent correctly content: application/json: schema: $ref: '#/components/schemas/RenewResponseDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /certificate/create/multi: post: tags: - Multiple certificate service summary: Multiple certificate creation request inserted description: Multiple certificate creation request inserted operationId: createCertificatesRequest requestBody: content: multipart/form-data: schema: required: - creationInfo - files type: object properties: creationInfo: $ref: '#/components/schemas/WrapCreateMultiRequestDTO' files: maxLength: 1000 maxItems: 1000 minItems: 1 type: array items: maxLength: 10000 type: string format: binary additionalProperties: false responses: '200': description: Creation request sent content: application/json: schema: $ref: '#/components/schemas/OutcomeCertificatesDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '409': description: Conflict content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /certificates/multi: get: tags: - Multiple certificate service summary: Recupera richieste certificati description: Ricerca certificati operationId: getCertificatesMulti parameters: - name: nodeID in: query required: true schema: maximum: 9223372036854776000 minimum: 0 type: integer format: int64 responses: '200': description: Richieste certificati recuperate content: application/json: schema: $ref: '#/components/schemas/CertificatesMultiRequestDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /certificate/profile: get: tags: - Multiple certificate service summary: Returns profile information description: Returns profile information operationId: getProfile_1 responses: '200': description: Profile information returned correctly content: application/json: schema: $ref: '#/components/schemas/ProfileDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /certificate/download/multi/{uuid}: get: tags: - Multiple certificate service summary: Return multiple certificate contents in a zip file description: Return multiple certificate contents in a zip file operationId: downloadRequestMultiM2M parameters: - name: uuid in: path required: true schema: maxLength: 2147483647 minLength: 0 type: string responses: '200': description: Certificate content returned succesfully content: application/json: schema: $ref: '#/components/schemas/CertificateMultiDownloadDTO' '206': description: Request under elaboration content: application/json: schema: $ref: '#/components/schemas/CertificateMultiDownloadDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /certificate/creator: get: tags: - Multiple certificate service summary: Returns creator tax code description: Returns creator tax code operationId: getCreatorTaxCode parameters: - name: regionId in: query required: true schema: type: string responses: '200': description: Creator tax code returned correctly content: application/json: schema: $ref: '#/components/schemas/ProfileTaxCodeDTO' '400': description: Bad Request content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '404': description: Not found content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' '500': description: Internal Server Error content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' security: - bearerAuth: [] - FSE-JWT-Provisioning: [] /status: get: tags: - Health check Status Actuator summary: Health check status description: Health check endpoint. operationId: health responses: '200': description: Health check OK content: application/problem+json: {} '400': description: Bad request content: application/problem+json: {} '500': description: Internal Server Error content: application/problem+json: {} default: description: default content: application/problem+json: schema: $ref: '#/components/schemas/ErrorResponseDTO' components: schemas: ErrorResponseDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) type: maxLength: 1000 minLength: 1 type: string description: Identificativo della classe del problema verificatosi title: maxLength: 1000 minLength: 1 type: string description: Descrizione della classe del problema verificatosi (invariante per occorrenze diverse dello stesso problema) detail: maxLength: 1000 minLength: 1 type: string description: Descrizione del problema instance: maxLength: 1000 minLength: 1 type: string description: URI che identifica la specifica occorrenza del problema additionalProperties: false ResponseDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) additionalProperties: false CertificateFailureDTO: type: object properties: nameAuth: minimum: 0 maxLength: 1000 type: string description: Name of the certificate used for authentication hashAuth: minimum: 0 maxLength: 1000 type: string description: Hash of the certificate used for authentication nameSign: minimum: 0 maxLength: 1000 type: string description: Name of the certificate used for signature hashSign: minimum: 0 maxLength: 1000 type: string description: Hash of the certificate used for signature reason: minimum: 0 maxLength: 1000 type: string description: Reason additionalProperties: false CertificatesInfoDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) idAuth: maximum: 9223372036854776000 minimum: 0 type: integer description: Id of the certificate used for authentication format: int64 nameAuth: maxLength: 1000 type: string description: Name of the certificate used for authentication idSign: maximum: 9223372036854776000 minimum: 0 type: integer description: Id of the certificate used for signing format: int64 nameSign: maxLength: 1000 type: string description: Name of the certificate used for signing additionalProperties: false RenewResponseDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) uuid: maxLength: 36 minLength: 36 type: string description: uuid renews: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/CertificatesInfoDTO' failures: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/CertificateFailureDTO' additionalProperties: false RevokeInfoDTO: type: object properties: distinguishedNameAuth: maxLength: 255 minLength: 1 type: string description: Distinguished name auth distinguishedNameSign: maxLength: 255 minLength: 1 type: string description: Distinguished name sign reason: maxLength: 255 minLength: 1 type: string description: Reason for revocation enum: - UNSPECIFIED - KEY_COMPROMISE - SUPERSEDED - CESSATION_OF_OPERATION - CERTIFICATE_HOLD additionalProperties: false WrapRevokeMultiRequestDTO: type: object properties: nodeID: maximum: 9223372036854776000 minimum: 0 type: integer description: Node Id format: int64 uuid: maxLength: 255 minLength: 1 type: string description: uuid reason: maxLength: 255 minLength: 1 type: string description: Reason for revocation enum: - UNSPECIFIED - KEY_COMPROMISE - SUPERSEDED - CESSATION_OF_OPERATION - CERTIFICATE_HOLD revokes: maxItems: 10000 minItems: 1 type: array items: $ref: '#/components/schemas/RevokeInfoDTO' additionalProperties: false RevokeResponseDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) revokes: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/CertificatesInfoDTO' failures: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/CertificateFailureDTO' additionalProperties: false RenewMultiRequestDTO: type: object properties: nameFileAuth: maxLength: 255 minLength: 1 type: string description: Name of the authorizing file nameFileSign: maxLength: 255 minLength: 1 type: string description: Name of the signing file distinguishedNameAuth: maxLength: 255 minLength: 1 type: string description: Name of the authorizing distinguished name distinguishedNameSign: maxLength: 255 minLength: 1 type: string description: Name of the signing distinguished name additionalProperties: false WrapRenewMultiRequestDTO: type: object properties: nodeID: maximum: 9223372036854776000 minimum: 0 type: integer description: ID of the logged user format: int64 certificateList: maxItems: 10000 minItems: 1 uniqueItems: true type: array items: $ref: '#/components/schemas/RenewMultiRequestDTO' additionalProperties: false CreateMultiRequestDTO: type: object properties: nameFileAuth: maxLength: 255 minLength: 1 type: string description: Name of the authorizing file nameFileSign: maxLength: 255 minLength: 1 type: string description: Name of the signing file taxCodeOperator: maxLength: 16 minLength: 0 type: string description: Tax code of operator variablePartCN: maxLength: 255 minLength: 0 type: string description: Variable part of the common name additionalProperties: false WrapCreateMultiRequestDTO: type: object properties: nodeID: maximum: 9223372036854776000 minimum: 0 type: integer description: Node Id format: int64 certificateList: maxItems: 10000 minItems: 1 uniqueItems: true type: array items: $ref: '#/components/schemas/CreateMultiRequestDTO' description: maximum: 9223372036854776000 minimum: 0 maxLength: 2147483647 minLength: 0 type: string description: Multiple certificates description additionalProperties: false OutcomeCertificatesDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) uuid: maxLength: 36 minLength: 36 type: string description: uuid creations: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/CertificatesInfoDTO' failures: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/CertificateFailureDTO' additionalProperties: false ProfileDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) givenName: maxLength: 100 minLength: 1 type: string description: Nome familyName: maxLength: 100 minLength: 1 type: string description: Surname taxCode: maxLength: 16 minLength: 1 type: string description: Fiscal code roles: maxItems: 1000 minItems: 0 type: array items: $ref: '#/components/schemas/ProfileRoleDTO' additionalProperties: false ProfileRoleDTO: type: object properties: nodeID: maximum: 9223372036854776000 minimum: 0 type: integer description: The role ID format: int64 nodeFatherID: maximum: 9223372036854776000 minimum: 0 type: integer description: Node father ID format: int64 roleID: maximum: 10 minimum: 0 type: integer description: The role description format: int64 roleDescription: maxLength: 1000 type: string description: The role description regionID: maxLength: 1000 minLength: 1 type: string description: The role description regionDescription: maxLength: 1000 type: string description: The role description enterpriseId: maxLength: 1000 type: string description: Enterprise ID enterprise: maxLength: 1000 type: string description: Enterprise structureId: maxLength: 1000 type: string description: Structure ID structure: maxLength: 1000 type: string description: Structure fieldsOfReference: maxItems: 10 minItems: 0 type: array items: maxLength: 100 minLength: 1 type: string description: Field of reference email: maxLength: 100 type: string description: User email fixedPartCN: maxLength: 1000 type: string description: Fixed part of CN allowedToMonitoring: type: boolean admin: type: boolean description: Flag admin medicsAdministrator: type: boolean description: Is true if the user is an administrator for MMG/PLS additionalProperties: false description: Roles CertificatesMultiRequestDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) certificates: maxItems: 10000 minItems: 0 type: array items: $ref: '#/components/schemas/RequestLightMultiDTO' additionalProperties: false RequestLightMultiDTO: type: object properties: uuid: maxLength: 50 type: string description: uuid description: maxLength: 10000 type: string description: description requestPairs: maxLength: 1000 maxItems: 10000 minItems: 0 type: array description: description items: $ref: '#/components/schemas/RequestPairMultiDTO' additionalProperties: false description: Certificate request details RequestPairMultiDTO: maxLength: 1000 type: object properties: dnAuth: maxLength: 50 type: string description: Dn auth dnSign: maxLength: 50 type: string description: Dn sign additionalProperties: false description: description CertificateMultiDownloadDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) uuid: maxLength: 1000 type: string description: uuid size: maximum: 10000 minimum: 0 type: integer description: size format: int32 zip64: maxLength: 10000 minLength: 0 type: string format: byte message: maxLength: 1000 type: string description: message additionalProperties: false ProfileTaxCodeDTO: type: object properties: traceID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco della richiesta dell'utente spanID: maxLength: 100 minLength: 0 type: string description: Indentificativo univoco di un task della richiesta dell'utente (differisce dal traceID solo in caso di chiamate sincrone in cascata) taxCode: maxLength: 16 minLength: 1 type: string description: Fiscal code additionalProperties: false securitySchemes: Header-CF: type: apiKey name: Header-CF in: header FSE-JWT-Provisioning: type: apiKey name: FSE-JWT-Provisioning in: header bearerAuth: type: http description: 'JWT Authorization header using the Bearer scheme. Example: "Authorization: Bearer {token} [RFC8725](https://tools.ietf.org/html/RFC8725)."' scheme: bearer bearerFormat: JWT