ATTENZIONE: Il progetto attualmente è ancora in fase di sviluppo e potrebbe venire arricchito con altre funzioni.

L'endpoint di riferimento si trova all'indirizzo https://api.bipro.it/pm2/ws, pertanto le richieste sono nel formato https://api.bipro.it/pm2/ws/operazione/.


Autenticazione

I parametri ID e UID, che vanno inseriti in tutte le richieste come parametri GET nella URL, identificano l'utente di BiPro che esegue la chiamata.

Tale utente deve essere un utente attivo in BiPro e deve avere profilo "Admin".

Se hai un account già attivo di BiPro accedi al programma e ritorna su questa pagina per visualizzare i codici di autorizzazione alle API e i link ai web service di esempio della tua azienda.
Il limite delle chiamate alle API è di 30 al minuto e 500 all'ora. Se hai bisogno di estendere questi limiti contattaci
Utilizza il web service richiesta generica per visualizzare il numero di chiamate ancora a disposizione.

Tutte le richieste restituiscono in risposta un tracciato in formato JSON.
Nel caso in cui la richiesta non vada a buon fine viene restituito un tracciato analogo al seguente:

{ 
	"valid": false, 
	"message": "dettaglio errore"
}

La richiesta generica contiene una lista di errori comuni a tutte le richieste, mentre eventuali altri errori specifici ad una funzione sono elencati nella sezione della funzione stessa.

Formato dei parametri

Tipo Descrizione Esempio
string Stringa "stringa"
integer Numero intero "123"
double Numero decimale "123,45"
boolean Variabile booleana "true" o "false"
date Data nel formato GG/MM/AAAA "01/01/2024"
time Orario nel formato HH:MM "12:34"
Richieste
  • GET /info/ Modello richiesta
  • URL richiesta
    https://api.bipro.it/pm2/ws/info/
    Descrizione e note
    Modello di una richiesta generica API di BiPro. Utilizzarla per verificare la correttezza dei tuoi parametri di autenticazione e il numero di chiamate alle API ancora a disposizione entro 60 secondi e 60 minuti.
    La chiamata a questo specifico web service "info" non viene considerato nel calcolo del conteggio delle chiamate disponibili.
    Parametri richiesta
    Parametro Modalità Tipo Note
    ID GET integer Identificativo dell'utente che esegue la chiamata
    UID GET string Codice di 36 caratteri relativo all'utente
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	idAzienda (integer): ID assegnato da BiPro all'azienda, 
    	RagioneSociale (string): Nome azienda, 
    	DataScadenzaLicenza (date): Data scadenza licenza,
    	username (string): Username dell'utente che esegue la richiesta,
    	API_DisponibiliMinuto (integer): numero di chiamate ai web service ancora disponibili nell'arco di 60 secondi,
    	API_DisponibiliOra (integer): numero di chiamate ai web service ancora disponibili nell'arco di 60 minuti
    }
    
    Esempio
    { 
    	"valid": true, 
    	"idAzienda": "1", 
    	"RagioneSociale": "Bianchi s.r.l.", 
    	"DataScadenzaLicenza": "31/12/2024",
    	"username": "rossi.mario",
    	"API_DisponibiliMinuto": "28",
    	"API_DisponibiliOra": "497"
    }
    
    Messaggi di errore specifici di questo web-service
    • Licenza scaduta il GG/MM/AAAA
    • Parametri ID e UID non validi
    Possibili messaggi di errore generici per tutti i web-service
    • Per le chiamate utilizzare il dominio api.bipro.it
    • Per le chiamate utilizzare il protocollo HTTPS (https://api.bipro.it)
    • Lunghezza massima [Campo] X caratteri
    • Lunghezza massima [Campo] X caratteri
    • Nel campo [Campo] sono consentiti solo caratteri alfabetici
    • Nel campo [Campo] sono consentiti solo caratteri alfanumerici e underscore
    • Il campo [Campo] deve essere nel formato dd/mm/yyyy
    • Il campo [Campo] deve essere nel formato HH:MM
    • Il campo [Campo] deve avere un valore numerico
    • Il campo [Campo] deve essere un numero intero
    • Il campo [Campo] deve avere come valore true o false
  • GET /get_sedi/ Elenco sedi aziendali
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_sedi/
    Descrizione e note
    Restituisce l'elenco delle sedi aziendali censite per la tua azienda in BiPro con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idSede (integer): ID della sede,
    	Sede (string): Nome della sede
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idSede": "100",
    	"Sede": "Milano"
    },
    { 
    	"idSede": "101",
    	"Sede": "Roma"
    },
    ...
    ]
    
  • GET /get_profili_utenti/ Profili utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_profili_utenti/
    Descrizione e note
    Restituisce i possibili profili utenti con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idProfiloUtente (integer): ID del profilo,
    	ProfiloUtente (string): Nome del profilo utente
    },
    { ... }
    ]
    
    Esempio
    [
    	{ 
    		"idProfiloUtente": "1",
    		"ProfiloUtente": "Admin"
    	},
    	{ 
    		"idProfiloUtente": "2",
    		"ProfiloUtente": "Operatore"
    	},
    	{ 
    		"idProfiloUtente": "3",
    		"ProfiloUtente": "Project Manager"
    	},
    	{ 
    		"idProfiloUtente": "4",
    		"ProfiloUtente": "Operatore con accesso completo ai report"
    	}
    ]
    
  • GET /get_utente/ Dati di un singolo cliente
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_utente/
    Descrizione e note
    Restituisce le informazioni di un utente. Per l'identificazione dell'utente deve essere fornito almeno uno dei parametri elencati di seguito
    Parametri richiesta
    Parametro Modalità Tipo Note
    idUtente GET integer ID assegnato da BiPro all'utente
    Username GET string
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	Attivo (boolean): true se è un utente attivo (se false non può accedere e compilare il timesheet),
    	idProfiloUtente (integer): ID del profilo utente,
    	ProfiloUtente (string): Profilo utente, 
    	CodiceUtenteExt (string): Codice del utente esterno (es. assegnato dal gestionale), 
    	idSede (integer): ID della sede di riferimento per l'utente,
    	Sede (string): Sede di riferimento per l'utente, 
    	Cognome (string): Cognome, 
    	Nome (string): Nome, 
    	Username (string): Username, 
    	idResponsabile (integer): ID dell'utente responsabile,
    	Responsabile (string): Nome e cognome del reponsabile,
    	NotaSpese (boolean): true se abilitato alla compilazione delle note spese,
    	CodiceBadge (string): Codice del badge utente, 
    	NumeroRapporto  (string): Numero rapporto del contratto dell'utente, 
    	CodiceDipendente (string): Codice dipendente, 
    	TipoCosto (string): può assumere i valori "mensile" o "orario" a seconda della modalità scelta per la determinazione del costo aziendale,
    	CostoKmUtente (double): Costo chilometrico dell'utente (per rimborso Km percorsi); se non valorizzato viene applicato il costo definito a livello aziendale,
    	CF (string): Codice fiscale, 
    	Sesso (string): Sesso, 
    	DataNascita (date): Data di nascita, 
    	LuogoNascita (string): Luogo di nascita, 
    	Nazionalita (string): Nazionalità,
    	Residenza (string): Residenza,
    	Telefono (string): Telefono,
    	Cellulare (string): Cellulare,
    	Email (string): Email, 
    	IBAN (string): IBAN, 
    	Banca (string): Banca,
    	CostiOrari (array): Lista dei costi orari definiti per l'utente con relativo periodo di validità (solo se utente ha impostato come tipologia di costo 'Orario')
    }
    
    CostiOrari
    {
    	DataDa (date): data di inizio validità del costo orario,
    	DataA (date): data di fine validità del costo orario,
    	CostoOrario (double): Costo orario
    }
    
    Esempio
    { 
    	"valid": true, 
    	"idUtente": "66", 
    	"Attivo": true,
    	"idProfiloUtente": "1", 
    	"ProfiloUtente": "Admin", 
    	"CodiceUtenteExt": "ABC123", 
    	"idSede": "1", 
    	"Sede": "Milano", 
    	"Cognome": "Neri", 
    	"Nome": "Matteo", 
    	"Username": "matteo", 
    	"idResponsabile": "69", 
    	"Responsabile": "Bianchi Luigi", 
    	"NotaSpese": true,
    	"CodiceBadge": "999", 
    	"NumeroRapporto": "X111", 
    	"CodiceDipendente": "Y222", 
    	"TipoCosto": "mensile",
    	"CostoKmUtente": "0,500",
    	"CF": "NERLUI79B11F205V", 
    	"Sesso": "M", 
    	"DataNascita": "11/02/1979",
    	"LuogoNascita": "Milano", 
    	"Nazionalita": "Italiana", 
    	"Residenza": "Via Roma 1, Milano", 
    	"Telefono": "02.1234567", 
    	"Cellulare": "329.00000000", 
    	"Email": "matteo.neri@bipro.it", 
    	"IBAN": "IT000000000000000000000000000", 
    	"Banca": "Banca Intesa Sanpaolo",
    	"CostiOrari": [
    		{
    			"DataDa": "01/01/2020",
    			"DataA": "31/12/2020", 
    			"CostoOrario": "30,000"
    		},
    		{
    			"DataDa": "01/01/2021",
    			"DataA": "31/12/2030", 
    			"CostoOrario": "35,000"
    		}]
    }
    
    
    
    Messaggi di errore
    • Utente non trovato
    • Passare almeno un parametro di ricerca tra idUtente e Username
  • GET /get_utenti/ Elenco utenti
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_utenti/
    Descrizione e note
    Restituisce la lista degli utenti con le informazioni principali.
    Risposta (in caso di successo)
    [
    { 
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	UtenteUID (unique identifier): Codice identificatore univoco assegnato da BiPro all'utente,
    	Attivo (boolean): true se è un utente attivo (se false non può accedere e compilare il timesheet),
    	idProfiloUtente (integer): ID del profilo utente,
    	ProfiloUtente (string): Profilo utente, 
    	idSede (integer): ID della sede di riferimento per l'utente,
    	Sede (string): Sede di riferimento per l'utente, 
    	Cognome (string): Cognome, 
    	Nome (string): Nome, 
    	Username (string): Username,
    	CostoOrarioAttuale (double): Costo orario valido alla data odierna (solo se utente ha impostato come tipologia di costo 'Orario')
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idUtente": "752", 
    	"UtenteUID": "16365A20-9497-45AC-A2B5-06FA325D0F61", 
    	"Attivo": true,
    	"idProfiloUtente": "3", 
    	"ProfiloUtente": "Operatore", 
    	"idSede": "1", 
    	"Sede": "Milano", 
    	"Cognome": "Rossi", 
    	"Nome": "Luigi", 
    	"Username": "rossi.mario",
    	"CostoOrarioAttuale": "30,00"
    },
    { 
    	"idUtente": "954", 
    	"UtenteUID": "47622448-YT85-4FED-AB46-13079B1739C5", 
    	"Attivo": true,
    	"idProfiloUtente": "2", 
    	"ProfiloUtente": "Operatore", 
    	"idSede": "1", 
    	"Sede": "Milano", 
    	"Cognome": "Verdi", 
    	"Nome": "Antonio", 
    	"Username": "verdi.antonio",
    	"CostoOrarioAttuale": ""
    }
    ]
    
    Messaggi di errore
    • Nessun utente trovato
  • POST /set_utente/ Crea/Aggiorna utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_utente/
    Descrizione e note
    Crea un utente o aggiorna le informazioni di un utente esistente. Per l'identificazione dell'utente deve essere fornito il parametro idUtente.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza min-max Note
    idUtente POST integer ID assegnato da BiPro all'utente; identifica l'utente di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo utente
    Attivo POST boolean true=attivo; false=non attivo; obbligatorio
    idProfiloUtente POST integer ID del profilo utente (cfr web-service get_profili_utenti)
    CodiceUtenteExt POST string max 100 Codice del utente esterno (es. assegnato dal gestionale)
    idSede POST integer ID della sede di riferimento per l'utente (cfr web-service get_sedi); opzionale da utilizzare nel caso sia attiva l'opzione multi-sede, altrimenti BiPro assegnerà in automatico la prima o unica sede censita nel programma
    Cognome POST string min 1, max 50
    Nome POST string min 1, max 50
    Username POST string min 6, max 20, solo caratteri alfanumerici, il punto e underscore
    Password POST string min 6, max 20, solo caratteri alfanumerici, il punto e underscore Da valorizzare solo per nuovi utenti
    idResponsabile POST integer ID dell'utente responsabile (campo idUtente del web-service get_utente)
    NotaSpese POST boolean true se abilitato alla compilazione delle note spese; default=false
    CodiceBadge POST string max 32 Codice del badge utente
    NumeroRapporto POST string max 20 Numero rapporto del contratto dell'utente
    CodiceDipendente POST string max 20 Codice dipendente
    TipoCosto POST string può assumere i valori "mensile" (default) o "orario" a seconda della modalità scelta per la determinazione del costo aziendale
    CostoKmUtente POST double Costo chilometrico dell'utente (per rimborso Km percorsi); se non valorizzato viene applicato il costo definito a livello aziendale
    CF POST string max 16 Codice fiscale
    Sesso POST string max 16 può assumere i valori "M" (maschio) o "F" (femmina)
    DataNascita POST date Data di nascita
    LuogoNascita POST string max 50 Luogo di nascita
    Nazionalita POST string max 50 Nazionalità
    Residenza POST string max 100
    Telefono POST string max 50
    Cellulare POST string max 50
    Email POST string max 100
    IBAN POST string max 27
    Banca POST string max 50
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Utente creato/aggiornato, 
    	idUtente (integer): ID assegnato da BiPro all'utente  
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Utente creato",
    	"idUtente": "1"
    }
    
    Messaggi di errore
    • Parametro idUtente non valido (in caso di modifica)
    • Username non disponibile
    • Numero massimo di utenti attivi raggiunto
    • Nel campo Username sono consentiti solo caratteri alfanumerici, il trattino basso e il punto
    • Nel campo Password sono consentiti solo caratteri alfanumerici, il trattino basso e il punto
  • POST /set_password/ Aggiorna password per un utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_password/
    Descrizione e note
    Aggiorna la password di un utente esistente. Per l'identificazione dell'utente deve essere fornito il parametro idUtente.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza min-max Note
    idUtente POST integer ID assegnato da BiPro all'utente; identifica l'utente di cui eseguire l'aggiornamento della passoword; obbligatorio
    Password POST string min 6, max 20, solo caratteri alfanumerici, il punto e underscore Da valorizzare solo per nuovi utenti
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Password aggiornata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Password aggiornata"
    }
    
    Messaggi di errore
    • Parametro idUtente non valido (in caso di modifica)
    • Nel campo Password sono consentiti solo caratteri alfanumerici, il trattino basso e il punto
  • POST /del_utente/ Elimina utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_utente/
    Descrizione e note
    Elimina un utente. Per l'identificazione dell'utente deve essere fornito il parametro idUtente (in modalità POST).
    Non è possibile eliminare utenti con profilo utente Admin.
    Parametri richiesta
    Parametro Modalità Tipo Note
    idUtente POST integer ID assegnato da BiPro all'utente; identifica l'utente da eliminare (cfr web-service get_utenti o get_utente)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Utente eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Utente eliminato"
    }
    
    Messaggi di errore
    • Il parametro idUtente deve contenere un valore numerico intero
    • Utente non trovato, verificare il campo idUtente
    • Utente con profilo Admin non eliminabile
  • GET /get_cliente/ Dati di un singolo cliente
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_cliente/
    Descrizione e note
    Restituisce le informazioni di un cliente. Per l'identificazione del cliente deve essere fornito almeno uno dei parametri elencati di seguito
    Parametri richiesta
    Parametro Modalità Tipo Note
    idCliente GET integer ID assegnato da BiPro al cliente
    CodiceCliente GET string Codice del cliente (alfanumerico)
    PI GET string Partita iva del cliente
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	CodiceCliente (string): Codice cliente, 
    	CodiceClienteExt" (integer): Codice del cliente esterno (es. assegnato dal gestionale), 
    	RagioneSociale (string): Nome o ragione sociale del cliente, 
    	Referente (string): Nome referente, 
    	PI (string): Partita IVA, 
    	CF (string): Codice fiscale, 
    	CodiceImpresa (string): Codice impresa (es. assegnato dalla camera di commercio), 
    	idCanale (string): ID assegnato da BiPro as canale di provenienza, 
    	Canale (string): Canale di provenienza, 
    	Telefono (string): Telefono, 
    	Fax (string): Fax, 
    	Email (string): Email, 
    	SitoWeb (string): Sito internet, 
    	Indirizzo (string): Indirizzo, 
    	CAP (string): CAP, 
    	Citta (string): Città, 
    	Provincia (string): Sigla della provincia, 
    	Nazione (string): Nazione, 
    	TariffaOrariaCliente (double): Tariffa oraria predefinita per il cliente,
    	Antiriciclaggio: (boolean): true se ricevuta documentazione relativa all'antiriciclaggio, 
    	Privacy: (boolean): true se ricevuta autorizzazione privacy
    }
    
    Esempio
    { 
    	"valid": true, 
    	"idCliente": "1", 
    	"CodiceCliente": "BIA", 
    	"CodiceClienteExt": "123", 
    	"RagioneSociale": "Bianchi srl", 
    	"Referente": "Rossi Mario", 
    	"PI": "01234567891", 
    	"CF": "01234567891", 
    	"CodiceImpresa": "MI-1234", 
    	"idCanale": "1", 
    	"Canale": "Sito internet", 
    	"Telefono": "021234567", 
    	"Fax": "021234567", 
    	"Email": "emai@cliente.it", 
    	"SitoWeb": "www.cliente.it", 
    	"Indirizzo": "Via Italia 18", 
    	"CAP": "20100", 
    	"Citta": "MILANO",
    	"Provincia": "MI",
    	"Nazione": "Italia",
    	"Antiriciclaggio": "false",
    	"Privacy": "true"
    }
    
    Messaggi di errore
    • Cliente non trovato
    • Passare almeno un parametro di ricerca tra idCliente, CodiceCliente o PI
  • GET /get_clienti/ Elenco clienti
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_clienti/
    Descrizione e note
    Restituisce la lista dei clienti con le informazioni principali.
    Il web service suddivide i risultati in pagine ciascuna con 100 progetti; utilizzare il parametro NumeroPagina per scorrere tra le pagine dei risultati.
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1)
    Risposta (in caso di successo)
    [
    { 
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	CodiceCliente (string): Codice cliente, 
    	CodiceClienteExt (integer): codice del cliente dell'azienda, 
    	RagioneSociale (string): Nome o ragione sociale del cliente
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idCliente": "1",
    	"CodiceCliente": "ROS", 
    	"CodiceClienteExt": "456", 
    	"RagioneSociale": "Rossi s.r.l."
    },
    { 
    	"idCliente": "2",
    	"CodiceCliente": "BIA", 
    	"CodiceClienteExt": "789", 
    	"RagioneSociale": "Bianchi S.p.A."
    }
    ]
    
    Messaggi di errore
    • Nessun cliente trovato
  • POST /set_cliente/ Crea/Aggiorna cliente
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_cliente/
    Descrizione e note
    Crea un cliente o aggiorna le informazioni di un cliente esistente. Per l'identificazione del cliente deve essere fornito il parametro idCliente.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza min-max Note
    idCliente POST integer ID assegnato da BiPro al cliente; identifica il cliente di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo cliente
    RagioneSociale POST string min 1, max 250 Nome del cliente
    CodiceCliente POST string min 2, max 10. Solo caratteri alfanumerici, il meno e il trattino basso Codice del cliente
    CodiceClienteExt POST integer Codice del cliente esterno (es. assegnato dal gestionale)
    idCanale POST integer ID assegnato da BiPro al canale di provenienza (cfr web-service get_canali)
    Referente POST string max 250
    PI POST string max 20 Partita iva / VAT ID
    CF POST string max 20 Codice fiscale / Tax Code
    CodiceImpresa POST string max 20 Es. Codice camera di commercio
    Indirizzo POST string max 250
    Citta POST string max 100
    CAP POST string max 10
    PV POST string max 2 Sigla della provincia
    Nazione POST string max 100
    Telefono POST string max 50
    FAX POST string max 50
    Email POST string max 100
    SitoWeb POST string max 100
    TariffaOrariaCliente POST double Tariffa oraria predefinita da applicare al cliente
    NoteCliente POST string max 500
    Antiriciclaggio POST boolean impostare a true se ricevuta documentazione relativa all'antiriciclaggio
    Privacy POST boolean impostare a true se ricevuta autorizzazione privacy
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Cliente creato/aggiornato, 
    	idCliente (integer): ID assegnato da BiPro al cliente  
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Cliente creato",
    	"idCliente": "1"
    }
    
    Messaggi di errore
    • Cliente non trovato, verificare il campo idCliente (in caso di modifica)
    • Esiste già in BiPro un cliente con la partita iva indicata (in caso di creazione, cioè quando idCliente non è valorizzato)
  • POST /del_cliente/ Elimina cliente
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_cliente/
    Descrizione e note
    Elimina un cliente. Per l'identificazione del cliente deve essere fornito il parametro idCliente (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idCliente POST integer ID assegnato da BiPro al cliente; identifica il cliente da eliminare (cfr web-service get_clienti o get_cliente)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Cliente eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Cliente eliminato"
    }
    
    Messaggi di errore
    • Il parametro idCliente deve contenere un valore numerico intero
    • Cliente non trovato, verificare il campo idCliente
  • GET /get_fornitore/ Dati di un singolo fornitore
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_fornitore/
    Descrizione e note
    Restituisce le informazioni di un fornitore. Per l'identificazione del fornitore deve essere fornito almeno uno dei parametri elencati di seguito
    Parametri richiesta
    Parametro Modalità Tipo Note
    idFornitore GET integer ID assegnato da BiPro al fornitore
    PI GET string Partita iva del fornitore
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	idFornitore (integer): ID assegnato da BiPro al fornitore,
    	RagioneSociale (string): Nome o ragione sociale del fornitore, 
    	Referente (string): Nome referente, 
    	PI (string): Partita IVA, 
    	CF (string): Codice fiscale, 
    	Telefono (string): Telefono, 
    	Fax (string): Fax, 
    	Email (string): Email, 
    	PEC (string): PEC,
    	CodiceDestinatario (string): Codice SDI,
    	SitoWeb (string): Sito internet, 
    	Indirizzo (string): Indirizzo, 
    	CAP (string): CAP, 
    	Citta (string): Città, 
    	Provincia (string): Sigla della provincia, 
    	NoteFornitore (string): Note,
    	StatoFornitore (string): Stato di qualifica del fornitore, 
    	DataQualifica (date): Data di qualifica del fornitore, 
    	IBAN (string): IBAN,
    	ClasseMerceologica (string): Classe merceologica
    }
    
    Esempio
    { 
    	"valid": true, 
    	"idFornitore": "2", 
    	"RagioneSociale": "Verdi s.r.l.", 
    	"Referente": "Rossi Mario", 
    	"PI": "00000000000", 
    	"CF": "00000000000", 
    	"Telefono": "02.01234567", 
    	"Fax": "02.01234567", 
    	"Email": "verdi@bipro.it", 
    	"PEC": "verdi@pec.it", 
    	"CodiceDestinatario": "AB12345", 
    	"SitoWeb": "www.verdi.it", 
    	"Indirizzo": "Via Roma 1", 
    	"CAP": "20100", 
    	"Citta": "Milano",
    	"Provincia": "MI",
    	"NoteFornitore": "Descrizione fornitore",
    	"StatoFornitore": "Qualificato",
    	"DataQualifica": "01/01/2024",
    	"IBAN": "", 
    	"ClasseMerceologica": "Imballaggi"
    }
    
    Messaggi di errore
    • Fornitore non trovato
    • Passare almeno un parametro di ricerca tra idFornitore e PI
  • GET /get_fornitori/ Elenco fornitori
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_fornitori/
    Descrizione e note
    Restituisce la lista dei fornitori con il relativo ID.
    Il web service suddivide i risultati in pagine ciascuna con 100 progetti; utilizzare il parametro NumeroPagina per scorrere tra le pagine dei risultati.
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1)
    Risposta (in caso di successo)
    [
    { 
    	idFornitore (integer): ID assegnato da BiPro al fornitore,
    	RagioneSociale (string): Nome o ragione sociale del fornitore,
    	PI (string): PI del fornitore
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idFornitore": "1",
    	"RagioneSociale": "Rossi s.r.l.",
    	"PI": "01234567890"
    },
    { 
    	"idFornitore": "2",
    	"RagioneSociale": "Bianchi S.p.A.",
    	"PI": "01234567891"
    }
    ]
    
    Messaggi di errore
    • Nessun fornitore trovato
  • POST /set_fornitore/ Crea/Aggiorna fornitore
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_fornitore/
    Descrizione e note
    Crea un fornitore o aggiorna le informazioni di un fornitore esistente. Per l'identificazione del fornitore deve essere fornito il parametro idFornitore.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza min-max Note
    idFornitore POST integer ID assegnato da BiPro al fornitore; identifica il fornitore di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo fornitore
    RagioneSociale POST string min 1, max 250 Nome del fornitore
    Referente POST string max 250
    PI POST string max 11 Partita iva
    CF POST string max 16 Codice fiscale
    Indirizzo POST string max 250
    Citta POST string max 100
    CAP POST string max 10
    PV POST string max 2 Sigla della provincia
    Telefono POST string max 50
    FAX POST string max 50
    Email POST string max 100
    PEC POST string max 100
    CodiceDestinatario POST string max 20 Codice SDI
    SitoWeb POST string max 100
    NoteFornitore POST string max 500 Note libere
    idStatoFornitore POST integer Stato di qualifica del fornitore: 1=In fase di qualifica; 2=Qualificato; 3=Sospeso
    DataQualifica POST date Data di qualificazione del fornitore
    IBAN POST string max 27
    ClasseMerceologica POST string max 100 Classe merceologica
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Fornitore creato/aggiornato, 
    	idFornitore (integer): ID assegnato da BiPro al fornitore  
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Fornitore creato",
    	"idFornitore": "1"
    }
    
    Messaggi di errore
    • Fornitore non trovato, verificare il campo idFornitore (in caso di modifica)
    • Esiste già in BiPro un fornitore con la partita iva indiata (in caso di creazione, cioè quando idFornitore non è valorizzato)
  • POST /del_fornitore/ Elimina fornitore
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_fornitore/
    Descrizione e note
    Elimina un fornitore. Per l'identificazione del fornitore deve essere fornito il parametro idFornitore (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idFornitore POST integer ID assegnato da BiPro al fornitore; identifica il fornitore da eliminare (cfr web-service get_fornitori o get_fornitore)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Fornitore eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Fornitore eliminato"
    }
    
    Messaggi di errore
    • Il parametro idFornitore deve contenere un valore numerico intero
    • Fornitore non trovato, verificare il campo idFornitore
  • GET /get_progetto/ Dati di un singolo progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_progetto/
    Descrizione e note
    Restituisce le informazioni di un progetto. Per l'identificazione del progetto deve essere fornito almeno uno dei parametri elencati di seguito
    Parametri richiesta
    Parametro Modalità Tipo Note
    idProgetto GET integer ID assegnato da BiPro al progetto
    CodiceProgetto GET string Codice del progetto (alfanumerico)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	idProgetto (integer): ID assegnato da BiPro al progetto,
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	idStatoProgetto (integer): ID stato del progetto,
    	StatoProgetto (string): Stato del progetto, 
    	CodiceProgetto (string): Codice del progetto, 
    	CodiceProgettoExt (integer): Codice del progetto esterno (es. assegnato dal gestionale aziendale), 
    	FeriePermessi (boolean): true se il progetto è riferito alle assenze (Ferie/Permessi/Malattie), 
    	RagioneSociale (string): Nome o ragione sociale del cliente, 
    	Progetto (string): Titolo del progetto, 
    	DescrizioneProgetto (string): Descrizione del progetto, 
    	DataInizioPrevista (date): Data prevista di inizio progetto, 
    	DataFinePrevista (date): Data prevista di fine progetto, 
    	GiorniProgettoPrevisti (double): Giorni previsti di progetto (da 8 ore), 
    	TotOreProgetto (double): Ore dichiarate sul progetto, 
    	TotGiorniProgetto (double): Giorni dichiarati sul progetto (da 8 ore), 
    	TotOreProgettoOggi (double): Ore dichiarate sul progetto fino alla data odierna (esclude eventuali attività future pianificate), 
    	TotGiorniProgettoOggi (double): Giorni dichiarati sul progetto fino alla data odierna (esclude eventuali attività future pianificate), 
    	AvanzamentoPercentualeProgetto (double): Percentuale giorni dichiarati rispetto ai giorni previsti, 
    	TariffaOrariaProgetto (double): Tariffa oraria predefinita per il progetto,
    	RiferimentoContratto (string): Riferimento al contratto, 
    	RiferimentoOfferta (string): Riferimento all'offerta, 
    	Sede (string): Sede di riferimento per il progetto, 
    	Canale (string): Canale di provenienza del cliente, 
    	CodiceCliente (string): Codice cliente, 
    	idSettore (integer): ID assegnato da BiPro al Settore, 
    	Settore (string): Settore, 
    	idAreaBusiness (integer): ID assegnato da BiPro all'area di business, 
    	AreaBusiness (string): Area di business, 
    	idTipoProgetto (integer): ID assegnato da BiPro alla tipologia di progetto, 
    	TipoProgetto (string): Tipologia di progetto, 
    	idContratto (integer): ID assegnato da BiPro al contratto, 
    	CodiceContratto (string): Codice del contratto, 
    	DataContratto (date): Data del contratto,
    	TipiAttivita (array): Lista delle tipologie di attività assegnate al progetto,
    	Utenti (array): Lista degli utenti assegnati al progetto con relative informazioni,
    	Attivita (array): Lista delle attività di progetto,
    	Ricavi (array): Lista dei ricavi abbinati al progetto,
    	FattureAttive (array): Lista delle fatture attive abbinate al progetto,
    	Costi (array): Lista dei costi abbinati al progetto,
    	FatturePassive (array): Lista delle fatture passive abbinate al progetto
    }
    
    TipiAttivita
    {
    	idTipoAttivita (integer): ID assegnato da BiPro alla tipologia di attivià,
    	TipoAttivita (string): Tipologia di attività
    }
    
    Utenti
    {
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	Cognome (string): Cognome, 
    	Nome (string): Nome, 
    	Username (string): Username dell'utente,
    	PM (boolean): true se l'utente è un PM del progetto, 
    	TariffaOraria (double): Tariffa dell'utente per il progetto (se non valorizzata viene considerata la tariffa generica del progetto o dell'utente), 
    	OreAssegnate (double): Ore assegnate all'utente sul progetto, 
    	OreLavorate (double): Ore dichiarate sul progetto da parte dell'utente
    }
    
    Attivita
    {
    	idAttivita (integer): ID assegnato da BiPro all'attività del progetto,
    	idStatoAttivita (integer): ID stato dell'attività,
    	StatoAttivita (string): Stato dell'attività, 
    	CodiceAttivita (string): Codice dell'attività, 
    	Attivita (string): Denominazione dell'attività, 
    	TipoAssenza (string): Tipologia assenza (Ferie/Ex Fest/ROL) se progetto di tipo Ferie/Permessi/Malattie, 
    	
    	DataInizioPrevista (date): Data prevista di inizio dell'attività, 
    	DataFinePrevista (date): Data prevista di fine dell'attività, 
    	GiorniAttivitaPrevisti (double): Giorni previsti di lavoro per l'attività (da 8 ore), 
    	TotOreAttivita (double): Ore dichiarate sull'attività, 
    	AvanzamentoPercentualeAttivita (double): Percentuale giorni dichiarati rispetto ai giorni previsti, 
    	CostoBudgetAttivita (double): Costo a budget per l'attività, 
    	RicavoBudgetAttivita (double): Ricavi a budget per l'attività
    }
    
    Ricavi
    {
    	idRicavo (integer): ID assegnato da BiPro al ricavo,
    	DataRicavo (date): Data prevista del ricavo, 
    	ImponibileRicavo (double): Imponibile del ricavo, 
    	Descrizione (string): Descrizione del ricavo, 
    	Note (string): Ulteriori annotazioni del ricavo
    }
    
    FattureAttive
    {
    	idFatturaAttiva (integer): ID assegnato da BiPro alla fattura attiva,
    	idRicavo (integer): ID del ricavo a cui la fattura si riferisce,
    	DataFattura (date): Data della fattura, 
    	NrFattura (string): Numero della fattura, 
    	Imponibile (double): Totale imponibile della fattura, 
    	Pagato (double): Totale pagato, 
    	StatoFattura (string): Stato della fattura, 
    	DataScadenza (date): Data di scadenza della fattura, 
    	Descrizione (string): Descrizione della fattura
    }
    
    Costi
    {
    	idCosto (integer): ID assegnato da BiPro al costo,
    	DataCosto (date): Data prevista del costo, 
    	Imponibile (double): Imponibile del costo, 
    	Descrizione (string): Descrizione del costo, 
    	Fornitore (string): Ragione sociale del fornitore,
    	Tipologia (string): Tipo di costo
    }
    
    FatturePassive
    {
    	idFatturaPassiva (integer): ID assegnato da BiPro alla fattura passiva,
    	idCosto (integer): ID del costo a cui la fattura si riferisce,
    	Fornitore (string): Ragione sociale del fornitore,
    	DataFattura (date): Data della fattura, 
    	NrFattura (string): Numero della fattura, 
    	Imponibile (double): Totale imponibile della fattura, 
    	Pagato (double): Totale pagato, 
    	DataScadenza (date): Data di scadenza della fattura, 
    	DataPagamento (date): Data di pagamento della fattura, 
    	Descrizione (string): Descrizione della fattura
    }
    
    Esempio
    { 
    	"valid": true, 
    	"idProgetto": "123", 
    	"idCliente": "456", 
    	"StatoProgetto": "Aperto", 
    	"CodiceProgetto": "BIA0004", 
    	"CodiceProgettoExt": "999", 
    	"FeriePermessi": false,
    	"RagioneSociale": "Bianchi srl", 
    	"Progetto": "Assistenza", 
    	"DescrizioneProgetto": "Testo descrittivo del progetto", 
    	"DataInizioPrevista": "01/06/2024", 
    	"DataFinePrevista": "31/12/2024", 
    	"GiorniProgettoPrevisti": "10", 
    	"TotOreProgetto": "44,000", 
    	"TotGiorniProgetto": "5,500", 
    	"TotOreProgettoOggi": "40,000", 
    	"TotGiorniProgettoOggi": "5,000", 
    	"AvanzamentoPercentualeProgetto": "55,000", 
    	"TariffaOrariaProgetto": "30,50",
    	"RiferimentoContratto": "12345",
    	"RiferimentoOfferta": "98765",	
    	"Sede": "Milano", 
    	"Canale": "SMAU", 
    	"CodiceCliente": "BIA", 
    	"idSettore": "10", 
    	"Settore": "Edilizia", 
    	"idAreaBusiness": "20", 
    	"AreaBusiness": "Sviluppo software", 
    	"idTipoProgetto": "30", 
    	"TipoProgetto": "Chiavi in mano", 
    	"idContratto": "222", 
    	"CodiceContratto": "BIA001", 
    	"DataContratto": "15/05/2024",
    	"TipiAttivita": [
    		{
    			"idTipoAttivita": "453",
    			"TipoAttivita": "Incontro"
    		},
    		{
    			"idTipoAttivita": "927",
    			"TipoAttivita": "Relazione"
    		},
    		{
    			"idTipoAttivita": "175",
    			"TipoAttivita": "Telefonata"
    		}],
    	"Utenti": [
    		{
    			"idUtente": "66",
    			"Cognome": "Neri",
    			"Nome": "Matteo",
    			"Username": "neri.matteo",
    			"PM": true,
    			"TariffaOraria": "40,00", 
    			"OreAssegnate": "20,000", 
    			"OreLavorate": "18,000"
    		},
    		{
    			"idUtente": "160",
    			"Cognome": "Rossi",
    			"Nome": "Mario",
    			"Username": "rossi.mario",
    			"PM": false,
    			"TariffaOraria": "20,00", 
    			"OreAssegnate": "40,000", 
    			"OreLavorate": "10,000"
    		},
    		{
    			"idUtente": "175",
    			"Cognome": "Verdi",
    			"Nome": "Luigi",
    			"Username": "verdi.luigi",
    			"PM": false,
    			"TariffaOraria": "30,00", 
    			"OreAssegnate": "30,000", 
    			"OreLavorate": "35,000"
    		}],
    	"Attivita": [
    		{
    			"idAttivita": "134",
    			"idStatoAttivita": "5",
    			"StatoAttivita": "Chiusa",
    			"CodiceAttivita": "AAA",
    			"Attivita": "Assistenza fino al 2023",
    			"TipoAssenza": "",
    			"DataInizioPrevista": "01/01/2023",
    			"DataFinePrevista": "31/12/2023",
    			"GiorniAttivitaPrevisti": "2,000", 
    			"TotOreAttivita": "12,000",
    			"AvanzamentoPercentualeAttivita": "75,000",
    			"CostoBudgetAttivita": "1.000,00",
    			"RicavoBudgetAttivita": "2.000,00"
    		},
    		{
    			"idAttivita": "135",
    			"idStatoAttivita": "3",
    			"StatoAttivita": "Aperta",
    			"CodiceAttivita": "BBB",
    			"Attivita": "Assistenza 2024",
    			"TipoAssenza": "",
    			"DataInizioPrevista": "01/01/2024",
    			"DataFinePrevista": "31/12/2024",
    			"GiorniAttivitaPrevisti": "3,500", 
    			"TotOreAttivita": "14,000",
    			"AvanzamentoPercentualeAttivita": "50,000",
    			"CostoBudgetAttivita": "2.000",
    			"RicavoBudgetAttivita": "3.500,00"
    		}],
    	"Ricavi": [
    			{
    				"idRicavo": "133",
    				"DataRicavo": "14/09/2024",
    				"ImponibileRicavo": "3.000,00",
    				"Descrizione": "Acconto progetto",
    				"Note": "Dettaglio del ricavo"
    			},
    			{
    				"idRicavo": "158",
    				"DataRicavo": "11/09/2012",
    				"ImponibileRicavo": "3.000,00",
    				"Descrizione": "30 giorni fine mese data fattura",
    				"Note": ""
    		}],
    	"FattureAttive": [
    		{
    			"idFatturaAttiva": "155",
    			"idRicavo": "133",
    			"DataFattura": "15/09/2024",
    			"NrFattura": "44",
    			"Imponibile": "3.000,00",
    			"Pagato": "3.000,00",
    			"StatoFattura": "Pagata",
    			"DataScadenza": "14/04/2024",
    			"Descrizione": "Acconto progetto"
    		}],
    	"Costi": [
    		{
    			"idCosto": "3518",
    			"DataCosto": "02/09/2024",
    			"Imponibile": "2.000,00",
    			"Descrizione": "Consulenza esterna",
    			"Fornitore": "Rossi srl",
    			"Tipologia": "Consulenze"
    		}],
    	"FatturePassive": [
    		{
    			"idFatturaPassiva": "1628",
    			"idCosto": "3518",
    			"Fornitore": "Rossi srl",
    			"DataFattura": "17/01/2024",
    			"NrFattura": "19",
    			"Imponibile": "2.000,00",
    			"Pagato": "2.000,00",
    			"DataScadenza": "31/01/2024",
    			"DataPagamento": "31/01/2024",
    			"Descrizione": "Descrizione fattura passiva"
    		}]
    }
    
    Messaggi di errore
    • Progetto non trovato
    • Passare almeno un parametro di ricerca tra idProgetto o CodiceProgetto
  • GET /get_progetti/ Elenco progetti
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_progetti/
    Descrizione e note
    Restituisce la lista dei progetti con le informazioni principali.
    Il web service suddivide i risultati in pagine ciascuna con 100 progetti; utilizzare il parametro NumeroPagina per scorrere tra le pagine dei risultati.
    E' possibile filtrare l'elenco per stato del progetto, cliente e data di inizio del progetto
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1; ogni pagina restituisce un massimo di 100 risultati)
    idStatoProgetto GET integer ID stato del progetto
    idCliente GET integer ID assegnato da BiPro al cliente
    DataDa GET date La data di inizio dovrà essere uguale o successiva
    DataA GET date La data di inizio dovrà essere uguale o precedente
    Risposta (in caso di successo)
    [
    { 
    	idProgetto (integer): ID assegnato da BiPro al progetto,
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	CodiceProgetto (string): Codice del progetto, 
    	FeriePermessi (boolean): true se il progetto è riferito alle assenze (Ferie/Permessi/Malattie), 
    	RagioneSociale (string): Nome o ragione sociale del cliente,
    	Progetto (string): Titolo del progetto, 
    	idStatoProgetto (integer): ID stato del progetto,
    	StatoProgetto (string): Stato del progetto,
    	DataInizioPrevista (date): Data prevista di inizio progetto,
    	RiferimentoContratto (string): Riferimento al contratto, 
    	RiferimentoOfferta (string): Riferimento all'offerta
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idProgetto": "7",
    	"idCliente": "2",
    	"CodiceProgetto": "VER0006", 
    	"FeriePermessi": false,
    	"RagioneSociale": "Verdi S.p.A.", 
    	"Progetto": "Sviluppo programma",
    	"idStatoProgetto": "5",
    	"StatoProgetto": "Chiuso",
    	"DataInizioPrevista": "15/01/2024",
    	"RiferimentoContratto": "Rif X",
    	"RiferimentoOfferta": "Rif Y"
    },
    { 
    	"idProgetto": "16",
    	"idCliente": "6",
    	"CodiceProgetto": "ROS0015", 
    	"CodiceProgettoExt": "123", 
    	"FeriePermessi": false,
    	"RagioneSociale": "Rossi s.r.l.", 
    	"Progetto": "Assistenza 2024",
    	"idStatoProgetto": "3",
    	"StatoProgetto": "Aperto",
    	"DataInizioPrevista": "03/04/2024",
    	"RiferimentoContratto": "Rif Z",
    	"RiferimentoOfferta": "Rif K"
    }
    ]
    
    Messaggi di errore
    • Nessun progetto trovato
  • GET /get_attivita/ Elenco delle attività di progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_attivita/
    Descrizione e note
    Restituisce l'elenco delle attività di progetto (se livello attivato nelle impostazioni, da non confondere con le tipologie di attività)
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1; ogni pagina restituisce un massimo di 500 risultati)
    idStatoAttivita GET integer ID stato dell'attività (cfr. web service get_stati_attivita)
    idCliente GET integer ID assegnato da BiPro al cliente
    DataDa GET date La data di inizio dovrà essere uguale o successiva
    DataA GET date La data di inizio dovrà essere uguale o precedente
    Risposta (in caso di successo)
    [
    { 
    	idAttivita (integer): ID assegnato da BiPro all'attività di progetto,
    	idProgetto (integer): ID assegnato da BiPro al progetto a cui appartiene l'attività,
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	CodiceProgetto (string): Codice del progetto, 
    	CodiceAttivita (string): Codice dell'attività, 
    	RagioneSociale (string): Nome o ragione sociale del cliente,
    	Progetto (string): Titolo del progetto, 
    	Attivita (string): Titolo dell'attività di progetto, 
    	idStatoAttivita (integer): ID stato dell'attività di progetto,
    	StatoAttivita (string): Stato dell'attività di progetto,
    	DataInizioPrevista (date): Data prevista di inizio dell'attività di progetto,
    	DataFinePrevista (date): Data prevista di fine dell'attività di progetto
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idAttivita": "14834",
    	"idProgetto": "10023",
    	"idCliente": "6859",
    	"CodiceProgetto": "VRD01", 
    	"CodiceAttivita": "VRD01-A1", 
    	"RagioneSociale": "Verdi S.p.A.", 
    	"Progetto": "Sviluppo programma",
    	"Attivita": "Analisi",
    	"idStatoAttivita": "3",
    	"StatoAttivita": "Aperta",
    	"DataInizioPrevista": "15/01/2024",
    	"DataFinePrevista": "15/01/2024"		
    },
    { 
    	"idAttivita": "14835",
    	"idProgetto": "10023",
    	"idCliente": "6859",
    	"CodiceProgetto": "VRD01", 
    	"CodiceAttivita": "VRD01-A2", 
    	"RagioneSociale": "Verdi S.p.A.", 
    	"Progetto": "Sviluppo programma",
    	"Attivita": "Programmazione",
    	"idStatoAttivita": "3",
    	"StatoAttivita": "Aperta",
    	"DataInizioPrevista": "12/02/2024",
    	"DataFinePrevista": "25/04/2024"		
    },
    { 
    	"idAttivita": "148338",
    	"idProgetto": "109023",
    	"idCliente": "63859",
    	"CodiceProgetto": "RSS01", 
    	"CodiceAttivita": "RSS01-A", 
    	"RagioneSociale": "Rossi s.r.l.", 
    	"Progetto": "Assistenza 2024",
    	"Attivita": "Assistenza 2024",
    	"idStatoAttivita": "3",
    	"StatoAttivita": "Aperta",
    	"DataInizioPrevista": "03/01/2024",
    	"DataFinePrevista": "30/04/2024"			
    }
    ]
    
    Messaggi di errore
    • Nessuna attività trovata
  • POST /set_progetto/ Crea/Aggiorna progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_progetto/
    Descrizione e note
    Crea un progetto o aggiorna le informazioni di un progetto esistente. Per l'identificazione del progetto deve essere fornito il parametro idProgetto.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza min-max Note
    idProgetto POST integer ID assegnato da BiPro al progetto; identifica il progetto di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo progetto
    idSede POST integer ID assegnato da BiPro ala sede (cfr web-service get_sedi); opzionale da utilizzare nel caso di sia attiva l'opzione multi-sede, altrimenti BiPro assegnerà in automatico la prima o unica sede censita nel programma
    idCliente POST integer ID assegnato da BiPro al cliente (cfr web-service get_clienti); identifica il cliente di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo cliente
    idStatoProgetto POST integer ID stato del progetto (cfr web-service get_stati_progetti); default=3 (aperto)
    FeriePermessi POST boolean impostare true se il progetto è riferito alle assenze (Ferie/Permessi/Malattie); default=false
    MonoAttivita POST boolean impostare true se il progetto è costituito da una sola attività e nelle impostazioni è attiva l'opzione "Abilita progetti multi-attività"; default=true
    TutteTipologieAttivita POST boolean impostare true se tutte le tipologie di attività sono associabili al progetto, false in caso contrario; default=true
    NrProgetto POST integer E' il valore numerico assegnato al progetto. Il codice progetto è infatti costituito dal codice cliente + il numero del progetto. Se non valorizzato verrà generato automaticamente come progressivo in base alle impostazioni definite nel programma (progressivo globale o per cliente)
    CodiceProgettoExt POST integer Codice del progetto esterno (es. assegnato dal gestionale aziendale)
    Progetto POST string min 1, max 250 Titolo del progetto
    DescrizioneProgetto POST double max 500 Titolo del progetto
    DataInizioPrevista POST date Data prevista di inizio progetto, obbligatoria
    DataFinePrevista POST date Data prevista di fine progetto
    GiorniAttivitaPrevisti POST double Numero di giornate di lavoro (da 8 ore) previste per il progetto; da valorizzare solo per progetti mono-attività, non nel caso di progetti con più attività abbinate
    TariffaOrariaProgetto POST double Tariffa oraria predefinita per il progetto
    idContratto POST integer ID assegnato da BiPro al contratto (cfr web-service get_contratti); da usare solo se abilitata la gestione dei contratti
    RiferimentoContratto POST string max 200 Riferimento al contratto
    RiferimentoOfferta POST string max 200 Riferimento all'offerta
    idAreaBusiness POST integer ID assegnato da BiPro all'area di business (cfr web-service get_aree_business)
    idSettore POST integer ID assegnato da BiPro al settore (cfr web-service get_settori)
    idTipoProgetto POST integer ID assegnato da BiPro alla tipologia di progetto (cfr web-service get_tipi_progetti)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Progetto creato/aggiornato, 
    	idProgetto (integer): ID assegnato da BiPro al progetto  
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Progetto creato",
    	"idProgetto": "1"
    }
    
    Messaggi di errore
    • Progetto non trovato, verificare il campo idProgetto (in caso di modifica)
    • Campo idSede non valido
    • Cliente non trovato, verificare il campo idCliente
    • Parametro idStatoProgetto non valido
    • Contratto non trovato, verificare il campo idContratto
    • Area di Business non trovata, verificare il campo idAreaBusiness
    • Settore non trovato, verificare il campo idSettore
    • Tipologia di progetto non trovata, verificare il campo idTipoProgetto
  • POST /set_progetto_tipo_attivita/ Abbinamento di una tipologia di attività al progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_progetto_tipo_attivita/
    Descrizione e note
    Questo web service consente di assegnare una tipologia di attività ad un progetto nel caso in cui il progetto non preveda l'abbinamento con tutte le tipologie (campo TutteTipologieAttivita del web service set_progetto).
    Tramite il web service get_progetto è possibile verificare l'elenco delle tipologie abbinate ad un progetto (array TipiAttivita).
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idProgetto POST integer ID assegnato da BiPro al progetto (cfr web-service get_progetto), obbligatorio
    idTipoAttivita POST integer ID assegnato da BiPro alla tipologia di attività (cfr web-service get_tipi_attivita), obbligatorio
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Abbinamento tipologia attività/progetto creato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Abbinamento tipo attività/progetto creato"
    }
    
    Messaggi di errore
    • Progetto non trovato, verificare il campo idProgetto
    • Tipologia di attività non trovata, verificare il campo idTipoAttivita
    • Abbinamento tipologia attività con progetto già esistente, nessuna modifica apportata
  • POST /set_progetto_attivita/ Crea/Aggiorna un'attività di progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_progetto_attivita/
    Descrizione e note
    Questo web service consente di creare o aggiornare un'attività specifica di progetto e va utilizzata nel caso in cui sia stata attivata nelle impostazioni l'opzione "Abilita progetti multi-attività".
    Tramite il web service get_progetto è possibile verificare l'elenco delle attività che costituiscono il progetto (array Attivita).
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idAttivita POST integer ID assegnato da BiPro all'utente (cfr web-service get_utente), obbligatorio
    idProgetto POST integer ID assegnato da BiPro al progetto (cfr web-service get_progetto), obbligatorio
    idStatoAttivita POST integer ID stato dell'attività (cfr web-service get_stati_attivita); default=3 (aperto)
    Attivita POST string min 1, max 250 Nome dell'attività
    CodiceAttivita POST string max 20 Codice dell'attività
    DataInizioPrevista POST date Data prevista di inizio attività
    DataFinePrevista POST date Data prevista di fine attività
    GiorniAttivitaPrevisti POST double Numero di giornate di lavoro (da 8 ore) previste per l'attività; da valorizzare solo per progetti mono-attività, non nel caso di progetti con più attività abbinate
    CostoBudgetAttivita POST double Costo a budget previsto per attività
    RicavoBudgetAttivita POST double Ricavo a budget previsto per attività
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Attività di progetto creata/aggiornata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Attività di progetto creata"
    }
    
    Messaggi di errore
    • Attività di progetto non trovata, verificare il campo idAttivita
    • Progetto non trovato, verificare il campo idProgetto
    • Stato dell'attività non trovato, verificare il campo idStatoAttivita
  • POST /set_progetto_utente/ Crea/Aggiorna abbinamento di un utente al progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_progetto_utente/
    Descrizione e note
    Questo web service consente di assegnare un utente ad un progetto o di modificare le relative informazioni (ore assegnate, tariffa,...).
    Se l'abbinamento è già esistente (in base ai parametri idProgetto/idUtente) vengono solo aggiornate le informazioni (tariffa e ore).
    Tramite il web service get_progetto è possibile verificare l'elenco degli utenti abbinati ad un progetto (array Utenti).
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idProgetto POST integer ID assegnato da BiPro al progetto (cfr web-service get_progetto), obbligatorio
    idUtente POST integer ID assegnato da BiPro all'utente (cfr web-service get_utente), obbligatorio
    TariffaOraria POST double Tariffa oraria dell'utente per il progetto; se non valorizzata in fase di creazione di una nuova assegnazione progetto/utente verrà considerata la tariffa oraria impostata come generica sul progetto (se valorizzata)
    OreAssegnate POST double Numero di ore complessive assegnate all'utente sul progetto
    OreAssegnateVincolanti POST boolean impostare a true se l'utente non deve poter dichiarare più ore di quante gli sono state assegnate; default=false
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Abbinamento utente/progetto creato/aggiornato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Abbinamento utente/progetto creato"
    }
    
    Messaggi di errore
    • Progetto non trovato, verificare il campo idProgetto
    • Utente non trovato, verificare il campo idUtente
  • POST /del_progetto/ Elimina progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_progetto/
    Descrizione e note
    Elimina un progetto. Per l'identificazione del progetto deve essere fornito il parametro idProgetto (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idProgetto POST integer ID assegnato da BiPro al progetto; identifica il progetto da eliminare (cfr web-service get_progetti o get_progetto)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Progetto eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Progetto eliminato"
    }
    
    Messaggi di errore
    • Il parametro idProgetto deve contenere un valore numerico intero
    • Progetto non trovato, verificare il campo idProgetto
  • POST /del_progetto_tipo_attivita/ Elimina abbinamento tipologia attività/progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_progetto_tipo_attivita/
    Descrizione e note
    Elimina l'abbinamento esistente di una tipologia di attività ad un progetto. Per l'identificazione devono essere forniti i parametri idProgetto e idTipoAttivita (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idProgetto POST integer ID del progetto (cfr web-service get_progetti o get_progetto)
    idTipoAttivita POST integer ID assegnato da BiPro alla tipologia di attività (cfr web-service get_tipi_attivita), obbligatorio
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Abbinamento progetto/tipologia attività eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Abbinamento progetto/tipologia attività eliminato"
    }
    
    Messaggi di errore
    • Progetto non trovato, verificare il campo idProgetto
    • Tipologia di attività non trovata, verificare il campo idTipoAttivita
    • Tipologia attività non risulta abbinata al progetto, verificare il campo idTipoAttivita
  • POST /del_progetto_attivita/ Elimina attività di progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_progetto_attivita/
    Descrizione e note
    Elimina un'attività di progetto. Per l'identificazione dell'attività di progetto deve essere fornito il parametro idAttivita (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idAttivita POST integer ID assegnato da BiPro all'attività di progetto; identifica l'attività da eliminare (cfr web-service get_progetto)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Attività eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Attività eliminata"
    }
    
    Messaggi di errore
    • Il parametro idProgetto deve contenere un valore numerico intero
    • Progetto non trovato, verificare il campo idProgetto
  • POST /del_progetto_utente/ Elimina abbinamento utente/progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_progetto_utente/
    Descrizione e note
    Elimina l'abbinamento esistente di un utente ad un progetto. Per l'identificazione devono essere forniti i parametri idProgetto e idUtente (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idProgetto POST integer ID del progetto (cfr web-service get_progetti o get_progetto)
    idUtente POST integer ID dell'utente (cfr web-service get_utenti o get_utente)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Abbinamento progetto/utente eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Abbinamento progetto/utente eliminato"
    }
    
    Messaggi di errore
    • Progetto non trovato, verificare il campo idProgetto
    • Utente non trovato, verificare il campo idUtente
    • Abbinamento Progetto/Utente non trovato
  • GET /get_stati_progetti/ Possibili stati di un progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_stati_progetti/
    Descrizione e note
    Restituisce i possibili stati di un progetto con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idStatoProgetto (integer): ID stato del progetto,
    	StatoProgetto (string): stato del progetto
    },
    { ... }
    ]
    
    Esempio
    [   
    	{
    		"idStatoProgetto": "1",
    		"StatoProgetto": "Da approvare"
    	},
    	{
    		"idStatoProgetto": "2",
    		"StatoProgetto": "Non approvato"
    	},
    	{
    		"idStatoProgetto": "3",
    		"StatoProgetto": "Aperto"
    	},
    	{
    		"idStatoProgetto": "4",
    		"StatoProgetto": "Sospeso"
    	},
    	{
    		"idStatoProgetto": "5",
    		"StatoProgetto": "Chiuso"
    	}
    ]
    
  • GET /get_stati_attivita/ Possibili stati di una attività di progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_stati_attivita/
    Descrizione e note
    Restituisce i possibili stati di una attività di progetto con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idStatoAttivita (integer): ID stato dell'attività di progetto,
    	StatoAttivita (string): stato dell'attività di progetto
    },
    { ... }
    ]
    
    Esempio
    [
    	{ 
    		"idStatoAttivita": "1",
    		"StatoAttivita": "Da approvare"
    	},
    	{ 
    		"idStatoAttivita": "2",
    		"StatoAttivita": "Non approvata"
    	},
    	{ 
    		"idStatoAttivita": "3",
    		"StatoAttivita": "Aperta"
    	},
    	{ 
    		"idStatoAttivita": "4",
    		"StatoAttivita": "Sospesa"
    	},
    	{ 
    		"idStatoAttivita": "5",
    		"StatoAttivita": "Chiusa"
    	}
    ]
    
  • GET /get_tipi_attivita/ Elenco tipologie di attività
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_tipi_attivita/
    Descrizione e note
    Restituisce l'elenco delle tipologie di attività censite dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idTipoAttivita GET integer ID tipologia di attività
    Risposta (in caso di successo)
    [
    {
    	idTipoAttivita (integer): ID tipologia di attività,
    	TipoAttivita (string): tipologia di attività,
    	CodiceTipoAttivita (string): codice della tipologia di attività,
    	idTipoAttivitaGruppo1 (integer): ID del gruppo della tipologia di attività,
    	TipoAttivitaGruppo1 (integer): gruppo della tipologia di attività,
    	TariffaFissa (double): se per la tipologia di attività va applicata una tariffa fissa e non oraria indicare in questo campo il valore da considerare, 
    	NonRetribuita (boolean): true se la tipologia di attività non è retribuita,
    	VisibileATutti (boolean): true se la tipologia di attività deve essere visibile a tutti gli utenti,
    	InMonteOre (boolean): true se la tipologia di attività deve essere considerata nel controllo del monte ore assegnato agli utenti
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idTipoAttivita": "2",
    	"TipoAttivita": "Programmazione", 
    	"CodiceTipoAttivita": "PRG", 
    	"idTipoAttivitaGruppo1": "1",
    	"TipoAttivitaGruppo1": "Realizzazione",
    	"TariffaFissa": false,
    	"NonRetribuita": true,
    	"VisibileATutti": true,
    	"InMonteOre": true
    },
    { 
    	"idTipoAttivita": "3",
    	"TipoAttivita": "Analisi", 
    	"CodiceTipoAttivita": "ANL", 
    	"idTipoAttivitaGruppo1": "1",
    	"TipoAttivitaGruppo1": "Realizzazione",
    	"TariffaFissa": false,
    	"NonRetribuita": false,
    	"VisibileATutti": false,
    	"InMonteOre": true
    },
    ...
    ]
    
    Messaggi di errore
    • Nessuna tipologia di attività trovata
  • GET /get_tipi_attivita_gruppi/ Elenco gruppi di tipologie di attività
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_tipi_attivita_gruppi/
    Descrizione e note
    Restituisce l'elenco dei gruppi di tipologie di attività censite dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idTipoAttivitaGruppo GET integer ID del gruppo
    Risposta (in caso di successo)
    [
    {
    	idTipoAttivitaGruppo (integer): ID del gruppo,
    	TipoAttivitaGruppo (string): Nome del gruppo
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idTipoAttivitaGruppo": "2",
    	"TipoAttivitaGruppo": "Gruppo A"
    },
    { 
    	"idTipoAttivitaGruppo": "3",
    	"TipoAttivitaGruppo": "Gruppo B"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessun gruppo trovato
  • POST /set_tipo_attivita/ Crea/Aggiorna tipologia di attività
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_tipo_attivita/
    Descrizione e note
    Crea una tipologia di attività o aggiorna le informazioni di una tipologia di attività esistente. Per l'identificazione della tipologia di attività deve essere fornito il parametro idTipoAttivita.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idTipoAttivita POST integer ID assegnato da BiPro alla tipologia di attività; identifica la tipologia di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di una nuova tipologia
    TipoAttivita POST string min 1, max 100 Tipologia di attività
    CodiceTipoAttivita POST string max 20 Codice della tipologia
    idTipoAttivitaGruppo1 POST integer ID identificativo del gruppo della tipologia di attività (cfr web-service get_gruppi_tipi_attivita)
    TariffaFissa POST double Se valorizzata alla tipologia di attività viene applicata una tariffa fissa e non oraria
    NonRetribuita POST boolean (default false) true se la tipologia di attività non è retribuita
    VisibileATutti POST boolean (default true) true se la tipologia di attività deve essere visibile a tutti gli utenti
    InMonteOre POST boolean (default false) true se la tipologia di attività deve essere considerata nel controllo del monte ore assegnato agli utenti
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Tipologia di attività creata/aggiornata, 
    	idTipoAttivita (integer): ID assegnato da BiPro alla tipologia di attività
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Tipologia di attività creata",
    	"idTipoAttivita": "1"
    }
    
    Messaggi di errore
    • Parametro idTipoAttivitaGruppo non valido (in caso di modifica)
  • POST /del_tipo_attivita/ Elimina tipologia di attività
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_tipo_attivita/
    Descrizione e note
    Elimina una tipologia di attività. Per l'identificazione della tipologia di attività deve essere fornito il parametro idTipoAttivita (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idTipoAttivita POST integer ID assegnato da BiPro alla tipologia di attività; identifica la tipologia di attività da eliminare (cfr web-service get_tipi_attivita)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Tipologia di attività eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Tipologia di attività eliminata"
    }
    
    Messaggi di errore
    • Il parametro idTipoAttivita deve contenere un valore numerico intero
    • Tipologia di attività non trovata, verificare il campo idTipoAttivita
  • GET /get_luoghi/ Elenco luoghi di esecuzione attività
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_luoghi/
    Descrizione e note
    Restituisce l'elenco dei luoghi di esecuzione delle attività censiti dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idLuogoEsecuzioneAttivita GET integer ID assegnato da BiPro al luogo (da usare per avere le informazioni di un singolo contratto)
    Risposta (in caso di successo)
    [
    {
    	idLuogoEsecuzioneAttivita (integer): ID assegnato da BiPro al luogo,
    	LuogoEsecuzioneAttivita (string): Nome del luogo
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idLuogoEsecuzioneAttivita": "1",
    	"LuogoEsecuzioneAttivita": "Sede"
    },
    { 
    	"idLuogoEsecuzioneAttivita": "2",
    	"LuogoEsecuzioneAttivita": "Cliente"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessun luogo trovato
  • POST /set_luogo/ Crea/Aggiorna luogo
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_luogo/
    Descrizione e note
    Crea un luogo o aggiorna le informazioni di un luogo esistente. Per l'identificazione del luogo deve essere fornito il parametro idLuogoEsecuzioneAttivita.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idLuogoEsecuzioneAttivita POST integer ID assegnato da BiPro al luogo: identifica il luogo di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo luogo
    LuogoEsecuzioneAttivita POST string min 1, max 50 LuogoEsecuzioneAttivita
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): luogo creato/aggiornato, 
    	idLuogoEsecuzioneAttivita (integer): ID assegnato da BiPro al luogo
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "luogo creato",
    	"idLuogoEsecuzioneAttivita": "1"
    }
    
    Messaggi di errore
    • luogo non trovato, verificare il campo idLuogoEsecuzioneAttivita (in caso di modifica)
  • POST /del_luogo/ Elimina luogo
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_luogo/
    Descrizione e note
    Elimina un luogo. Per l'identificazione del luogo deve essere fornito il parametro idLuogoEsecuzioneAttivita (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idLuogoEsecuzioneAttivita POST integer ID assegnato da BiPro al luogo; identifica il luogo da eliminare (cfr web-service get_luoghi)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Luogo eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Luogo eliminato"
    }
    
    Messaggi di errore
    • Il parametro idLuogoEsecuzioneAttivita deve contenere un valore numerico intero
    • Luogo non trovato, verificare il campo idLuogoEsecuzioneAttivita
  • GET /get_contratti/ Elenco contratti
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_contratti/
    Descrizione e note
    Restituisce l'elenco dei contratti censiti dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idCliente GET integer ID assegnato da BiPro al cliente
    idContratto GET integer ID assegnato da BiPro al contratto (da usare per avere le informazioni di un singolo contratto)
    Risposta (in caso di successo)
    [
    {
    	idContratto (integer): ID assegnato da BiPro al contratto,
    	idCliente (integer): ID del cliente,
    	RagioneSociale (string): Nome del cliente,
    	idUtenteResponsabile (integer): ID dell'utente responsabile del contratto internamente all'azienda,
    	ResponsabileContratto: (string): Nome dell'utente responsabile del contratto,
    	CodiceContratto (string): codice del contratto,
    	DataContratto (date): Data del contratto, 
    	DataInizioValidita (date): Data di inizio validità del contratto,
    	DataFineValidita (date): Data di fine validità del contratto,
    	ContrattoAttivo (boolean): true se il contratto è attivo, 
    	DataDisdetta (date): Data di disdetta del contratto,
    	DataCessazione (date): Data cessazione del contratto,
    	NoteContratto (string): Note,
    	NumeroOfferta (string): Numero dell'offerta a cui il contratto si riferisce,
    	DataOfferta (date): Data dell'offerta a cui il contratto si riferisce,
    	ImportoComplessivo (double): Importo complessivo del contratto,
    	TitoloContratto (string): Titolo del contratto,
    	TipoContratto (string): Tipologia di contratto
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idContratto": "1",
    	"idCliente": "200",
    	"RagioneSociale": "Bianchi Srl", 
    	"idUtenteResponsabile": "175",
    	"ResponsabileContratto": "Verdi Mario", 
    	"CodiceContratto": "0123", 
    	"DataContratto": "10/12/2024",
    	"DataInizioValidita": "01/12/2024",
    	"DataFineValidita": "31/12/2024",
    	"ContrattoAttivo": true,
    	"DataDisdetta": "",
    	"DataCessazione": "",
    	"NoteContratto": "Testo descrittivo", 
    	"NumeroOfferta": "123", 
    	"DataOfferta": "01/12/2024",
    	"ImportoComplessivo": "5.000,00",
    	"TitoloContratto": "Contratto X", 
    	"TipoContratto": "Contratto prepagato"
    },
    { 
    	"idContratto": "1",
    	"idCliente": "200",
    	"RagioneSociale": "Rossi SpA", 
    	"idUtenteResponsabile": "28",
    	"ResponsabileContratto": "Arancio Luigi", 
    	"CodiceContratto": "X675", 
    	"DataContratto": "02/07/2024",
    	"DataInizioValidita": "15/07/2024",
    	"DataFineValidita": "31/12/2024",
    	"ContrattoAttivo": true,
    	"DataDisdetta": "",
    	"DataCessazione": "",
    	"NoteContratto": "Testo descrittivo", 
    	"NumeroOfferta": "456", 
    	"DataOfferta": "01/07/2024",
    	"ImportoComplessivo": "19.000,00",
    	"TitoloContratto": "Contratto Y", 
    	"TipoContratto": "Contratto chiavi in mano"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessun contratto trovato
  • POST /set_contratto/ Crea/Aggiorna contratto
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_contratto/
    Descrizione e note
    Crea un contratto o aggiorna le informazioni di un contratto esistente. Per l'identificazione del contratto deve essere fornito il parametro idContratto.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idContratto POST integer ID assegnato da BiPro al contratto; da non valorizzare in caso di creazione di un nuovo contratto
    idCliente POST integer ID del cliente a cui il contratto si riferisce, obbligatorio
    idUtenteResponsabile POST integer ID dell'utente responsabile del contratto
    CodiceContratto POST string min 1, max 100 Codice del contratto
    DataContratto POST date Data del contratto, obbligatoria
    DataInizioValidita POST date Data inizio validità del contratto, obbligatoria
    DataFineValidita POST date Data fine validità del contratto
    ContrattoAttivo POST boolean Contratto attivo (true, valore di default) o non attivo (false)
    DataDisdetta POST date Data di disdetta del contratto
    DataCessazione POST date Data di cessazione del contratto
    NoteContratto POST string max 1000 Note
    NumeroOfferta POST string max 30 Numero dell'offerta a cui il contratto si riferisce
    DataOfferta POST date Data dell'offerta a cui il contratto si riferisce
    ImportoComplessivo POST double Importo complessivo del contratto
    TitoloContratto POST string max 300 Titolo del contratto
    TipoContratto POST string max 200 Tipologia di contratto
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Contratto creato/aggiornato, 
    	idContratto (integer): ID assegnato da BiPro al contratto
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Contratto creato",
    	"idContratto": "1"
    }
    
    Messaggi di errore
    • Contratto non trovato, verificare il campo idContratto (in caso di modifica)
    • Cliente non trovato, verificare il campo idCliente
    • Utente non trovato, verificare il campo idUtenteResponsabile
  • POST /del_contratto/ Elimina contratto
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_contratto/
    Descrizione e note
    Elimina un contratto. Per l'identificazione del contratto deve essere fornito il parametro idContratto (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idContratto POST integer ID assegnato da BiPro al contratto; identifica il contratto da eliminare (cfr web-service get_contratti)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Contratto eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Contratto eliminato"
    }
    
    Messaggi di errore
    • Il parametro idContratto deve contenere un valore numerico intero
    • Contratto non trovato, verificare il campo idContratto
  • GET /get_aree_business/ Elenco aree di business
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_aree_business/
    Descrizione e note
    Restituisce l'elenco delle aree di business censite dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idAreaBusiness GET integer ID area di business
    Risposta (in caso di successo)
    [
    {
    	idAreaBusiness (integer): ID area di business,
    	AreaBusiness (string): Area di business
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idAreaBusiness": "2",
    	"AreaBusiness": "Assistenza"
    },
    { 
    	"AreaBusiness": "3",
    	"TipoAttivita": "Consulenza"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessuna area di business trovata
  • GET /get_settori/ Elenco settori
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_settori/
    Descrizione e note
    Restituisce l'elenco delle settori censiti dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idSettore GET integer ID settore
    Risposta (in caso di successo)
    [
    {
    	idSettore (integer): ID settore,
    	Settore (string): Settore
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idSettore": "2",
    	"Settore": "Industria"
    },
    { 
    	"idSettore": "3",
    	"Settore": "Commercio"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessuna settore trovato
  • GET /get_tipi_progetti/ Elenco settori
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_tipi_progetti/
    Descrizione e note
    Restituisce l'elenco delle tipologie di progetti censite dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idTipoProgetto GET integer ID tipologia di progetto
    Risposta (in caso di successo)
    [
    {
    	idTipoProgetto (integer): ID tipologia di progetto,
    	TipoProgetto (string): Tipologia di progetto
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idTipoProgetto": "1",
    	"TipoProgetto": "Chiavi in meno"
    },
    { 
    	"idTipoProgetto": "2",
    	"TipoProgetto": "A fatturazione oraria"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessua tipologia di progetto trovata
  • POST /set_area_business/ Crea/Aggiorna area di business
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_area_business/
    Descrizione e note
    Crea un'area di business o aggiorna le informazioni di un'area di business esistente. Per l'identificazione dell'area di business deve essere fornito il parametro idAreaBusiness.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idAreaBusiness POST integer ID assegnato da BiPro all'area di business: identifica l'area di business di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di una nuova area di business
    AreaBusiness POST string min 1, max 50 Area di business
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Area di business creata/aggiornata, 
    	idAreaBusiness (integer): ID assegnato da BiPro all'area di business
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Area di business creata",
    	"idAreaBusiness": "1"
    }
    
    Messaggi di errore
    • Area di Business non trovata, verificare il campo idAreaBusiness (in caso di modifica)
  • POST /set_settore/ Crea/Aggiorna settore
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_settore/
    Descrizione e note
    Crea un settore o aggiorna le informazioni di un settore esistente. Per l'identificazione del settore deve essere fornito il parametro idSettore.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idSettore POST integer ID assegnato da BiPro al settore: identifica il settore di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo settore
    Settore POST string min 1, max 50 Settore
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Settore creato/aggiornato, 
    	idSettore (integer): ID assegnato da BiPro al settore
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Settore creato",
    	"idSettore": "1"
    }
    
    Messaggi di errore
    • Settore non trovato, verificare il campo idSettore (in caso di modifica)
  • POST /set_tipo_progetto/ Crea/Aggiorna tipologia di progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_tipo_progetto/
    Descrizione e note
    Crea una tipologia di progetto o aggiorna le informazioni di una tipologia di progetto esistente. Per l'identificazione della tipologia di progetto deve essere fornito il parametro idTipoProgetto.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idTipoProgetto POST integer ID assegnato da BiPro alla tipologia di progetto: identifica la tipologia di progetto di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di una nuova tipologia di progetto
    TipoProgetto POST string min 1, max 50 TipoProgetto
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Tipologia di progetto creata/aggiornata, 
    	idTipoProgetto (integer): ID assegnato da BiPro alla tipologia di progetto
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Tipologia di progetto creata",
    	"idTipoProgetto": "1"
    }
    
    Messaggi di errore
    • Tipologia di progetto non trovata, verificare il campo idTipoProgetto (in caso di modifica)
  • POST /del_area_business/ Elimina area di busines
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_area_business/
    Descrizione e note
    Elimina un'area di business. Per l'identificazione dell'area di business deve essere fornito il parametro idAreaBusiness (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idAreaBusiness POST integer ID assegnato da BiPro all'area di business; identifica l'area di business da eliminare (cfr web-service get_aree_business)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Area di business eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Area di business eliminata"
    }
    
    Messaggi di errore
    • Il parametro idAreaBusiness deve contenere un valore numerico intero
    • Area di business non trovata, verificare il campo idAreaBusiness
  • POST /del_settore/ Elimina settore
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_settore/
    Descrizione e note
    Elimina un settore. Per l'identificazione del settore deve essere fornito il parametro idSettore (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idSettore POST integer ID assegnato da BiPro al settore; identifica il settore da eliminare (cfr web-service get_settori)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Settore eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Settore eliminato"
    }
    
    Messaggi di errore
    • Il parametro idSettore deve contenere un valore numerico intero
    • Settore non trovato, verificare il campo idSettore
  • POST /del_tipo_progetto/ Elimina tipologia di progetto
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_tipo_progetto/
    Descrizione e note
    Elimina una tipologia di progetto. Per l'identificazione della tipologia di progetto deve essere fornito il parametro idTipoProgetto (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idTipoProgetto POST integer ID assegnato da BiPro alla tipologia di progetto; identifica la tipologia di progetto da eliminare (cfr web-service get_tipi_progetti)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Tipologia di progetto eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Tipologia di progetto eliminata"
    }
    
    Messaggi di errore
    • Il parametro idTipoProgetto deve contenere un valore numerico intero
    • Tipologia di progetto non trovata, verificare il campo idTipoProgetto
  • GET /get_canali/ Elenco canali
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_canali/
    Descrizione e note
    Restituisce l'elenco dei canali di provenienza dei clienti censiti dalla tua azienda in BiPro con relativi ID
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idCanale GET integer ID canale
    Risposta (in caso di successo)
    [
    {
    	idCanale (integer): ID settore,
    	Canale (string): Canale
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idCanale": "2",
    	"Canale": "Internet"
    },
    { 
    	"idCanale": "3",
    	"Canale": "Passaparola"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessuna canale trovato
  • POST /set_canale/ Crea/Aggiorna canale
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_canale/
    Descrizione e note
    Crea un canale o aggiorna le informazioni di un canale esistente. Per l'identificazione del canale deve essere fornito il parametro idCanale.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idCanale POST integer ID assegnato da BiPro al canale: identifica il canale di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di un nuovo canale
    Canale POST string min 1, max 100 Canale
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Canale creato/aggiornato, 
    	idCanale (integer): ID assegnato da BiPro al canale
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Settore creato",
    	"idCanale": "1"
    }
    
    Messaggi di errore
    • Canale non trovato, verificare il campo idCanale (in caso di modifica)
  • POST /del_canale/ Elimina canale
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_canale/
    Descrizione e note
    Elimina un canale. Per l'identificazione del canale deve essere fornito il parametro idCanale (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idCanale POST integer ID assegnato da BiPro al canale; identifica il canale da eliminare (cfr web-service get_canali)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Canale eliminato
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Canale eliminato"
    }
    
    Messaggi di errore
    • Il parametro idCanale deve contenere un valore numerico intero
    • Canale non trovato, verificare il campo idCanale
  • GET /get_ore_lavorabili/ Ore giornaliere lavorabili
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_ore_lavorabili/
    Descrizione e note
    Restituisce la lista delle ore giornaliere lavorabili per ciascuna data del periodo richiesto suddivise per utente
    Parametri richiesta
    Parametro Modalità Tipo Note
    idUtente GET integer ID assegnato da BiPro all'utente (opzionale)
    DataDa GET date La data di inizio del periodo richiesto
    DataA GET date La data di fine del periodo richiesto (il periodo non deve superare i 365 giorni)
    Risposta (in caso di successo)
    [
    { 
    	Utenti (array): Lista degli utenti con ore giornaliere assegnate nel periodo	
    },
    { ... }
    ]
    
    Utenti
    {
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	Cognome (string): Cognome, 
    	Nome (string): Nome,
    	OreLavorabili (array): Lista delle date del periodo considerato con ore giornaliere assegnate 	
    }
    
    OreLavorabili
    {
    	Data (date): Data, 
    	Ore (double): Ore lavorabili previste per la data
    }
    
    Esempio
    [{
    	"Utenti": [{
    			"idUtente": "100",
    			"Cognome": "Rossi",
    			"Nome": "Mario",
    			"OreLavorabili": [{
    				"Data": "01/04/2024",
    				"Ore": "8"
    			}, {
    				"Data": "02/04/2024",
    				"Ore": "8"
    			}, {
    				"Data": "05/04/2024",
    				"Ore": "0"
    			}]
    		},
    		{
    			"idUtente": "101",
    			"Cognome": "Verdi",
    			"Nome": "Alessandra",
    			"OreLavorabili": [{
    				"Data": "01/04/2024",
    				"Ore": "6"
    			}, {
    				"Data": "02/04/2024",
    				"Ore": "6"
    			}, {
    				"Data": "05/04/2024",
    				"Ore": "0"
    			}]
    		}
    	]
    }]
    
    Messaggi di errore
    • Nessuna informazione presente
    • Indicare la data di inizio del periodo considerato (parametro DataDa)
    • Indicare la data di fine del periodo considerato (parametro DataA)
    • Il periodo considerato non deve superare 365 giorni
  • GET /get_ore_mese_progetto/ Ore mensili assegnate ai progetti
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_ore_mese_progetto/
    Descrizione e note
    Restituisce la lista delle ore mensili assegnate ai progetti per ciascun utente
    Parametri richiesta
    Parametro Modalità Tipo Note
    idUtente GET integer ID assegnato da BiPro all'utente (opzionale*)
    idProgetto GET integer ID assegnato da BiPro al progetto (opzionale*)
    Anno GET integer Anno di assegnazione (opzionale*)
    * E' necessario valorizzare almeno uno dei tre parametri idUtente / idProgetto / Anno
    Risposta (in caso di successo)
    [
    { 
    	Utenti (array): Lista degli utenti con ore giornaliere assegnate nel periodo	
    },
    { ... }
    ]
    
    Utenti
    {
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	Cognome (string): Cognome, 
    	Nome (string): Nome,
    	Ore (array): Lista delle assegnazioni di ore mensili per ciascun progetto
    }
    
    Ore
    {
    	Anno (integer): Anno, 
    	Mese (integer): Mese, 
    	idProgetto (integer): ID assegnato da BiPro al progetto,
    	Progetto (string): Titolo del progetto,
    	Ore (double): Ore assegnate alla persona
    }
    
    Esempio
    [{
    	"Utenti": [{
    			"idUtente": "120",
    			"Cognome": "Rossi",
    			"Nome": "Mario",
    			"Ore": [{
    				"Anno": "2024",
    				"Mese": "1",
    				"idProgetto": "888",
    				"Progetto": "Progetto A",
    				"Ore": "48"
    			}, {
    				"Anno": "2024",
    				"Mese": "1",
    				"idProgetto": "999",
    				"Progetto": "Progetto B",
    				"Ore": "56"
    			}, {
    				"Anno": "2024",
    				"Mese": "2",
    				"idProgetto": "888",
    				"Progetto": "Progetto A",
    				"Ore": "24"
    			}]
    		},
    		{
    			"idUtente": "121",
    			"Cognome": "Verdi",
    			"Nome": "Maria",
    			"Ore": [{
    				"Anno": "2024",
    				"Mese": "1",
    				"idProgetto": "888",
    				"Progetto": "Progetto A",
    				"Ore": "12"
    			}]
    		}
    	]
    }]
    
    Messaggi di errore
    • Nessuna informazione presente
    • Valorizzare almeno un parametro tra idUtente, idProgetto e Anno
  • GET /get_esecuzioni_attivita/ Elenco delle attività dichiarate sul calendario
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_esecuzioni_attivita/
    Descrizione e note
    Restituisce l'elenco delle attività dichiarate dagli utenti sul calendario.
    Il web service suddivide i risultati in pagine ciascuna con 500 attività; utilizzare il parametro NumeroPagina per scorrere tra le pagine dei risultati.
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idEsecuzioneAttivita GET integer ID assegnato da BiPro all'attività dichiarata sul calendario; da utilizzare per recuperare le informazioni di una singola attività (se specificato questo valore non verranno considerati gli altri parametri di ricerca)
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1)
    idSede GET integer ID della sede aziendale
    idUtente GET integer ID dell'utente
    idResponsabile GET integer ID del responsabile
    idCliente GET integer ID del cliente
    idProgetto GET integer ID del progetto
    idAttivita GET integer ID dell'attività di progetto
    idTipoAttivita GET integer ID della tipologia di attività
    idContratto GET integer ID del contratto
    idSettore GET integer ID del settore
    idAreaBusiness GET integer ID dell'area di business
    idTipoProgetto GET integer ID della tipologia di progetto
    idCanale GET integer ID del canale di provenienza del cliente
    idLuogoEsecuzioneAttivita GET integer ID del luogo di esecuzione dell'attività
    Retribuita GET boolean non valirizzato=tutte; true=solo retribuite; false=solo non retribuite
    Fatturata GET boolean non valirizzato=tutte; true=solo fatturate; false=solo non fatturate
    FeriePermessi GET boolean non valirizzato=tutte; true=solo assenze; false=solo attività lavorative
    DataDa GET date La data di esecuzione dell'attività dovrà essere uguale o successiva
    DataA GET date La data di esecuzione dell'attività dovrà essere uguale o precedente
    Risposta (in caso di successo)
    [
    {	
    	idEsecuzioneAttivita (integer): ID assegnato da BiPro all'esecuzione dell'attività,
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	Cognome (string): Cognome dell'utente che ha effettuato l'attività, 
    	CodiceDipendente (string): Codice dipendente dell'utente che ha effettuato l'attività, 
    	Nome (string): Nome dell'utente che ha effettuato l'attività, 
    	Data (date): Data in cui è stata effetturata l'attività, 
    	OraInizio (time): Ora di inizio dell'attività, 
    	OraFine (time): Ora di fine dell'attività, 
    	Minuti (integer): Durata dell'attività in minuti,
    	CodiceProgetto (string): Codice del progetto, 
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	RagioneSociale (string): Nome o ragione sociale del cliente,
    	idProgetto (integer): ID assegnato da BiPro al progetto,
    	Progetto (string): Titolo del progetto, 
    	idAttivita (integer): ID assegnato da BiPro all'attività di progetto,
    	Attivita (string): Titolo dell'attività di progetto, 
    	CodiceAttivita (string): Codice dell'attività di progetto, 
    	idTipoAttivita (integer): ID tipologia di attività,
    	TipoAttivita (string): tipologia di attività,
    	CodiceTipoAttivita (string): Codice della tipologia di attività,
    	Numero (double): Numero di elementi oggetto dell'attività,
    	TariffaAttivita (double): Tariffa complessiva dell'attività,
    	idLuogoEsecuzioneAttivita (integer): ID assegnato da BiPro al luogo,
    	LuogoEsecuzioneAttivita (string): Luogo di esecuzione dell'attività,
    	CostoAttivita (double): Costo complessivo dell'attività,
    	CostoOrario (double): Costo orario dell'attività,
    	Fatturata (boolean): true se l'attività è identificata con fatturata al cliente,
    	Note (string): Descrizione dell'attività svolta dall'utente, 
    	idSettore (integer): ID settore,
    	Settore (string): Settore,
    	idAreaBusiness (integer): ID area di business,
    	AreaBusiness (string): Area di business,
    	idTipoProgetto (integer): ID tipologia di progetto,
    	TipoProgetto (string): Tipologia di progetto
    },
    { ... }
    ]
    
    Esempio
    [
    {	
    	"idEsecuzioneAttivita":"1000",
    	"idUtente":"7",
    	"Utente":"Verdi Stefano",
    	"CodiceDipendente":"DIP001",
    	"Data":"04/02/2024",
    	"OraInizio":"09:00",
    	"OraFine":"11:00",
    	"Minuti":"120",
    	"CodiceProgetto":"INT0002",
    	"idCliente":"",
    	"RagioneSociale":"",
    	"idProgetto":"867",
    	"Progetto":"Progetto interno",
    	"idAttivita":"661",
    	"Attivita":"Amministrazione",
    	"CodiceAttivita":"AMM",
    	"idTipoAttivita":"4",
    	"TipoAttivita":"Interna",
    	"CodiceTipoAttivita":"INT",
    	"Numero":"",
    	"TariffaAttivita": "",
    	"idLuogoEsecuzioneAttivita":"7",
    	"LuogoEsecuzioneAttivita":"Sede",
    	"CostoAttivita": "60,000",
    	"CostoOrario": "30,000",
    	"Fatturata": true,
    	"Note":"Emissione fatture",
    	"idSettore":"",
    	"Settore":"",
    	"idAreaBusiness":"",
    	"AreaBusiness":"",
    	"idTipoProgetto":"",
    	"TipoProgetto":""
    },
    {	
    	"idEsecuzioneAttivita":"1001",
    	"idUtente":"8",
    	"Utente":"Bianchi Luigi",
    	"CodiceDipendente":"DIP002",
    	"Data":"19/02/2024",
    	"OraInizio":"10:00",
    	"OraFine":"11:00",
    	"Minuti":"60",
    	"CodiceProgetto":"ARA0016",
    	"idCliente":"9",
    	"RagioneSociale":"Arancio s.r.l.",
    	"idProgetto":"17",
    	"Progetto":"Sviluppo sito internet",
    	"idAttivita":"432",
    	"Attivita":"Analisi preliminare",
    	"CodiceAttivita":"ANPR",
    	"idTipoAttivita":"4",
    	"TipoAttivita":"Incontro",
    	"CodiceTipoAttivita":"INC",
    	"Numero":"",
    	"TariffaAttivita": "50,00",
    	"idLuogoEsecuzioneAttivita":"7",
    	"LuogoEsecuzioneAttivita":"c/o cliente",
    	"CostoAttivita": "30,00",
    	"CostoOrario": "30,00",
    	"Fatturata": true,
    	"Note":"Incontro con responsabile per definizione delle specifiche",
    	"idSettore":"15",
    	"Settore":"Automotive",
    	"idAreaBusiness":"22",
    	"AreaBusiness":"Comunicazione",
    	"idTipoProgetto":"30",
    	"TipoProgetto":"Chiavi in mano"
    }
    ]
    
    Messaggi di errore
    • Nessuna esecuzione di attività trovata
  • POST /set_esecuzione_attivita/ Crea/Aggiorna un'attività sul calendario dell'utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_esecuzione_attivita/
    Descrizione e note
    Crea o aggiorna un'attività sul calendario dell'utente (timesheet). Per l'identificazione dell'attività da modificare deve essere fornito il parametro idEsecuzioneAttivita.
    Questo web service non esegue un controllo sull'eventuale monte ore assegnato all'utente sul progetto e/o sull'attività.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idEsecuzioneAttivita POST integer ID assegnato da BiPro all'attività: identifica l'attività da modificare e di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di una nuova attività
    idUtente POST integer ID dell'utente; obbligatorio (cfr web-service get_utenti o get_utente)
    idAttivita POST integer ID dell'attività di progetto; obbligatorio (il progetto è sempre identificato da questo campo; cfr web-service get_progetto)
    idTipoAttivita POST integer ID della tipologia di attività (cfr web-service get_tipi_attivita)
    idLuogoEsecuzioneAttivita POST integer ID del luogo di esecuzione dell'attività (cfr web-service get_luoghi)
    Data POST date min 10, max 10 (GG/MM/AAAA) Data di esecuzione dell'attività; obbligatorio
    OraInizio POST time min 5, max 5 (HH:MM) Orario di inizio esecuzione dell'attività; da valorizzare solo se si usa la modalità "con orario"
    OraFine POST time min 5, max 5 (HH:MM) Orario di fine esecuzione dell'attività; da valorizzare solo se si usa la modalità "con orario"
    Ore POST time double Ore di esecuzione dell'attività; da valorizzare solo se si usa la modalità "senza orario"; nel caso "con orario" le ore saranno calcolate in automatico come differenza tra l'orario di inizio e fine
    Note POST string max 500 Testo libero descrittivo dell'attività svolta
    CodiceEsecuzioneAttivitaExt POST integer Codice esterno dell'attività (es. assegnato dal gestionale aziendale)
    Numero POST double Eventuale numero di elementi oggetto dell'attività (es. numero di cedolini elaborati per un'attività di uno studio paghe)
    Fatturata POST boolean true=fatturata; false=non fatturata
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Esecuzione attività creata/aggiornata, 
    	idEsecuzioneAttivita (integer): ID assegnato da BiPro all'attività
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Esecuzione attività creata",
    	"idEsecuzioneAttivita": "1"
    }
    
    Messaggi di errore
    • Esecuzione attività non trovata, verificare il campo idEsecuzioneAttivita
    • Utente non trovato, verificare il campo idUtente
    • Attività non trovata, verificare il campo idAttivita
    • Tipologia di attività non trovata, verificare il campo idTipoAttivita
    • Luogo non trovato, verificare il campo idLuogoEsecuzioneAttivita
  • POST /del_esecuzione_attivita/ Elimina un'attività sul calendario dell'utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_esecuzione_attivita/
    Descrizione e note
    Elimina un'attività sul calendario dell'utente (timesheet). Per l'identificazione dell'attività deve essere fornito il parametro idEsecuzioneAttivita (in modalità POST).
    Non è possibile eliminare un'attività se sono presenti delle spese ad essa collegate.
    Parametri richiesta
    Parametro Modalità Tipo Note
    idEsecuzioneAttivita POST integer ID assegnato da BiPro all'attività; identifica l'attività da eliminare (cfr web-service get_esecuzioni_attivita)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Esecuzione attività eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Esecuzione attività eliminata"
    }
    
    Messaggi di errore
    • Il parametro idEsecuzioneAttivita deve contenere un valore numerico intero
    • Esecuzione attività non trovata, verificare il campo idEsecuzioneAttivita
    • Impossibile eliminare l'attività perchè sono presenti spese ad essa associate
  • GET /get_spese/ Elenco delle spese
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_spese/
    Descrizione e note
    Restituisce l'elenco delle spese abbinate alle attività dichiarate dagli utenti sul calendario.
    Il web service suddivide i risultati in pagine ciascuna con 100 spese; utilizzare il parametro NumeroPagina per scorrere tra le pagine dei risultati.
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idNotaSpese GET integer ID assegnato da BiPro alla spesa; da utilizzare per recuperare le informazioni di una singola spesa (se specificato questo valore non verranno considerati gli altri parametri di ricerca)
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1)
    idUtente GET integer ID dell'utente
    idCliente GET integer ID del cliente
    idProgetto GET integer ID del progetto
    DataDa GET date La data della spesa dovrà essere uguale o successiva
    DataA GET date La data della spesa dovrà essere uguale o precedente
    NonRimborsabile GET boolean non valirizzato=tutte; true=solo spese non rimborsabili; false=solo spese rimborsabili
    AddebitoCliente GET boolean non valirizzato=tutte; true=solo spese addebitabili al cliente; false=solo spese non addebitabili al cliente
    Approvazione GET boolean non valirizzato=tutte; true=solo spese approvate; false=solo spese non approvate
    Fatturata GET boolean non valirizzato=tutte; true=solo fatturate al cliente; false=solo non fatturate al cliente
    Risposta (in caso di successo)
    [
    {	
    	idNotaSpese (integer): ID assegnato da BiPro alla spesa,
    	idEsecuzioneAttivita (integer): ID assegnato da BiPro all'attività a cui la spesa è collegata,
    	idUtente (integer): ID dell'utente che ha effettuato la spesa,
    	Utente (string): Utente che ha effettuato l'attivit`, 
    	DataSpesa (date): Data in cui è stata effetturata la spesa, 
    	idNotaSpeseCategoria (integer): ID della categoria della spesa,
    	NotaSpeseCategoria (string): Categoria della spesa, 
    	idNotaSpeseGiustificativo (integer): ID del giustificativo della spesa,
    	NotaSpeseGiustificativo (string): Giustificativo della spesa, 
    	ImportoSpesa (double): Importo della spesa,
    	Luogo (string): Luogo della spesa, 
    	Descrizione (string): Descrizione della spesa, 
    	idModalitaPagamento (integer): ID della modalità di pagamento della spesa,
    	ModalitaPagamento (string): Modalità di pagamento della spesa, 
    	Km (double): Chilometri, nel caso di rimborso chilometrico,
    	CostoKm (double): Costo chilometrico, nel caso di rimborso chilometrico,
    	NonRimborsabile (boolean): true se la spesa non è rimborsabile,
    	AddebitoCliente (boolean): true se la spesa è addebitabile al cliente,
    	Approvazione (boolean): true se la spesa è approvata,
    	Fatturata (boolean): true se la spesa è identificata con fatturata al cliente,
    	idCliente (integer): ID assegnato da BiPro al cliente,
    	RagioneSociale (string): Nome o ragione sociale del cliente,
    	idProgetto (integer): ID assegnato da BiPro al progetto,
    	Progetto (string): Titolo del progetto
    },
    { ... }
    ]
    
    Esempio
    [
    {	
    	"idNotaSpese":"13",
    	"idEsecuzioneAttivita":"7027",
    	"idUtente":"7",
    	"Utente":"Rossi Stefano",
    	"DataSpesa":"30/06/2024",
    	"idNotaSpeseCategoria":"4",
    	"NotaSpeseCategoria":"Pranzo",
    	"idNotaSpeseGiustificativo":"1",
    	"NotaSpeseGiustificativo":"Ricevuta fiscale",
    	"ImportoSpesa": "30,00",
    	"Luogo":"Ristorante Mediterraneo",
    	"Descrizione":"Pranzo con responsabile Verdi SpA",
    	"idModalitaPagamento":"2",
    	"ModalitaPagamento":"Contanti",
    	"Km": "",
    	"CostoKm": "",
    	"NonRimborsabile": false,
    	"AddebitoCliente": true,
    	"Approvazione": true,
    	"Fatturata": true,
    	"idCliente":"7",
    	"RagioneSociale":"Verdi SpA",
    	"idProgetto":"9",
    	"Progetto":"Consulenza"	
    },
    {	
    	"idNotaSpese":"14",
    	"idEsecuzioneAttivita":"7028",
    	"idUtente":"8",
    	"Utente":"Bianchi Luigi",
    	"DataSpesa":"01/07/2024",
    	"idNotaSpeseCategoria":"2",
    	"NotaSpeseCategoria":"Hotel",
    	"idNotaSpeseGiustificativo":"2",
    	"NotaSpeseGiustificativo":"Fattura",
    	"ImportoSpesa": "120,00",
    	"Luogo":"Rimini",
    	"Descrizione":"Soggiorno per fiera",
    	"idModalitaPagamento":"1",
    	"ModalitaPagamento":"Carta di credito",
    	"Km": "",
    	"CostoKm": "",
    	"NonRimborsabile": false,
    	"AddebitoCliente": true,
    	"Approvazione": true,
    	"Fatturata": false,
    	"idCliente":"10",
    	"RagioneSociale":"Neri srl",
    	"idProgetto":"9",
    	"Progetto":"Esposizione prodotti fiera"		
    }
    ]
    
    Messaggi di errore
    • Nessuna spesa trovata
  • GET /get_categorie_spese/ Elenco delle categorie di spesa
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_categorie_spese/
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idNotaSpeseCategoria GET integer ID della categoria di spesa
    Descrizione e note
    Restituisce l'elenco delle categorie delle note spese censite per la tua azienda in BiPro con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idNotaSpeseCategoria (integer): ID della categoria di spesa,
    	NotaSpeseCategoria (string): Nome della categoria di spesa
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idNotaSpeseCategoria": "100",
    	"NotaSpeseCategoria": "Pernottamento"
    },
    { 
    	"idNotaSpeseCategoria": "101",
    	"NotaSpeseCategoria": "Ristorante"
    },
    ...
    ]
    
    Messaggi di errore
    • Nessuna categoria di spesa trovata
  • GET /get_giustificativi_spese/ Elenco dei giustificativi di spesa
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_giustificativi_spese/
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idNotaSpeseGiustificativo GET integer ID del giustificativo di spesa
    Descrizione e note
    Restituisce l'elenco dei possibili giustificativi di spesa con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idNotaSpeseGiustificativo (integer): ID del giustificativo di spesa,
    	NotaSpeseGiustificativo (string): Nome del giustificativo di spesa
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idNotaSpeseGiustificativo": "1",
    	"NotaSpeseGiustificativo": "Ricevuta fiscale"
    },
    { 
    	"idNotaSpeseGiustificativo": "2",
    	"NotaSpeseGiustificativo": "Fattura"
    },
    { 
    	"idNotaSpeseGiustificativo": "3",
    	"NotaSpeseGiustificativo": "Non documentata"
    },
    { 
    	"idNotaSpeseGiustificativo": "4",
    	"NotaSpeseGiustificativo": "Scontrino fiscale"
    }
    ]
    
    Messaggi di errore
    • Nessun giustificativo di spesa trovato
  • GET /get_modalita_pagamento/ Elenco delle modalità di pagamento delle spese
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_modalita_pagamento/
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idModalitaPagamento GET integer ID della modalità di pagamento
    Descrizione e note
    Restituisce l'elenco delle possibili modalità di pagamento delle spese con relativi ID
    Risposta (in caso di successo)
    [
    {
    	idModalitaPagamento (integer): ID della modalità di pagamento,
    	ModalitaPagamento (string): Modalità di pagamento
    },
    { ... }
    ]
    
    Esempio
    [
    { 
    	"idModalitaPagamento": "1",
    	"ModalitaPagamento": "Carta di credito"
    },
    { 
    	"idModalitaPagamento": "2",
    	"ModalitaPagamento": "Bonifico"
    },
    { 
    	"idModalitaPagamento": "3",
    	"ModalitaPagamento": "Contanti"
    },
    { 
    	"idModalitaPagamento": "4",
    	"ModalitaPagamento": "Assegno"
    }
    ]
    
    Messaggi di errore
    • Nessuna modalità di pagamento trovata
  • POST /set_spesa/ Crea/Aggiorna una spesa dell'utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_spesa/
    Descrizione e note
    Crea o aggiorna una spesa collegata ad una attività dichiarata dall'utente. Per l'identificazione della spesa da modificare deve essere fornito il parametro idNotaSpese.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idNotaSpese POST integer ID assegnato da BiPro alla spesa: identifica la spesa da modificare e di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di una nuova spesa
    idEsecuzioneAttivita POST integer ID dell'attività dell'utente a cui deve essere collegata la spesa; obbligatorio (cfr web-service get_esecuzioni_attivita)
    ImportoSpesa POST double Importo della spesa; obbligatorio
    Descrizione POST string max 500 Testo libero descrittivo della spesa; obbligatorio
    Luogo POST string max 100 Luogo dove è stata sostenuta la spesa
    idNotaSpeseCategoria POST integer ID della categoria di spesa (cfr web-service get_categorie_spese)
    idModalitaPagamento POST integer ID della modalità di pagamento (cfr web-service get_modalita_pagamento)
    idNotaSpeseGiustificativo POST integer ID del giustificativo (fattura, ricevuta,... cfr web-service get_giustificativi_spese)
    NonRimborsabile POST boolean (default false) true se la spesa non è rimborsabile
    Km POST double Numero di chilometri, se la spesa si riferisce al rimborso chilometrico
    CostoKm POST double Costo al chilometro, se la spesa si riferisce al rimborso chilometrico
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Spesa creata/aggiornata, 
    	idNotaSpese (integer): ID assegnato da BiPro alla spesa
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Spesa creata",
    	"idNotaSpese": "1"
    }
    
    Messaggi di errore
    • Spesa non trovata, verificare il campo idNotaSpese
    • Esecuzione attività non trovata, verificare il campo idEsecuzioneAttivita
    • Modalità di pagamento non trovata, verificare il campo idModalitaPagamento
    • Categoria spesa non trovata, verificare il campo idNotaSpeseCategoria
    • Giustificativo spesa non trovato, verificare il campo idNotaSpeseGiustificativo
  • POST /del_spesa/ Elimina una spesa dell'utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_spesa/
    Descrizione e note
    Elimina una spesa collegata ad una attività dichiarata dall'utente. Per l'identificazione della spesa deve essere fornito il parametro idNotaSpese (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idNotaSpese POST integer ID assegnato da BiPro alla spesa; identifica la spesa da eliminare (cfr web-service get_spese)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Spesa eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Spesa eliminata"
    }
    
    Messaggi di errore
    • Il parametro idNotaSpese deve contenere un valore numerico intero
    • Spesa non trovata, verificare il campo idNotaSpese
E' possibile integrare il proprio timbratore presenze aziendale (timbratore cartellino) con il calendario di BiPro.
L'invio delle timbrature ha come effetto la colorazione in verde dello sfondo del calendario nei periodi in cui l'utente risulta presente.
E' possibile inviare una timbratura completa di entrata e uscita (cfr set_timbratura) oppure registrare in tempo reale le entrate (cfr set_timbratura_ingresso) e le uscite (cfr set_timbratura_uscita) di un utente.
  • GET /get_timbrature/ Elenco delle timbrature
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_timbrature/
    Descrizione e note
    Restituisce l'elenco delle timbrature.
    Il web service suddivide i risultati in pagine ciascuna con 100 timbrature; utilizzare il parametro NumeroPagina per scorrere tra le pagine dei risultati.
    Parametri richiesta (opzionali per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idTimbratura GET integer ID assegnato da BiPro alla timbratura; da utilizzare per recuperare le informazioni di una singola timbratura (se specificato questo valore non verranno considerati gli altri parametri di ricerca)
    NumeroPagina GET integer Specifica il numero di pagina dei risultati (se non specificato vale 1)
    idUtente GET integer ID dell'utente
    DataDa GET date La data di timbratura dovrà essere uguale o successiva
    DataA GET date La data di timbratura dovrà essere uguale o precedente
    Risposta (in caso di successo)
    [
    {	
    	idTimbratura (integer): ID assegnato da BiPro all'esecuzione dell'attivit`,
    	idUtente (integer): ID assegnato da BiPro all'utente,
    	Cognome (string): Cognome dell'utente che ha effettuato la timbratura, 
    	Nome (string): Nome dell'utente che ha effettuato la timbratura, 
    	Data (date): Data in cui è stata effetturata la timbratura, 
    	OraEntrata (time): Ora di ingresso, 
    	OraUscita (time): Ora di uscita, 
    	Permanenza (integer): Minuti di permanenza (tra ora ingresso e di uscita oppure ora attuale se uscita non ancora registrata)
    },
    { ... }
    ]
    
    Esempio
    [
    {	
    	"idTimbratura":"1",
    	"idUtente":"3",
    	"Utente":"Rossi Stefano",
    	"Data":"30/03/2024",
    	"OraEntrata":"09:11",
    	"OraFine":"11:11",
    	"Permanenza":"120"
    },
    {	
    	"idTimbratura":"2",
    	"idUtente":"7",
    	"Utente":"Bianchi Luigi",
    	"Data":"30/03/2024",
    	"OraEntrata":"14:01",
    	"OraFine":"18:01",
    	"Permanenza":"240"
    }
    ]
    
    Messaggi di errore
    • Nessuna timbratura trovata
  • POST /set_timbratura/ Crea/Aggiorna un'attività sul calendario dell'utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_timbratura/
    Descrizione e note
    Crea o aggiorna una timbratura. Per l'identificazione della timbratura deve essere fornito il parametro idTimbratura.
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idTimbratura POST integer ID assegnato da BiPro alla timbratura: identifica la timbratura di cui eseguire l'aggiornamento; da non valorizzare in caso di creazione di una timbratura
    idUtente GET integer ID dell'utente; obbligatorio (cfr web-service get_utenti o get_utente)
    Data GET date min 10, max 10 (GG/MM/AAAA) Data di timbratura; obbligatorio
    OraEntrata GET time min 5, max 5 (HH:MM) Orario di ingresso; obbligatorio
    OraUscita GET time min 5, max 5 (HH:MM) Orario di uscita; obbligatorio
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Timbratura creata/aggiornata, 
    	idTimbratura (integer): ID assegnato da BiPro alla timbratura
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Timbratura creata",
    	"idTimbratura": "1"
    }
    
    Messaggi di errore
    • Utente non trovato, verificare il campo idUtente
    • Utente non attivo
  • POST /set_timbratura_ingresso/ Registra ingresso utente (Timbratura di entrata)
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_timbratura_ingresso/
    Descrizione e note
    Crea una timbratura di ingresso utente in azienda: La data e l'ora di ingresso sono quelle attuali al momento della chiamata
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idUtente GET integer ID dell'utente che entra in azienda; obbligatorio (cfr web-service get_utenti o get_utente)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Ingresso registrato, 
    	idTimbratura (integer): ID assegnato da BiPro alla timbratura
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Ingresso registrato",
    	"idTimbratura": "1"
    }
    
    Messaggi di errore
    • Utente non trovato, verificare il campo idUtente
    • Utente non attivo
    • L'utente risulta già presente in azienda: timbratura con id [idTimbratura] senza uscita registrata
  • POST /set_timbratura_uscita/ Registra uscita utente (Timbratura di uscita)
  • URL richiesta
    https://api.bipro.it/pm2/ws/set_timbratura_uscita/
    Descrizione e note
    Crea una timbratura di uscita utente dall'azienda: La data e l'ora di uscita sono quelle attuali al momento della chiamata
    Parametri richiesta
    Parametro Modalità Tipo Vincoli / Lunghezza max Note
    idUtente GET integer ID dell'utente che esce dell'azienda; obbligatorio (cfr web-service get_utenti o get_utente)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Uscita registrata, 
    	idTimbratura (integer): ID assegnato da BiPro alla timbratura
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Uscita registrata",
    	"idTimbratura": "1"
    }
    
    Messaggi di errore
    • Utente non trovato, verificare il campo idUtente
    • Utente non attivo
    • L'utente non risulta presente in azienda
  • POST /del_timbratura/ Elimina una timbratura dell'utente
  • URL richiesta
    https://api.bipro.it/pm2/ws/del_timbratura/
    Descrizione e note
    Elimina una timbratura. Per l'identificazione della timbratura deve essere fornito il parametro idTimbratura (in modalità POST).
    Parametri richiesta
    Parametro Modalità Tipo Note
    idTimbratura POST integer ID assegnato da BiPro alla timbratura; identifica la timbratura da eliminare (cfr web-service get_timbrature)
    Risposta (in caso di successo)
    { 
    	valid (boolean), 
    	message (string): Timbratura eliminata
    }
    
    Esempio
    { 
    	"valid": true, 
    	"message": "Timbratura eliminata"
    }
    
    Messaggi di errore
    • Il parametro idTimbratura deve contenere un valore numerico intero
    • Timbratura non trovata, verificare il campo idTimbratura
  • GET /get_log/ Elenco dei log di sistema
  • URL richiesta
    https://api.bipro.it/pm2/ws/get_log/
    Descrizione e note
    Con questo web service è possibile recuperare i log di sistema in cui sono registrate le azioni di creazione, modifica e cancellazione effettuati da parte degli utenti sui vari elementi (anagrafiche, timesheet, spese...). Il web service restituisce un massimo di 5.000 modifiche per chiamata; si consiglia pertanto di effettuare richiete su intervalli temporali non eccessivamente ampi (il massimo consentito è 30 giorni).
    Parametri richiesta (per filtro dell'elenco)
    Parametro Modalità Tipo Note
    idLogTabella POST integer ID della tipologia di elemento, obbligatorio. Fare riferimento al seguente elenco di riferimento:
    1. Utente
    4. Canale
    5. Cliente
    6. Fornitore
    7. Progetto
    8. Attivita' di progetto
    9. Tipologia di attivita'
    10. Timesheet
    12. Costo
    14. Fattura passiva
    15. Ricavo
    16. Fattura attiva
    21. Nota spese
    22. Categoria spesa
    24. Contratto
    idUtente GET integer ID dell'utente, opzionale
    DataDa GET date La data dell'azione dovrà essere uguale o successiva, obbligatorio (max 30 giorni tra DataDa e DataA)
    DataA GET date La data dell'azione dovrà essere uguale o precedente, obbligatorio (max 30 giorni tra DataDa e DataA)
    Risposta (in caso di successo)
    [
    {	
    	Data (date): Data in cui è stata effettuata la modifica, 
    	OraInizio (time): Ora in cui è stata effettuata la modifica, 
    	Azione (string): new/update/delete, 
    	id (integer): ID assegnato a BiPro all'elemento,
    	CampoOggetto (string): Tipologia di elemento (es. Timesheet, Progetto, Utente,...), 
    	Oggetto (string): Testo o altro identificativo principale dell'elemento (es. Nome del progetto), 
    	idUtente (integer): ID assegnato da BiPro all'utente che ha effettuato la modifica,
    	Cognome (string): Cognome dell'utente che ha effettuato la modifica, 
    	Nome (string): Nome dell'utente che ha effettuato la modifica, 
    	Note (string): Eventuali note relative alla modifica
    },
    { ... }
    ]
    
    Esempio
    [
    {	
    	"Data":"04/02/2024",
    	"OraInizio":"09:00",
    	"Azione":"new",
    	"id":"245",
    	"CampoOggetto":"Utente",
    	"Oggetto":"Rossi",
    	"idUtente":"7",
    	"Cognome":"Verdi",
    	"Nome":"Stefano",
    	"Note":""
    },
    {	
    	"Data":"04/02/2024",
    	"OraInizio":"09:30",
    	"Azione":"update",
    	"id":"245",
    	"CampoOggetto":"Utente",
    	"Oggetto":"Rossi",
    	"idUtente":"7",
    	"Cognome":"Verdi",
    	"Nome":"Stefano",
    	"Note":""
    }
    ]
    
    Messaggi di errore
    • Nessun log trovato
    • Definire il periodo DataDa/DataA
    • Il periodo massimo selezionabile 30 giorni
    • Parametro idLogTabella obbligatorio
× Attenzione! Testo dell'errore