Ideea API Reference

API Endpoint
https://api.ideea.io/
Request Content-Types: application/json
Response Content-Types: application/json
Schemes: https
Version: 1.4.5

Authentication

bearerAuth

type
apiKey
name
Authorization
in
header

Auth

GET /api/v1/auth

Check auth status

200 OK

Returns the user ID

POST /api/v1/auth/login

Login

email: string
in formData

Email

password: string
in formData

Password

200 OK

Returns an access token

User

GET /api/v1/user

Get the current user

200 OK

Returns the current user

Response Example (200 OK)
{
  "id": "string",
  "email": "string",
  "password": "string",
  "first_name": "string",
  "last_name": "string",
  "display_name": "string",
  "profile_image": "string"
}

POST /api/v1/user

Update current user

first_name: string
in formData

first_name

last_name: string
in formData

last_name

display_name: string
in formData

display_name

200 OK

Returns the upated user

Response Example (200 OK)
{
  "id": "string",
  "email": "string",
  "password": "string",
  "first_name": "string",
  "last_name": "string",
  "display_name": "string",
  "profile_image": "string"
}

Groups

GET /api/v1/groups/{group_id}

Get single group

group_id: string
in path

Group ID

200 OK

Returns the requested group

Response Example (200 OK)
{
  "id": "string",
  "name": "string",
  "customer_id": "string"
}

POST /api/v1/groups/{group_id}

Update single group

name: string
in formData

Name

group_id: string
in path

Group ID

200 OK

Returns updated group

Response Example (200 OK)
{
  "id": "string",
  "name": "string",
  "customer_id": "string"
}

GET /api/v1/groups/{group_id}/users

Get all users in a group

group_id: string
in path

Group ID

200 OK

Returns array of users

POST /api/v1/groups/{group_id}/users/invite

Invite a new or existing user to a group by email

group_id: string
in path

Group ID

user_id: string
in path

User ID

200 OK

Returns the user ID of the removed user

Response Example (200 OK)
{
  "id": "string",
  "email": "string",
  "password": "string",
  "first_name": "string",
  "last_name": "string",
  "display_name": "string",
  "profile_image": "string"
}

POST /api/v1/groups/{group_id}/users/add

Add user to group by ID

user_id: string
in formData

User ID

group_id: string
in path

Group ID

200 OK

Returns the ID of the user

DELETE /api/v1/groups/{group_id}/users/remove/{user_id}

Remove user from group

group_id: string
in path

Group ID

user_id: string
in path

User ID

200 OK

Returns the user ID of the removed user

GET /api/v1/groups/{group_id}/charges

Get the groups charges

group_id: string
in path

Group ID

200 OK

Returns array of charges

GET /api/v1/groups/{group_id}/charges/{charge_id}

Get single charge

group_id: string
in path

Group ID

charge_id: string
in path

Charge ID

200 OK

Returns charge object

Response Example (200 OK)
{
  "id": "string",
  "group_id": "string",
  "created_by": "string",
  "api": "string",
  "status": "string",
  "description": "string"
}

IAM

IAM

GET /api/v1/iam/group/{group_id}/system-accounts

Get all system accounts for a group

group_id: string
in path

Group ID

200 OK

Returns array of system accounts

IAM

POST /api/v1/iam/group/{group_id}/system-accounts/create

Create new system account

name: string
in formData

Name

password: string
in formData

Password

group_id: string
in path

Group ID

200 OK

Returns array of system accounts

Response Example (200 OK)
{
  "id": "string",
  "email": "string",
  "password": "string",
  "first_name": "string",
  "last_name": "string",
  "display_name": "string",
  "profile_image": "string"
}
IAM

GET /api/v1/iam/group/{group_id}/system-accounts/{system_account_id}

Get single system account

group_id: string
in path

Group ID

system_account_id: string
in path

System Account ID

200 OK

Returns single system account

IAM

POST /api/v1/iam/group/{group_id}/system-accounts/{system_account_id}/api-keys/create

Create new API Key

name: string
in formData

Name

expires: string
in formData

Expires

password: string
in formData

Password

group_id: string
in path

Group ID

system_account_id: string
in path

System Account ID

200 OK

Creates new API Key

IAM

DELETE /api/v1/iam/group/{group_id}/system-accounts/{system_account_id}/api-keys/{api_key_id}/delete

Delete an API Key

group_id: string
in path

Group ID

system_account_id: string
in path

System Account ID

api_key_id: string
in path

API Key ID

200 OK

Returns ID of deleted API key

IAM

DELETE /api/v1/iam/group/{group_id}/system-accounts/{system_account_id}/delete

Delete a system account

group_id: string
in path

Group ID

system_account_id: string
in path

System Account ID

200 OK

Returns ID of deleted system account

IAM

POST /api/v1/iam/group/{group_id}/account/{user_id}/update-permissions

Delete an API Key

group_id: string
in path

Group ID

system_account_id: string
in path

System Account ID

user_id: string
in path

User ID

200 OK

Returns ID of deleted API key

Schema Definitions

User: object

id: string
email: string
password: string
first_name: string
last_name: string
display_name: string
profile_image: string
Example
{
  "id": "string",
  "email": "string",
  "password": "string",
  "first_name": "string",
  "last_name": "string",
  "display_name": "string",
  "profile_image": "string"
}

Group: object

id: string
name: string
customer_id: string
Example
{
  "id": "string",
  "name": "string",
  "customer_id": "string"
}

Charge: object

id: string
group_id: string
created_by: string
api: string
status: string
description: string
Example
{
  "id": "string",
  "group_id": "string",
  "created_by": "string",
  "api": "string",
  "status": "string",
  "description": "string"
}

SystemAccount: object

id: string
email: string
password: string
first_name: string
last_name: string
display_name: string
profile_image: string
Example
{
  "id": "string",
  "email": "string",
  "password": "string",
  "first_name": "string",
  "last_name": "string",
  "display_name": "string",
  "profile_image": "string"
}