DevPortalPagoPA



Tabella dei contenuti

How to submit a purpose

The use of a purpose (Purpose) requires creating a draft accompanied by the risk analysis, followed by activation.

Step 1 - Create the purpose in DRAFT

The purpose must be created by indicating the e-service it will be used for, the purpose information, the load estimate, and the risk analysis.
Request
1POST /purposes
2
3{
4    "eserviceId": "fd7d6c6b-c042-4d9c-926a-d5e26c815220",
5    "riskAnalysisForm": {
6        version: 1,
7        answers: [{...}]
8    },
9    "title": "Submission of the XYZ e-service complying to ABC law",
10    "description": "<Long purpose description>",
11    "isFreeOfCharge": true,
12    "freeOfChargeReason": "I am a Public Administration",
13    "dailyCalls": "1000"
14}
15
Note: through the PDND back office, a developer tool is available that allows generating the riskAnalysisForm field value starting from the visual compilation of the form. It is available under Developers Tools > Risk analysis export.
If successful, the creation request produces a Purpose with a DRAFT version.
Response
1{
2    "id": "17bfba0b-85f2-44e1-9bfc-497605a0d8c7",
3    "eserviceId": "fd7d6c6b-c042-4d9c-926a-d5e26c815220",
4    "consumerId": "efea2507-08df-4a5d-b4bf-263763ae03ad",
5    "title": "Submission of the XYZ e-service complying to ABC law",
6    "description": "<Long purpose description>",
7    "createdAt": "2025-06-01T00🕛️34Z",
8    "isRiskAnalysisValid": true,
9    "isFreeOfCharge": true,
10    "freeOfChargeReason": "I am a Public Admiinistration",
11    "currentVersion": {
12        "id": "b9297a6e-2d8a-4b43-b1e6-a1c74d55f1ea",
13        "state": "DRAFT",
14        "createdAt": "2025-06-01T00🕛️34Z",
15        "dailyCalls": "1000"
16    }
17}
18

Step 2 - Activate the purpose

Once completed, the Purpose must be submitted for activation.
Request
1POST /purposes/17bfba0b-85f2-44e1-9bfc-497605a0d8c7/activate
2
3{}
4

Case 1 - Load estimate below the maximum threshold

If the load estimate is below the thresholds set by the e-service version (EServiceDescriptor), the purpose is activated.
Response
1{
2    "id": "17bfba0b-85f2-44e1-9bfc-497605a0d8c7",
3    "eserviceId": "fd7d6c6b-c042-4d9c-926a-d5e26c815220",
4    "consumerId": "efea2507-08df-4a5d-b4bf-263763ae03ad",
5    "title": "Submission of the XYZ e-service complying to ABC law",
6    "description": "<Long purpose description>",
7    "createdAt": "2025-06-01T00🕛️34Z",
8    "updatedAt": "2025-06-02T00🕛️34Z",
9    "isRiskAnalysisValid": true,
10    "isFreeOfCharge": true,
11    "freeOfChargeReason": "I am a Public Administration",
12    "currentVersion": {
13        "id": "b9297a6e-2d8a-4b43-b1e6-a1c74d55f1ea",
14        "state": "ACTIVE",
15        "createdAt": "2025-06-01T00🕛️34Z",
16        "updatedAt": "2025-06-02T00🕛️34Z",
17        "dailyCalls": "1000"
18    }
19}
20

Case 2 - Load estimate above the maximum threshold

If the load estimate is above the thresholds set by the e-service version (EServiceDescriptor), the Purpose goes into a WAITING_FOR_APPROVAL state and requires confirmation by the producer.
Response
1{
2    "id": "17bfba0b-85f2-44e1-9bfc-497605a0d8c7",
3    "eserviceId": "fd7d6c6b-c042-4d9c-926a-d5e26c815220",
4    "consumerId": "efea2507-08df-4a5d-b4bf-263763ae03ad",
5    "title": "Submission of the XYZ e-service complying to ABC law",
6    "description": "<Long purpose description>",
7    "createdAt": "2025-06-01T00🕛️34Z",
8    "updatedAt": "2025-06-02T00🕛️34Z",
9    "isRiskAnalysisValid": true,
10    "isFreeOfCharge": true,
11    "freeOfChargeReason": "Sono una Pubblica Amministrazione",
12    "waitingForApprovalVersion": {
13        "id": "b9297a6e-2d8a-4b43-b1e6-a1c74d55f1ea",
14        "state": "WAITING_FOR_APPROVAL",
15        "createdAt": "2025-06-01T00🕛️34Z",
16        "updatedAt": "2025-06-02T00🕛️34Z",
17        "dailyCalls": "1000"
18    }
19}
20

Hai bisogno di aiuto?

Apri un ticket utilizzando l’apposita funzione all’interno della tua Area Riservata

Dicci cosa ne pensi

Per segnalare problemi o dare feedback, puoi aprire una segnalazione su Github