REST - Ottenere l'elenco delle liste/enumerativi
SeguiMolti campi in Altamira HRM sono elenchi a discesa.
Nelle versioni v2 e v1 usando l'API puoi farti dare l'elenco di tutte le liste usate dai campi delle viste che avete esposto usando la risorsa Lists.
Nella versione v3 invece non sarà più necessario. Basterà aggiungere il parametro querystring "structure"=true alle chiamate delle view di tipo maschera per ottenere la struttura di quella view all'interno della properità "view". Questa conterrà una serie di proprietà con all'interno degli array di oggetti Json che rappresentano in forma gerarchica le tab (proprietà "tabs"), i loro titoli (proprietà "titles") ed i campi in essi contenuti (proprietà "fields"). Queste informazioni saranno utili per definire la struttura dei dati da utilizzare nella scrittura o creazione dei record (come il tipo di campi o la loro obbligatorietà), ed anche per ottenere gli elementi di ogni campo di tipo "lista" (con la proprietà "dataType"="type_list") contenuti all'intterno della properità "options" (che conterrà un array di oggetti Json).
REST V3 - Lettura di una view di maschera con la sua struttura
In questa versione dell'API il metodo da utilizzare è il GET.
Adesso puoi recuperare la URL per accedere all'API:
- Dalla gestione delle view copia la URL del API REST
Prima di chiamare questa url è necessario ottenere un token JWT come spiegato nell’articolo precedente al punto 1.
Prametro |
Nome |
Descrizione |
Tipo |
header |
Token (obbligatorio) |
Token generato precedentemente da AltamiraHRM |
string |
header |
environment |
Restituisce i dati nel formato corrispondente a quello ricevuto.
Valori disponibili : Frontend, Mobile, Api
Valore predefinito : Api |
string |
querystring |
filters |
Filtri da applicare ai dati della view. |
string |
querystring |
structure |
Visualizza la proprietà 'view' nel Json restituito Valore predefinito: false |
boolean |
Inviando il parametro structure uguale a true ecco le caratteristiche delle proprietà contenute nell’oggetto JSON restituito:
Proprietà |
Descrizione |
Tipo |
view |
Array contenente gli oggetti relativi alla struttura della view |
Array di oggetti |
count |
il numero di elementi trovati |
Numero intero |
data |
Array contenente gli oggetti da inserire o modificare |
Array di oggetti |
result |
Array contenente lo stato dell'operazione ed eventuali errori o altre informazioni aggiuntive |
Array di oggetti |
Un esempio di possibile Json ottenuto (in questo caso da una view di nuovo cv, in cui l'id era 0) può essere il seguente:
{
"view": {
"entity": "Curricula",
"type": "Maschera",
"subType": "Maschera",
"tagName": "views/CV/edit_api",
"primaryKey": "id",
"primaryKeyTagName": "CV_CVID",
"tabs": [
{
"text": "CV",
"visible": true,
"numColumns": 1,
"titles": [
{
"text": "CV attachment",
"visible": true,
"numColumns": 1,
"column": 1,
"fields": [
{
"viewFieldID": 1,
"fieldId": 1,
"tagName": "id",
"controlType": "Label",
"dataType": "type_int",
"fileType": "NotSet",
"viewType": "NotSet",
"subType": "NotSet",
"label": "CVID",
"column": 0,
"useBorderOnImages": false,
"visible": false,
"readOnly": true,
"hideLabel": false,
"hideHeader": false,
"rangeMin": 0,
"rangeMax": 0,
"defaultaValue": null,
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": null,
"width": null,
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": false,
"path": "/E1/",
"htmlEditorToolbarType": "Minimal",
"options": null,
"linkSection": "",
"linkSectionKeys": []
},
{
"viewFieldID": 12094117,
"fieldId": 416,
"tagName": "CV_Attachment",
"controlType": "FilePreview",
"dataType": "type_file",
"fileType": "Text",
"viewType": "NotSet",
"subType": "NotSet",
"label": "CV attachment",
"column": 0,
"useBorderOnImages": true,
"visible": true,
"readOnly": false,
"hideLabel": true,
"hideHeader": false,
"rangeMin": 0,
"rangeMax": 0,
"defaultaValue": "",
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": "600px",
"width": "100%",
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": false,
"path": "/E1/",
"htmlEditorToolbarType": "Minimal",
"options": null,
"linkSection": "",
"linkSectionKeys": []
}
]
},
{
"text": "Recommendation letters",
"visible": true,
"numColumns": 1,
"column": 1,
"fields": [
{
"viewFieldID": 12094142,
"fieldId": 11779912,
"tagName": "views/SendCvLetter/Lettere_di_accompagnamento",
"controlType": "NotSet",
"dataType": "NotSet",
"fileType": "NotSet",
"viewType": "Stampa",
"subType": "Stampa",
"label": "",
"column": 0,
"useBorderOnImages": true,
"visible": true,
"readOnly": false,
"hideLabel": true,
"hideHeader": false,
"defaultaValue": "",
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": "",
"width": "",
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": true,
"path": "/E1/R50001/E2/R50015/E21/R30092/E5500308/",
"htmlEditorToolbarType": "Minimal",
"options": null,
"linkSection": "",
"linkSectionKeys": []
}
]
},
{
"text": "Personal data",
"visible": true,
"numColumns": 1,
"column": 1,
"fields": [
{
"viewFieldID": 12094164,
"fieldId": 24,
"tagName": "CV_Name",
"controlType": "Text"
"dataType": "type_nVarChar",
"fileType": "NotSet",
"viewType": "NotSet",
"subType": "NotSet",
"label": "Name",
"column": 0,
"useBorderOnImages": true,
"visible": true,
"readOnly": false,
"hideLabel": false,
"hideHeader": false,
"rangeMin": 0,
"rangeMax": 50,
"defaultaValue": "",
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": "",
"width": "",
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": false,
"path": "/E1/",
"htmlEditorToolbarType": "Minimal",
"options": null,
"linkSection": "",
"linkSectionKeys": []
},
{
"viewFieldID": 12094165,
"fieldId": 25,
"tagName": "CV_Surname",
"controlType": "Text",
"dataType": "type_nVarChar",
"fileType": "NotSet",
"viewType": "NotSet",
"subType": "NotSet",
"label": "Surname",
"column": 0,
"useBorderOnImages": true,
"visible": true,
"readOnly": false,
"hideLabel": false,
"hideHeader": false,
"rangeMin": 0,
"rangeMax": 50,
"defaultaValue": "",
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": "",
"width": "",
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": false,
"path": "/E1/",
"htmlEditorToolbarType": "Minimal",
"options": null,
"linkSection": "",
"linkSectionKeys": []
},
{
"viewFieldID": 12094166,
"fieldId": 3,
"tagName": "CV_Age",
"controlType": "Text",
"dataType": "type_int",
"fileType": "NotSet",
"viewType": "NotSet",
"subType": "NotSet",
"label": "Age",
"column": 0,
"useBorderOnImages": true,
"visible": true,
"readOnly": true,
"hideLabel": false,
"hideHeader": false,
"rangeMin": 0,
"rangeMax": 0,
"defaultaValue": "",
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": "",
"width": "",
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": false,
"path": "/E1/",
"htmlEditorToolbarType": "Minimal",
"options": null,
"linkSection": "",
"linkSectionKeys": []
},
{
"viewFieldID": 12094167,
"fieldId": 26295,
"tagName": "CV_English",
"controlType": "Combo",
"dataType": "type_List",
"fileType": "NotSet",
"viewType": "NotSet",
"subType": "NotSet",
"label": "English levels",
"column": 0,
"useBorderOnImages": true,
"visible": true,
"readOnly": false,
"hideLabel": false,
"hideHeader": false,
"rangeMin": 0,
"rangeMax": 0,
"defaultaValue": "",
"helpOrNullSelectionText": "",
"numLevels": 0,
"mandatory": false,
"hideCheckboxText": false,
"height": "",
"width": "",
"dateTimePickerStep": 0,
"format": null,
"radioButtonOrientation": "NotSet",
"filePlaceholder": "TextNoFile",
"subViewLoadValuesInNew": false,
"subView": false,
"path": "/E1/",
"htmlEditorToolbarType": "Minimal",
"options": [
{
"id": 2,
"value": "Basic"
},
{
"id": 4,
"value": "Excellent"
},
{
"id": 5,
"value": "Mother tongue"
},
{
"id": 1,
"value": "No knowledge"
},
{
"id": 3,
"value": "Working knowledge"
}
],
"linkSection": "",
"linkSectionKeys": []
}
]
}
]
}
]
},
"count": 1,
"data": [
{
"id": null,
"CV_Attachment": null,
"CV_Name": null,
"CV_Surname": null,
"CV_Age": null,
"CV_English": null,
"outcomes": [
{
"outcomeId": 11810819,
"outcomeName": "Positive",
"buttonName": "Positive",
"type": 1
},
{
"outcomeId": 11810820,
"outcomeName": "Negative",
"buttonName": "Negative",
"type": 2
},
{
"outcomeId": 11810821,
"outcomeName": "Stand by",
"buttonName": "Stand by",
"type": 3
},
{
"outcomeId": 11810813,
"outcomeName": "Expired",
"buttonName": "Expired",
"type": 2
}
],
"status": {
"statusID": 11810672,
"statusName": "Screening",
"statusType": 1
}
}
],
"result": [
{
"status": "Extracted",
"statusMessage": "",
"details": []
}
]
}
EST v2 -Liste
I parametri per chiamare la risorsa Lists sono:
Parametro |
Nome |
Descrizione |
Tipo |
header |
Token (required) |
Token generato precedentemente da AltamiraHRM |
string
|
parameter |
Language |
La lingua della richiesta |
string |
allora la URL per invocare la risorsa Lists è:
questa url dovrà essere chiamata col metrodo POST
REST v1 - Liste
I parametri per chiamare la risorsa Lists sono:
ApiKey | La chiave API. Per maggiore sicurezza consigliamo di passare la chiavenella header HTTP |
Language | La lingua della richiesta |
Per esempio, se la URL di base del API REST è https://platform.altamirahrm.com/api/v1/altamira/REST
allora la URL per invocare la risorsa Lists è:
Per entrambe le versioni l'output sarà strutturato così:
{
"Lists": [
{
"ListName": "Business units",
"TagName": "Vacancy.BusinessUnits",
"Hierarchical": "0"
},
{
"ListName": "Locations",
"TagName": "Vacancy.Locations",
"Hierarchical": "0"
},
{
"ListName": "State",
"TagName": "Jobs.State",
"Hierarchical": "0"
}
]
}
Ogni lista ha i seguenti attributi:
- ListName: il nome della lista nella lingua che hai impostato
- TagName: il nome univoco della lista, usato per ottenere gli elementi della lista
- Hierarchical: indica se la lista è gerarchica o meno. Se la lista è gerarchica possono essere usati gli operatori di confronto gerarchici
Con il TagName della lista è possibile ottenere gli elementi della lista dalla risorsa ListItems.
I parametri per chiamare la risorsa ListItems sono:
ApiKey | La chiave API. Per maggiore sicurezza consigliamo di passare la chiavenella header HTTP |
TagName | Il TagName della lista ricevuto dalla risorsa Lists |
Language | La lingua della richiesta |
Ecco un esempio della URL per la risorsa ListItems:
- https://platform.altamirahrm.com/api/v1/altamira/REST/ListItems?ApiKey=0123456789&TagName=LISTTAGNAME&Language=ENG
L'output sarà strutturato così:
{
"ListItems": [
{
"ID": "123456789",
"DisplayName": "Sales & Marketing",
"DisplayNamePath": "/Sales & Marketing/",
"IDPath": "/123456789/",
"NestLevel": "0",
"CustomerID": "123"
},
{
"ID": "987654321",
"DisplayName": "Finance",
"DisplayNamePath": "/Finance/",
"IDPath": "/987654321/",
"NestLevel": "0",
"CustomerID": "321"
}
]
}
Ogni elemento della lista ha i seguenti attributi:
- ID: L'ID dell'elemento
- DisplayName: Il testo dell'elemento nella lingua che hai impostato
- DisplayNamePath: Il percorso testuale completo dell'elemento nella lingua che hai impostato
- IDPath: Il percorso numerico completo dell'elemento nella lingua che hai impostato
- NestLevel: Il livello di nidificazione dell'elemento se la lista è gerarchica
- CustomerID: L'ID che il cliente ha dato a questo elemento
Commenti
0 commenti
Accedi per aggiungere un commento.