REST API -rajapintakuvaus
Viimeisin päivitys: 22.03.2024
Tämä dokumentti kuvaa jokaisen Efecte REST API v1:n käytettävissä olevan päätepisteen. Tämä on tekninen rajapintakuvaus - REST API:n yleiskatsauksen löydät täältä.
Tietokortteihin pääsy
GET /dc/{templateCode}/data
Hae kaikki tietokortit mallin koodin perusteella – palauttaa sivutetun luettelon tietokorttitiedoista annetulle mallille.
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| limit | number | Sivun koko – väh. 1, enint. 200 | * |
| filterId | number | Vain tietokortit, joiden tunniste on pienempi kuin filterId, palautetaan | |
| filter | string | EQL-suodatin datalle | |
| dataCards | boolean | Palautetaanko täydet tietokortit vai yksinkertaiset info-elementit | |
| selectedAttributes | string | Pilkuilla eroteltu luettelo palautettavista attribuuteista |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data?filter=%24status%24%20%3D%20%2702%20-%20Solving%27&selectedAttributes=subject%2Cstatus&limit=2&filterId=0&dataCards=true
GET /dc/{templateCode}/data/stream
Palauttaa kaikki käytettävissä olevat tietokortit striimaamalla. Monimutkaisissa ja raskaissa operaatioissa striimatut tulokset voivat olla nopeampia ja tehokkaampia kuin sivutetun datan hakeminen.
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| filter | string | EQL-suodatin datalle | |
| dataCards | boolean | Palautetaanko täydet tietokortit vai yksinkertaiset info-elementit | |
| selectedAttributes | string | Pilkuilla eroteltu luettelo palautettavista attribuuteista – jos tyhjä, kaikki palautetaan |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data?filter=%24status%24%20%3D%20%2702%20-%20Solving%27&selectedAttributes=subject%2Cstatus&limit=2&filterId=0&dataCards=true
PUT /dc/{templateCode}/data
Luo tai muokkaa useita tietokortteja
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
Esimerkki
PUT https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data
RUNKO
[
{
"folderCode": "incident_management",
"dataCardId": "12345",
"data": {
"description": {
"values": [
{
"value": "Updating incident"
}
]
},
"description": {
"values": [
{
"value": "Description"
}
]
}
}
},
{
"folderCode": "incident_management",
"data": {
"description": {
"values": [
{
"value": "Creating a new incident"
}
]
}
}
}
]
POST /dc/{templateCode}/data
Luo uusi tietokortti
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| createEmptyReferences | boolean | Luodaanko uusia viittauksia, jos viittausarvoa ei löydy järjestelmästä (kohdistus dataCardId:n perusteella) | |
| dataCards | boolean | Palautetaanko täydet tietokortit vai yksinkertaiset info-elementit |
Esimerkki
POST https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data
RUNKO
{
"folderCode": "incident_management",
"data": {
"description": {
"values": [
{
"value": "Creating incident"
}
]
},
"description": {
"values": [
{
"value": "Description"
}
]
}
}
}
GET /dc/{templateCode}/data/{dataCardId}
Hae yksittäinen tietokortti
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| selectedAttributes | String | Pilkuilla eroteltu luettelo palautettavista attribuuteista – jos tyhjä, kaikki palautetaan |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345
DELETE /dc/{templateCode}/data/{dataCardId}
Poista yksittäinen tietokortti
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
Esimerkki
DELETE https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345
PATCH /dc/{templateCode}/data/{dataCardId}
Muokkaa olemassa olevaa tietokorttia
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| createEmptyReferences | boolean | Luodaanko uusia viittauksia, jos viittausarvoa ei löydy järjestelmästä (kohdistus dataCardId:n perusteella) | |
| dataCards | boolean | Palautetaanko täydet tietokortit vai yksinkertaiset info-elementit |
EsimerkkiPATCH https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345
RUNKO
{
"folderCode": "incident_management",
"data": {
"description": {
"values": [
{
"value": "Creating incident"
}
]
},
"description": {
"values": [
{
"value": "Description"
}
]
}
}
}
GET /dc/{templateCode}/data/{dataCardId}/{attributeCode}
Hae attribuutti tietokortilta
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
| attributeCode | String | Attribuutin koodi | * |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345/subject
PUT /dc/{templateCode}/data/{dataCardId}/{attributeCode}
Päivitä attribuutti tietokortilla
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
| attributeCode | String | Attribuutin koodi | * |
Esimerkki
PUT https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345/subject
RUNKO
{
"values": [
{
"value":"Updating subject"
}
]
}
POST /dc/{templateCode}/data/{dataCardId}/{attributeCode}
Lisää arvo attribuuttiin tietokortilla
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
| attributeCode | String | Attribuutin koodi | * |
Esimerkki
POST https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345/subject
RUNKO
{
"values": [
{
"value":"Adding value to subject"
}
]
}
DELETE /dc/{templateCode}/data/{dataCardId}/{attributeCode}
Tyhjennä attribuutin arvo tietokortilla.
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
| attributeCode | String | Attribuutin koodi | * |
Esimerkki
DELETE https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345/subject
GET /dc/{templateCode}/data/{dataCardId}/{attributeCode}/file/{locationOfExternalData}
Lataa liite tietokortilta.
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
| attributeCode | String | Attribuutin koodi | * |
| locationOfExternalData | String | Tiedoston sisäinen sijainti, esim. 20210512_01 | * |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345/subject/file/20210512_01
POST /dc/{templateCode}/data/{dataCardId}/{attributeCode}/file
Lataa liite tietokortille.
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
| dataCardId | number | Tietokortin tunniste | * |
| attributeCode | String | Attribuutin koodi | * |
| locationOfExternalData | String | Tiedoston sisäinen sijainti, esim. 20210512_01 | * |
Esimerkki
POST https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident/data/12345/subject/file/20210512_01 -H "Content-Type: multipart/form-data" -F "fileName=example.png" -F "fileUpload=example.png;type=image/png"
Malleihin pääsy
GET /dc
Hae luettelo kaikista malleista.
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc
GET /dc/{templateCode}
Hae malli koodin perusteella.
PYYNTÖ
POLKUPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| templateCode | string | Mallin koodi | * |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/dc/incident
Rajapinnan testaaminen
GET /echo
Palauttaa ”message”-kyselyparametrin sisällön. Testaustarkoituksiin.
PYYNTÖ
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| message | string | Kaiutettava merkkijono | * |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/echo?message=Hello%20world
GET /echo/jwt
Palauttaa ”message”-kyselyparametrin sisällön, jos JWT-token on validi. Testaustarkoituksiin.
PYYNTÖ
KYSELYPARAMETRIT
| NIMI | TYYPPI | KUVAUS | PAKOLLINEN |
|---|---|---|---|
| message | string | Kaiutettava merkkijono | * |
Esimerkki
GET https://efecte.efectecloud.com/rest-api/itsm/v1/echo?message=Hello%20world
Vianmääritys
REST API -virheet
Virhetilanteissa – jotka voivat johtua esimerkiksi epäonnistuneesta valtuutuksesta, virheellisistä parametreista tai virheellisesti muotoillusta kyselystä – API vastaa vakiomuotoisella virhevastauksella:
{
"code": 401,
"message": "Token was empty or not provided. Token should be provided in AUTHORIZATION header.",
"error": "Unauthorized",
"url": "https://efecte.efectecloud.com/itsm/api/v1/dc/incident/data?limit=50&filterId=0",
"timestamp": "2021-12-21T11:41:22Z"
}
Vastaus sisältää aina kentät ”code”, ”error”, ”url” ja ”timestamp”, ja useimmissa tapauksissa myös ”message”, joka antaa lisätietoa taustalla olevasta ongelmasta.
Mahdolliset virheet
| KOODI | VIRHE | KUVAUS |
|---|---|---|
| 400 | Bad request | Virheellinen pyyntö, kuten väärä muotoilu tai virheelliset parametrit. |
| 401 | Unauthorized | JWT-token puuttuu pyynnöstä. |
| 403 | Forbidden | Käyttäjällä ei ole oikeuksia toimintoon – yleensä käyttäjällä on vain lukuoikeus resurssiin, mutta ei luonti-, päivitys- tai poisto-oikeutta. |
| 404 | Not found | Ei löytynyt – joko resurssia ei ole olemassa, tai käyttäjällä ei ole lukuoikeutta sen näkemiseen. Lisäksi järjestelmämallit on suodatettu pois. |
| 409 | Conflict | Yritys poistaa jo poistettu tietokortti. |
| 413 | Request too large | Ladattu tiedosto oli liian suuri. |
| 429 | Too many requests | Pyyntörajoitus on ylitetty. |
JWT-tokenin hakeminen login-päätepisteestä ei onnistu
JWT-tokenin saamiseksi kirjautumiseen käytetyllä käyttäjällä täytyy olla rooli, jolle on annettu oikeus ’External API’ -moduuliin. Jos käyttäjällä ei ole oikeuksia External API -moduuliin, login-päätepisteen vastaus sisältää tiedon riittämättömistä oikeuksista.
Jos saat unauthorized-vastauksen, vaikka käyttäjätunnus ja salasana ovat oikein ja roolilla on oikeat käyttöoikeudet, varmista, että tili on paikallinen ESM-tili.
Attribuutti ei ole nullable, ja jos lähetät arvoksi “”, kenttä ei ole enää tyhjä
String-tyyppinen attribuutti sisältää seuraavat vaihtoehdot: string | number | date
StaticValuen kanssa:
- Value - string
- code - string
- nullable - True
Jos siis haluat tyhjän attribuuttiarvon REST API:n kautta, käytä tätä syntaksia:
"email": {
"values": [
{
"value": null
}
]
}
Table of Contents