FiskilFiskilFiskil DocsFiskil Docs
Log InSign Up
GuidesAPI ReferenceChangelog

Mobile menu

HomeFiskilFiskil
Log InSign Up
Introduction

Getting Started

AuthenticationErrorsPagination

CORE RESOURCES

Linking Accounts

BANKING API

ENERGY API

IDENTITY

End User

Manage end users in your Fiskil application.

AI Actions

An End User represents your user in the Fiskil platform. End users are used for linking accounts and accessing data. You'll need to create an end user before they can authorize access to their accounts.

Endpoints

MethodEndpointDescription
GET/v1/end-usersGet end user by email
POST/v1/end-usersCreate a new end user
DELETE/v1/end-users/{id}Delete an end user
GET/v1/end-users/{id}Get end user by ID

The End User Model

AttributeTypeRequiredDescription
idstringYesA unique identifier for the End User object
emailstringNoThe end user's email address. Used for notifying the end user about their consents
namestringNoThe end user's name
phonestringNoThe end user's phone number. Used for notifying the end user about their consents

Example Response

{
  "id": "482c0e2b-5866-46b1-b795-220b7bba45b5",
  "email": "john_starmer@gmail.com",
  "name": "John Starmer",
  "phone": "+614123456789"
}

Get End User by Email

Retrieve an end user using their email address.

GET https://api.fiskil.com/v1/end-users

Query Parameters

ParameterTypeRequiredDescription
emailstringNoEmail address to filter end users by

Example Request

curl --request GET \
  --url 'https://api.fiskil.com/v1/end-users?email=john@example.com' \
  --header 'Authorization: Bearer {access_token}' \
  --header 'accept: application/json; charset=UTF-8'
const response = await fetch(
  'https://api.fiskil.com/v1/end-users?email=john@example.com',
  {
    method: 'GET',
    headers: {
      'Authorization': 'Bearer {access_token}',
      'accept': 'application/json; charset=UTF-8'
    }
  }
);

const endUsers = await response.json();
import requests

response = requests.get(
    'https://api.fiskil.com/v1/end-users',
    params={'email': 'john@example.com'},
    headers={
        'Authorization': 'Bearer {access_token}',
        'accept': 'application/json; charset=UTF-8'
    }
)

end_users = response.json()

Example Response

[
  {
    "id": "482c0e2b-5866-46b1-b795-220b7bba45b5",
    "email": "john@example.com",
    "name": "John Starmer",
    "phone": "+614123456789"
  }
]

Add End User

Create a new end user for linking accounts.

POST https://api.fiskil.com/v1/end-users

Request Body

ParameterTypeRequiredDescription
emailstringNoThe end user's email address
namestringNoThe end user's name
phonestringNoThe end user's phone number in E.164 format
abnstringNoAustralian Business Number (ABN) if representing a business

Example Request

curl --request POST \
  --url https://api.fiskil.com/v1/end-users \
  --header 'Authorization: Bearer {access_token}' \
  --header 'accept: application/json; charset=UTF-8' \
  --header 'content-type: application/json; charset=UTF-8' \
  --data '{
    "email": "john@example.com",
    "name": "John Doe",
    "phone": "+614123456789"
  }'
const response = await fetch('https://api.fiskil.com/v1/end-users', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer {access_token}',
    'accept': 'application/json; charset=UTF-8',
    'content-type': 'application/json; charset=UTF-8'
  },
  body: JSON.stringify({
    email: 'john@example.com',
    name: 'John Doe',
    phone: '+614123456789'
  })
});

const result = await response.json();
console.log(result.end_user_id);
import requests

response = requests.post(
    'https://api.fiskil.com/v1/end-users',
    headers={
        'Authorization': 'Bearer {access_token}',
        'accept': 'application/json; charset=UTF-8',
        'content-type': 'application/json; charset=UTF-8'
    },
    json={
        'email': 'john@example.com',
        'name': 'John Doe',
        'phone': '+614123456789'
    }
)

result = response.json()
print(result['end_user_id'])

Example Response

{
  "end_user_id": "83064af3-bb81-4514-a6d4-afba340825cd"
}

Store the end_user_id securely—you'll need it to create auth sessions and access data for this user.

Delete End User

Delete an existing end user. This will also revoke all associated consents.

DELETE https://api.fiskil.com/v1/end-users/{id}

Path Parameters

ParameterTypeRequiredDescription
idstringYesThe ID of the end user to delete

Example Request

curl --request DELETE \
  --url https://api.fiskil.com/v1/end-users/482c0e2b-5866-46b1-b795-220b7bba45b5 \
  --header 'Authorization: Bearer {access_token}' \
  --header 'accept: application/json; charset=UTF-8'
const response = await fetch(
  'https://api.fiskil.com/v1/end-users/482c0e2b-5866-46b1-b795-220b7bba45b5',
  {
    method: 'DELETE',
    headers: {
      'Authorization': 'Bearer {access_token}',
      'accept': 'application/json; charset=UTF-8'
    }
  }
);
import requests

response = requests.delete(
    'https://api.fiskil.com/v1/end-users/482c0e2b-5866-46b1-b795-220b7bba45b5',
    headers={
        'Authorization': 'Bearer {access_token}',
        'accept': 'application/json; charset=UTF-8'
    }
)

Deleting an end user is permanent and will revoke all associated consents. This action cannot be undone.

Get End User by ID

Retrieve an end user by their ID.

GET https://api.fiskil.com/v1/end-users/{id}

Path Parameters

ParameterTypeRequiredDescription
idstringYesThe ID of the end user to fetch

Example Request

curl --request GET \
  --url https://api.fiskil.com/v1/end-users/482c0e2b-5866-46b1-b795-220b7bba45b5 \
  --header 'Authorization: Bearer {access_token}' \
  --header 'accept: application/json; charset=UTF-8'
const response = await fetch(
  'https://api.fiskil.com/v1/end-users/482c0e2b-5866-46b1-b795-220b7bba45b5',
  {
    method: 'GET',
    headers: {
      'Authorization': 'Bearer {access_token}',
      'accept': 'application/json; charset=UTF-8'
    }
  }
);

const endUser = await response.json();
import requests

response = requests.get(
    'https://api.fiskil.com/v1/end-users/482c0e2b-5866-46b1-b795-220b7bba45b5',
    headers={
        'Authorization': 'Bearer {access_token}',
        'accept': 'application/json; charset=UTF-8'
    }
)

end_user = response.json()

Example Response

{
  "id": "482c0e2b-5866-46b1-b795-220b7bba45b5",
  "email": "john_starmer@gmail.com",
  "name": "John Starmer",
  "phone": "+614123456789"
}

Was this page helpful?

Direct DebitsEnergy Accounts

On this page

EndpointsThe End User ModelExample ResponseGet End User by EmailQuery ParametersExample RequestExample ResponseAdd End UserRequest BodyExample RequestExample ResponseDelete End UserPath ParametersExample RequestGet End User by IDPath ParametersExample RequestExample Response