Authentication
Pika-aloitus
Jokainen API-pyyntö edellyttää Authorization-otsaketta, jossa on tunnuksesi, sekä X-Client-System -otsaketta, joka yksilöi sovelluksesi:
curl https://app.fenerum.com/api/v1/accounts/ \
-H "Authorization: Token your-token-here" \
-H "X-Client-System: YourAppName"Pidä API-tunnus salassa! Kohtele sitä kuin salasanaa — älä koskaan tallenna sitä versionhallintaan tai paljasta asiakaspuolen koodissa.
Näin todennus toimii
Fenerum API käyttää tunnuspohjaista todennusta. Lisää API-tunnuksesi jokaisen pyynnön Authorization-otsakkeeseen seuraavassa muodossa:
Authorization: Token <your-token>Kaikki pyynnöt tulee tehdä HTTPS:n yli osoitteeseen https://app.fenerum.com/
API-tunnuksen luominen
Luo API-tunnus Fenerum-organisaatiosi asetuksista:
- Siirry kohtaan Settings → Integrations
- Napsauta Fenerum-osiossa Create API user
Tämä luo API USERIN, jolla on yksilöllinen tunnus. API USER näkyy käyttäjälistassasi ja sillä on oletuksena täydet oikeudet — voit mukauttaa oikeuksia käyttäjäprofiilissa.
Pakolliset otsakkeet
Jokaisessa API-pyynnössä on oltava seuraavat otsakkeet:
| Header | Required | Example | Description |
|---|---|---|---|
Authorization | Pakollinen | Token abc123def456 | API-tunnuksesi. Muoto: Token <your-token> |
X-Client-System | Pakollinen | MyAwesomeCRM | Sovelluksesi tai integraatiosi nimi. Käytetään tuessa ja tarkastuslokeissa. |
X-User | Suositeltu | john.doe | Järjestelmäsi käyttäjätunnus. Mahdollistaa yksityiskohtaiset tarkastuslokit (audit trail), jotka osoittavat, mikä käyttäjä teki minkäkin muutoksen. |
X-User-otsake on erityisen hyödyllinen vianmäärityksessä ja compliance-vaatimusten täyttämisessä — sen avulla voit jäljittää jokaisen API-toiminnon järjestelmäsi tiettyyn käyttäjään.
Esimerkkejä
Tietojen noutaminen
curl https://app.fenerum.com/api/v1/accounts/ \
-H "Authorization: Token abc123def456" \
-H "X-Client-System: MyAwesomeCRM" \
-H "X-User: john.doe"Resurssien luominen
curl -X POST https://app.fenerum.com/api/v1/accounts/ \
-H "Authorization: Token abc123def456" \
-H "X-Client-System: MyAwesomeCRM" \
-H "X-User: john.doe" \
-H "Content-Type: application/json" \
-d '{
"code": "CUST001",
"name": "Acme Corporation",
"email": "contact@acme.com"
}'Täydellinen HTTP-pyyntö
POST /api/v1/accounts/ HTTP/1.1
Host: app.fenerum.com
Authorization: Token abc123def456
X-Client-System: MyAwesomeCRM
X-User: john.doe
Content-Type: application/json
{
"code": "CUST001",
"name": "Acme Corporation",
"email": "contact@acme.com"
}Tärkeitä tietoja
Perus-URL
Kaikki API-päätepisteet ovat suhteessa tähän osoitteeseen:
https://app.fenerum.com/Loppukauttaviivat ovat pakollisia
Kaikki API-URL-osoitteet päättyvät loppukauttaviivaan (/).
Tämä on erityisen tärkeää POST-, PUT- ja PATCH-pyynnöissä. Automaattinen uudelleenohjaus osoitteesta ilman loppukauttaviivaa osoitteeseen, jossa on loppukauttaviiva, on mahdollinen pyynnöille, joiden runko on tyhjä (GET, HEAD, OPTIONS, DELETE), mutta ei pyynnöille, joissa on sisältö (kuten POST, PUT tai PATCH).
Oikein:
/api/v1/accounts/
/api/v1/accounts/123/Väärin:
/api/v1/accounts
/api/v1/accounts/123Määrityksen testaaminen
Varmista todennuksen toimivuus yksinkertaisella pyynnöllä:
curl https://app.fenerum.com/api/v1/accounts/ \
-H "Authorization: Token your-token-here" \
-H "X-Client-System: TestClient"Onnistunut vastaus (HTTP 200)
{
"count": 10,
"next": "https://app.fenerum.com/api/v1/accounts/?page=2",
"previous": null,
"results": [
{
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"code": "CUST001",
"name": "Acme Corporation",
"email": "contact@acme.com"
}
]
}Virhevastaus (HTTP 401)
{
"detail": "Invalid token."
}Vianmääritys
Jos saat todennusvirheitä, tarkista:
- Puuttuva
Authorization-otsake — Jokaisessa pyynnössä on oltava tämä otsake - Väärä tunnuksen muoto — Muodon on oltava
Token <your-token>, ei pelkästään tunnuksen arvo - Vanhentunut tai peruttu tunnus — Tunnukset voidaan poistaa käytöstä käyttäjäasetuksissa
- Väärä organisaatio — Tunnukset ovat organisaatiokohtaisia eivätkä toimi organisaatioiden välillä
- Puuttuva
X-Client-System— Tämä pakollinen otsake on oltava kaikissa pyynnöissä
Ongelmia edelleen? Ota yhteyttä tukitiimiimme ja toimita pyyntösi tiedot (ilman tunnustasi).