openapi: 3.2.0 info: title: Pagopa Data Preparation API version: 3.0.0 contact: name: PagoPA S.p.A url: https://www.interop.pagopa.it/ license: name: Apache 2.0 url: http://www.apache.org/licenses/LICENSE-2.0.html x-api-id: 5ca54741-8f62-4aad-ab79-13ae762920e3 x-refined-note: - x-audience differs across the merged source definitions and was not carried - x-summary differs across the merged source definitions and was not carried description: 'Operations tagged Data Preparation across 4 of this provider''s published API definitions: interop-organization-id-verification.yaml, interop-subject-id-verification.yaml, pagopa-pdnd-attestation-organization-id-openapi.yml, pagopa-pdnd-attestation-subject-id-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ tags: - name: Data Preparation paths: /organization-id-verification/data-preparation/handshake: post: summary: Upload the certificate and header fields description: Upload the certificate in .pem format along with two fields in the header. security: - bearerAuth: [] requestBody: required: true content: multipart/form-data: schema: type: object properties: certificate: type: string format: binary description: The certificate in .pem format parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: type: object properties: message: type: string description: Operation confirmation message '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: postOrganizationIdVerificationDataPreparationHandshake x-operation-id-source: derived servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ /organization-id-verification/data-preparation: post: summary: data preparation api description: Upload your organization's use cases security: - bearerAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DatapreparationTemplate' examples: alphanumericOrganizationId: value: organizationId: AAAZZZ00H00T000Z numericOrganizationI: value: organizationId: 06363391001 parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: type: object properties: message: type: string description: Operation confirmation message '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: postOrganizationIdVerificationDataPreparation x-operation-id-source: derived get: summary: data preparation api description: List of institution use cases security: - bearerAuth: [] parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: $ref: '#/components/schemas/DataPreparationResponse' '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: getOrganizationIdVerificationDataPreparation x-operation-id-source: derived delete: summary: Delete institution use cases description: 'Returns the application status: 200 if it is working correctly or an error if the application is temporarily unavailable for maintenance or a technical problem.' operationId: reset tags: - Data Preparation responses: '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '429': $ref: '#/components/responses/429TooManyRequests' '500': $ref: '#/components/responses/500InternalServerError' default: $ref: '#/components/responses/default' '200': description: 'The server has returned to status. In case of problems always returns a problem+json. ' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/problem+json: schema: $ref: '#/components/schemas/Problem' servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ /organization-id-verification/data-preparation/remove: post: summary: data preparation api description: It removes a specific use case security: - bearerAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DatapreparationTemplate' examples: alphanumericOrganizationId: value: organizationId: AAAZZZ00H00T000Z numericOrganizationId: value: organizationId: 06363391001 parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: type: object properties: message: type: string description: Operation confirmation message '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: postOrganizationIdVerificationDataPreparationRemove x-operation-id-source: derived servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ /subject-id-verification/data-preparation/handshake: post: summary: Upload the certificate and header fields description: Upload the certificate in .pem format along with two fields in the header. security: - bearerAuth: [] requestBody: required: true content: multipart/form-data: schema: type: object properties: certificate: type: string format: binary description: The certificate in .pem format parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: type: object properties: message: type: string description: Operation confirmation message '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: postSubjectIdVerificationDataPreparationHandshake x-operation-id-source: derived servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ /subject-id-verification/data-preparation: post: summary: data preparation api description: upload your valid subject id security: - bearerAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DatapreparationTemplate_2' examples: alphanumericIdSubject: value: idSubject: AAAZZZ00H00T000Z numericIdSubject: value: idSubject: 06363391001 parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: type: object properties: message: type: string description: Operation confirmation message '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: postSubjectIdVerificationDataPreparation x-operation-id-source: derived get: summary: data preparation api description: upload the valid subject id security: - bearerAuth: [] parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: $ref: '#/components/schemas/DataPreparationResponse_2' '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: getSubjectIdVerificationDataPreparation x-operation-id-source: derived delete: summary: Delete all previously entered data description: 'Returns: 200 if successfully cleared.' operationId: deleteSubjectIdVerificationDataPreparation tags: - Data Preparation responses: '400': $ref: '#/components/responses/400BadRequest' '401': $ref: '#/components/responses/401Unauthorized' '429': $ref: '#/components/responses/429TooManyRequests' '503': $ref: '#/components/responses/503ServiceUnavailable' default: $ref: '#/components/responses/default' '200': description: 'In case of errors returns a problem+json. ' headers: X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' content: application/problem+json: schema: $ref: '#/components/schemas/Problem' x-operation-id-source: normalized x-operation-id-original: reset servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ /subject-id-verification/data-preparation/remove: post: summary: data preparation api description: deletes a previously entered subject id security: - bearerAuth: [] requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/DatapreparationTemplate_2' examples: alphanumericIdSubject: value: idSubject: AAAZZZ00H00T000Z numericIdSubject: value: idSubject: 06363391001 parameters: - in: header name: apikey required: true schema: type: string description: API key responses: '200': description: Operation completed successfully content: application/json: schema: type: object properties: message: type: string description: Operation confirmation message '400': $ref: '#/components/responses/400BadRequest' tags: - Data Preparation operationId: postSubjectIdVerificationDataPreparationRemove x-operation-id-source: derived servers: - description: Ambiente di Attestazione url: https://mtls.eservices.att.interop.pagopa.it/ components: headers: WWW-Authenticate: description: 'Auth realm=APIkey See https://tools.ietf.org/html/rfc7235#section-4.1' schema: type: string Retry-After: description: 'Retry contacting the endpoint *at least* after seconds. See https://tools.ietf.org/html/rfc7231#section-7.1.3' schema: type: string X-RateLimit-Remaining: description: The number of remaining requests in the current period schema: type: string X-RateLimit-Limit: description: The number of allowed requests in the current period schema: type: string X-RateLimit-Reset: description: The number of seconds left in the current period schema: type: string schemas: DatapreparationTemplate: type: object properties: organizationId: $ref: '#/components/schemas/OrganizationId' Problem: properties: detail: description: 'A human readable explanation specific to this occurrence of the problem. You MUST NOT expose internal informations, personal data or implementation details through this field. ' example: Request took too long to complete. type: string instance: description: 'An absolute URI that identifies the specific occurrence of the problem. It may or may not yield further information if dereferenced. ' format: uri type: string status: description: 'The HTTP status code generated by the origin server for this occurrence of the problem. ' example: 503 format: int32 minimum: 100 type: integer exclusiveMaximum: 600 title: description: 'A short, summary of the problem type. Written in english and readable for engineers (usually not suited for non technical stakeholders and not localized); example: Service Unavailable ' type: string type: default: about:blank description: 'An absolute URI that identifies the problem type. When dereferenced, it SHOULD provide human-readable documentation for the problem type (e.g., using HTML). ' format: uri type: string type: object DataPreparationResponse: type: array items: type: object properties: organizationId: $ref: '#/components/schemas/OrganizationId' OrganizationId: type: string maxLength: 11 minLength: 11 pattern: ^[0-9]+ example: 06363391001 DatapreparationTemplate_2: type: object properties: idSubject: $ref: '#/components/schemas/CodiceFiscale' CodiceFiscale: type: string minLength: 11 maxLength: 16 pattern: ^[0-9]{11}|(?:^(?:[A-Z][AEIOU][AEIOUX]|[B-DF-HJ-NP-TV-Z]{2}[A-Z]){2}(?:[\dLMNP-V]{2}(?:[A-EHLMPR-T](?:[04LQ][1-9MNP-V]|[15MR][\dLMNP-V]|[26NS][0-8LMNP-U])|[DHPS][37PT][0L]|[ACELMRT][37PT][01LM]|[AC-EHLMPR-T][26NS][9V])|(?:[02468LNQSU][048LQU]|[13579MPRTV][26NS])B[26NS][9V])(?:[A-MZ][1-9MNP-V][\dLMNP-V]{2}|[A-M][0L](?:[1-9MNP-V][\dLMNP-V]|[0L][1-9MNP-V]))[A-Z]$) example: 06363391001 description: it can take on an alphanumeric value of length 16 or a numeric value of length 11 (i.e. 06363391001) DataPreparationResponse_2: type: array items: type: object properties: idSubject: $ref: '#/components/schemas/CodiceFiscale' DatapreparationTemplate_3: type: object properties: idSubject: $ref: '#/components/schemas/CodiceFiscale' DataPreparationResponse_3: type: array items: type: object properties: idSubject: $ref: '#/components/schemas/CodiceFiscale' responses: 429TooManyRequests: description: Too many requests headers: Retry-After: $ref: '#/components/headers/Retry-After' X-RateLimit-Limit: $ref: '#/components/headers/X-RateLimit-Limit' X-RateLimit-Remaining: $ref: '#/components/headers/X-RateLimit-Remaining' X-RateLimit-Reset: $ref: '#/components/headers/X-RateLimit-Reset' 500InternalServerError: content: application/problem+json: schema: $ref: '#/components/schemas/Problem' description: Service Unavailable headers: Retry-After: $ref: '#/components/headers/Retry-After' 401Unauthorized: content: application/problem+json: schema: $ref: '#/components/schemas/Problem' headers: WWW-Authenticate: $ref: '#/components/headers/WWW-Authenticate' description: Not authorized default: description: Unexpected error 400BadRequest: content: application/problem+json: schema: $ref: '#/components/schemas/Problem' description: Bad Request 503ServiceUnavailable: content: application/problem+json: schema: $ref: '#/components/schemas/Problem' description: Service Unavailable headers: Retry-After: $ref: '#/components/headers/Retry-After' x-refined-from: - interop-organization-id-verification.yaml - interop-subject-id-verification.yaml - pagopa-pdnd-attestation-organization-id-openapi.yml - pagopa-pdnd-attestation-subject-id-openapi.yml