openapi: 3.2.0 info: contact: email: federico.giuntoli@flowpay.it name: Federico Giuntoli description: Hai uno use case di pagamento complesso come pagamenti massivi, split o pagopa? termsOfService: https://www.flowpay.it/tos title: FlowPay Webhook API version: 1.0.0 servers: - url: https://app.flowpay.it/api variables: {} tags: - description: Endpoint di gestione dei webhook name: Webhook paths: /webhooks: get: description: Ottiene la lista dei webhook attivi registrati dal client per tutti i suoi tenant. parameters: [] responses: '200': content: application/json; charset=utf-8: example: - events: hello: - hello id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHooks' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyClientCredential: [] summary: Get webhooks tags: - Webhook x-summary-source: derived operationId: getWebhooks x-operation-id-source: derived /webhooks/types: get: description: Ottiene la lista dei webhook disponibili parameters: [] responses: '200': content: application/json; charset=utf-8: example: - eventDescription: hello eventName: hello necessaryAuthorizationCodeScope: null necessaryClientCredentialScope: null needsAccounts: false schema: $ref: '#/components/schemas/WebHookTypes' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: [] summary: Get webhooks types tags: - Webhook x-summary-source: derived operationId: getWebhooksTypes x-operation-id-source: derived /webhooks/{id}: delete: description: Elimina un webhook oppure elimina degli eventi associati ad un webhook. parameters: - description: identificativo del webhook example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C in: path name: id required: true schema: example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C format: uuid type: string requestBody: content: application/vnd.api+json; charset=utf-8: example: events: null schema: $ref: '#/components/schemas/WebHookDeleteRequest' required: true responses: '200': content: application/json; charset=utf-8: {} description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyClientCredential: [] summary: Delete webhooks by id tags: - Webhook x-summary-source: derived operationId: deleteWebhooksById x-operation-id-source: derived get: description: Ottiene il dettaglio di un webhook parameters: - description: identificativo del webhook example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C in: path name: id required: true schema: example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C format: uuid type: string responses: '200': content: application/json; charset=utf-8: example: createdAt: '2020-03-03T17:32:28Z' events: hello: - eventName: hello lastCalledAt: null lastError: null lastErroredAt: null numberOfErroredCalls: 12345678 numberOfSuccessfulCalls: 12345678 expiresAt: '2020-03-03T17:32:28Z' id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHookDetail' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyClientCredential: [] summary: Get webhooks by id tags: - Webhook x-summary-source: derived operationId: getWebhooksById x-operation-id-source: derived /webhooks/{id}/renew: put: description: Rinnova un webhook per altri 7 giorni rispetto al momento della chiamata parameters: - description: identificativo del webhook example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C in: path name: id required: true schema: example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C format: uuid type: string responses: '201': content: application/json; charset=utf-8: example: createdAt: '2020-03-03T17:32:28Z' events: hello: - eventName: hello lastCalledAt: null lastError: null lastErroredAt: null numberOfErroredCalls: 12345678 numberOfSuccessfulCalls: 12345678 expiresAt: '2020-03-03T17:32:28Z' id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHookDetail' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyClientCredential: [] summary: Replace webhooks by id renew tags: - Webhook x-summary-source: derived operationId: putWebhooksByIdRenew x-operation-id-source: derived /{tenantID}/webhooks: get: description: Ottiene la lista dei webhook attivi per lo specifico tenant. parameters: - description: ID dell'owner della richiesta example: 84461172-4326-4D6B-AEA7-840ED1372200 in: path name: tenantID required: true schema: example: 84461172-4326-4D6B-AEA7-840ED1372200 format: uuid type: string responses: '200': content: application/json; charset=utf-8: example: - events: hello: - hello id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHooks' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyAuthorizationCode: [] - ThirdPartyClientCredential: [] summary: Get by tenant id webhooks tags: - Webhook x-summary-source: derived operationId: getByTenantIDWebhooks x-operation-id-source: derived post: description: Crea un nuovo webhook. Se la url del webhook è già presente, vengono agganciati i nuovi eventi al webhook. parameters: - description: ID dell'owner della richiesta example: 84461172-4326-4D6B-AEA7-840ED1372200 in: path name: tenantID required: true schema: example: 84461172-4326-4D6B-AEA7-840ED1372200 format: uuid type: string requestBody: content: application/vnd.api+json; charset=utf-8: example: events: - hello expiresAt: '2020-03-03T17:32:28Z' url: hello schema: $ref: '#/components/schemas/PostWebHook' required: true responses: '201': content: application/json; charset=utf-8: example: createdAt: '2020-03-03T17:32:28Z' events: hello: - eventName: hello lastCalledAt: null lastError: null lastErroredAt: null numberOfErroredCalls: 12345678 numberOfSuccessfulCalls: 12345678 expiresAt: '2020-03-03T17:32:28Z' id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHookDetail' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyAuthorizationCode: [] - ThirdPartyClientCredential: [] summary: Create by tenant id webhooks tags: - Webhook x-summary-source: derived operationId: postByTenantIDWebhooks x-operation-id-source: derived /{tenantID}/webhooks/{id}: delete: description: Elimina gli eventi dello specifico tenant associati ad un webhook oppure parte di essi parameters: - description: ID dell'owner della richiesta example: 84461172-4326-4D6B-AEA7-840ED1372200 in: path name: tenantID required: true schema: example: 84461172-4326-4D6B-AEA7-840ED1372200 format: uuid type: string - description: identificativo del webhook example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C in: path name: id required: true schema: example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C format: uuid type: string requestBody: content: application/vnd.api+json; charset=utf-8: example: events: null schema: $ref: '#/components/schemas/WebHookDeleteRequest' required: true responses: '200': content: application/json; charset=utf-8: {} description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyAuthorizationCode: [] - ThirdPartyClientCredential: [] summary: Delete by tenant id webhooks by id tags: - Webhook x-summary-source: derived operationId: deleteByTenantIDWebhooksById x-operation-id-source: derived get: description: Ottiene il dettaglio di un webhook parameters: - description: ID dell'owner della richiesta example: 84461172-4326-4D6B-AEA7-840ED1372200 in: path name: tenantID required: true schema: example: 84461172-4326-4D6B-AEA7-840ED1372200 format: uuid type: string - description: identificativo del webhook example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C in: path name: id required: true schema: example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C format: uuid type: string responses: '200': content: application/json; charset=utf-8: example: createdAt: '2020-03-03T17:32:28Z' events: hello: - eventName: hello lastCalledAt: null lastError: null lastErroredAt: null numberOfErroredCalls: 12345678 numberOfSuccessfulCalls: 12345678 expiresAt: '2020-03-03T17:32:28Z' id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHookDetail' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyAuthorizationCode: [] - ThirdPartyClientCredential: [] summary: Get by tenant id webhooks by id tags: - Webhook x-summary-source: derived operationId: getByTenantIDWebhooksById x-operation-id-source: derived put: description: Aggiorna un webhook parameters: - description: ID dell'owner della richiesta example: 84461172-4326-4D6B-AEA7-840ED1372200 in: path name: tenantID required: true schema: example: 84461172-4326-4D6B-AEA7-840ED1372200 format: uuid type: string - description: identificativo del webhook example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C in: path name: id required: true schema: example: 0C87AA6A-FDED-41A8-97A8-FCB5231B0B0C format: uuid type: string requestBody: content: application/vnd.api+json; charset=utf-8: example: events: null expiresAt: null schema: $ref: '#/components/schemas/PutWebHook' required: true responses: '201': content: application/json; charset=utf-8: example: createdAt: '2020-03-03T17:32:28Z' events: hello: - eventName: hello lastCalledAt: null lastError: null lastErroredAt: null numberOfErroredCalls: 12345678 numberOfSuccessfulCalls: 12345678 expiresAt: '2020-03-03T17:32:28Z' id: cb15b52a-91db-41ed-81a0-764a0cc4795d url: hello schema: $ref: '#/components/schemas/WebHookDetail' description: '' '400': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta sintatticamente, body, headers, path o query params non conformi alla documentazione '401': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: Le credenziali fornite non sono sufficienti a completare la richiesta '403': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è autorizzata a procedere con le credenziali fornite '404': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta fa riferimento ad una risorsa inesistente '417': content: application/json; charset=utf-8: example: code: 12345678 errorDescription: hello errorURI: null expectedType: null field: null requestID: null service: 12345678 statusCode: 12345678 schema: $ref: '#/components/schemas/ErrorDTO' description: La richiesta non è corretta semanticamente security: - ThirdPartyAuthorizationCode: [] - ThirdPartyClientCredential: [] summary: Replace by tenant id webhooks by id tags: - Webhook x-summary-source: derived operationId: putByTenantIDWebhooksById x-operation-id-source: derived components: schemas: WebHooks: items: $ref: '#/components/schemas/WebHook' type: array Detail: properties: eventName: description: Nome dell'evento registrato example: string type: string lastCalledAt: description: Data dell'ultima chiamata (ISO 8601) example: '2020-03-03T17:32:28Z' format: date-time type: string lastError: description: Descrizione sull'ultimo errore example: string type: string lastErroredAt: description: Data dell'ultima chiamata fallita (ISO 8601) example: '2020-03-03T17:32:28Z' format: date-time type: string numberOfErroredCalls: description: Numero di chiamate fallite example: '12345678' format: int64 type: integer numberOfSuccessfulCalls: description: Numero di chiamate riuscite example: '12345678' format: int64 type: integer required: - eventName - numberOfErroredCalls - numberOfSuccessfulCalls type: object WebHook: properties: events: additionalProperties: items: example: string type: string type: array description: 'Dizionario, le chiavi sono i tenantID, i valori sono gli eventi registrati per tale tenant su questo webhook' type: object id: description: Identificativo univoco del webhook example: cb15b52a-91db-41ed-81a0-764a0cc4795d format: uuid type: string url: description: Url del webhook example: string type: string required: - id - url - events type: object PutWebHook: properties: events: description: Nuovi eventi da collegare al webhook. items: example: string type: string type: array expiresAt: description: Data di scadenza del webhook (ISO 8601). Max 1 mese rispetto al momento della chiamata example: '2020-03-03T17:32:28Z' format: date-time type: string type: object WebHookDetail: properties: createdAt: description: Data di creazione del webhook (ISO 8601) example: '2020-03-03T17:32:28Z' format: date-time type: string events: additionalProperties: items: $ref: '#/components/schemas/Detail' type: array description: 'Dizionario, le chiavi sono i tenantID, i valori sono i dettagli sull''evento' type: object expiresAt: description: Data di scadenza del webhook (ISO 8601) example: '2020-03-03T17:32:28Z' format: date-time type: string id: description: Identificativo univoco del webhook example: cb15b52a-91db-41ed-81a0-764a0cc4795d format: uuid type: string url: description: Url del webhook example: string type: string required: - id - url - createdAt - expiresAt - events type: object ErrorDTO: description: "Formato errore standard\n \nLista dei possibili codici di errore:\n\n| codice | descrizione |\n| ------ | ----------- |\n| 401 | Errore generale di codifica |\n| 402 | Campo necessario mancante |\n| 403 | Valore di un campo del tipo sbagliato |\n| 404 | Valore di un campo assente |\n| 405 | Errore di codifica sconosciuto |\n| 406 | Null pointer exception |\n| 407 | Campo necessario mancante |\n| 408 | Errore di connessione |\n| 409 | Errore di input output |\n| 410 - 428 | Errore generico con il database |\n| 429, 432, 433 | Errore di logica con il database |\n| 430 | Campo invalido |\n| 431 | Campo assente |\n| 434 | Risultati non trovati |\n| 500 | Errore generico |\n| 2000 | Tenant non specificato |\n| 2001 | Non autorizzato ad operare su questa risorsa |\n| 2002 | Impossibile eliminare il documento poiché sono presente dei pagamenti collegati |\n| 2003 | Non autorizzato a creare la risorsa |\n| 2004 | Non autorizzato ad operare su questa risorsa |\n| 2005 | Si sta provando a modificare un termine non di questo documento |\n| 2006 | Codice istant scaduto |\n| 2007 | Non autorizzato generare un codice instant |\n| 2008 | Codice instant inesistente o non autorizzato a leggerlo |\n| 2012 | Si sta provando a caricare un documento già esistente |\n| 3001 | Tenant non specificato |\n| 4001 | Tenant non specificato |\n| 5001 | Corpo richiesta mancante |\n| 5002 | Corpo richiesta non valido |\n| 5003 | Vatcode del ricevente fattura mancante |\n| 6001 | Tenant non specificato |\n| 6002 | Ricevuta non trovata |\n| 8005 | Non puoi modificare questo conto |\n| 8010 | Troppi risultati ottenuti |\n| 11001 | Non autorizzato ad accedere a questa risorsa |\n| 11002 | Si sta provando a caricare un documento già esistente |\n| 13001 | Azienda non trovata |\n| 13003 | vatcode non è valido |" properties: code: description: Codice errore example: '12345678' format: int64 type: integer errorDescription: description: Descrizione errore example: string type: string errorURI: description: URI dell'errore se presente example: string type: string expectedType: description: Nel caso di un errore di codifica indica il tipo di dato che non si è riuscito a decodificare example: string type: string field: description: Nel caso di un errore di codifica indica il campo che non si è riuscito a decodificare example: string type: string requestID: description: ID della richiesta da comunicare per poter fornire un supporto example: string type: string service: description: ID interno del servizio example: '12345678' format: int64 type: integer statusCode: description: Codice di stato HTTP example: '12345678' format: int64 type: integer required: - service - code - errorDescription - statusCode type: object WebHookTypes: items: $ref: '#/components/schemas/WebHookType' type: array WebHookDeleteRequest: properties: events: description: Lista di eventi da eliminare per tale webhook. Se non presente vengono eliminati tutti items: example: string type: string type: array type: object WebHookType: properties: eventDescription: description: Descrizione di cosa rappresenta l'evento example: string type: string eventName: description: nome dell'evento example: string type: string necessaryAuthorizationCodeScope: description: 'Scope di tipo `authorization code` necessari per attivare un webhook su tale evento. Se non presente indica che questo evento non può essere attivato tramite questo tipo di autorizzazione.' items: example: string type: string type: array necessaryClientCredentialScope: description: 'Scope di tipo `client credential` necessari per attivare un webhook su tale evento Se non presente indica che questo evento non può essere attivato tramite questo tipo di autorizzazione.' items: example: string type: string type: array needsAccounts: description: 'Indica se questo evento richiede un token abilitato alla gestione degli account dell''utente. In caso di token `authorization_code` il token deve essere stato ottenuto secondo il flusso descritto nella documentazione. In caso di token `client_credentials` il token deve essere ottenuto con lo scope `account:read`' example: 'true' type: boolean required: - eventName - eventDescription - needsAccounts type: object PostWebHook: properties: events: description: Lista di eventi da registrare sul webhook items: example: string type: string type: array expiresAt: description: Data di scadenza del webhook (ISO 8601). Max 1 mese rispetto al momento della chiamata example: '2020-03-03T17:32:28Z' format: date-time type: string url: description: Url alla quale si vuole essere contattati example: string type: string required: - events - url - expiresAt type: object securitySchemes: ThirdPartyAuthorizationCode: description: Autorizzazione oauth ottenuta da terze parti con un authorization flow flows: authorizationCode: authorizationUrl: https://core.flowpay.it/api/openid/authenticate refreshUrl: https://core.flowpay.it/api/oauth/token scopes: account:read: Operazioni di lettura sui conti bill:write: Creazione e gestione di ricevute business:read: Operazioni di lettura sulle informazioni della azienda contacts:read: Operazioni di lettura sulla rete aziendale invoice:read: Operazioni di lettura sulle fatture invoice:write: Operazioni di scrittura sulle fatture payment:read: Operazioni di lettura sui pagamenti salary:read: Operazioni di lettura sulle buste paga salary:write: Operazioni di scrittura sui salary statistic:read: Lettura dei dati statistici raggruppati transfer:read: Operazioni di lettura sui trasferimenti transfer:write: Operazioni di scrittura sui trasferimenti tokenUrl: https://core.flowpay.it/api/oauth/token type: oauth2 ThirdPartyClientCredential: description: Autorizzazione oauth ottenuta da terze parti con client credential flow flows: clientCredentials: refreshUrl: https://core.flowpay.it/api/oauth/token scopes: account:read: Operazioni di lettura sui conti account:write: Operazione di modifica sui conti authorization_intent: Creazione di intenti a consensi relativi a risorse di un utente bill: Gestione di ricevute business:read: Operazioni di lettura sulle informazioni della azienda invoice:read: Operazioni di lettura sulle fatture invoice:write: Operazioni di scrittura sulle fatture pagopa: '' payment:read: Operazioni di lettura sui pagamenti salary:read: Operazioni di lettura sulle buste paga salary:write: Operazioni di scrittura sui salary statistic:read: Lettura dei dati statistici raggruppati transfer:read: '' transfer:write: '' tokenUrl: https://core.flowpay.it/api/oauth/token type: oauth2