Invite-Application API (0.0.1)

Download OpenAPI specification:Download

This describes the REST interface to the invite-application API.

Design

The arcitectural design for this application can be found here

Retrieve an invite

Retrieves a single invite

query Parameters
id
required
string <uuid>

Invite ID

Responses

Response samples

Content type
application/json
{
  • "role": {},
  • "user": {
    },
  • "enddate": "2022-02-23 12:00",
  • "state": "accepted"
}

Sends an invite to a user

Request Body schema: application/json
required
object
required
object
enddate
required
string <date>

Responses

Request samples

Content type
application/json
{
  • "role": {},
  • "user": {
    },
  • "enddate": "2022-02-23 12:00"
}

Response samples

Content type
application/json
{
  • "role": {},
  • "user": {
    },
  • "enddate": "2022-02-23 12:00",
  • "state": "accepted"
}

Update an invite

Request Body schema: application/json
required
object
required
object
enddate
required
string <date>

Responses

Request samples

Content type
application/json
{
  • "role": {},
  • "user": {
    },
  • "enddate": "2022-02-23 12:00"
}

Response samples

Content type
application/json
{
  • "code": 401,
  • "message": "Unauthorized"
}

Revoke an invite

Deletes the invite specified by the id

query Parameters
id
required
string <uuid>

Invite ID

Responses

Response samples

Content type
application/json
{
  • "code": 401,
  • "message": "Unauthorized"
}

Get a role

Retrieves a single role

query Parameters
id
required
string <uuid>

Role ID

Responses

Response samples

Content type
application/json
{}

Create a Role

Request Body schema: application/json
name
required
string

A freeform role name. This should be the same as the role name in the application

required
object
required
object

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Update a Role

Request Body schema: application/json
name
required
string

A freeform role name. This should be the same as the role name in the application

required
object
required
object

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Deletes a role

Deletes the role specified by the id

query Parameters
id
required
string <uuid>

Role ID

Responses

Response samples

Content type
application/json
{
  • "code": 401,
  • "message": "Unauthorized"
}

List roles

Retrieves a list of roles

Responses

Response samples

Content type
application/json
[]

Get a user

Retrieves a single user

query Parameters
id
required
string <uuid>
Example: id=48ade859-d53e-4abc-baff-d4bc644c3e6b

Unique id in the service provider

Responses

Response samples

Content type
application/json
{
  • "id": "48ade859-d53e-4abc-baff-d4bc644c3e6b",
  • "externalId": "745bacd2-6c56-47e3-b307-d7ba6b6ab18b",
  • "name": {
    },
  • "displayName": "Kees Klaasen",
  • "userName": "user@example.com",
  • "emails": "user@example.com"
}

Create a User

Request Body schema: application/json
id
string

Unique id in the service provider

externalId
string <uuid>

Unique id in the invite application

required
object
displayName
string

The name of the user, suitable for display to end-users.

userName
required
string <email>

A service provider's unique identifier for the user, typically used by the user to directly authenticate to the service provider. For SURFconext connected services the edupersonprincipalname (eppn) will be used.

emails
required
string <email>

The email addresses of the users

Responses

Request samples

Content type
application/json
{
  • "id": "48ade859-d53e-4abc-baff-d4bc644c3e6b",
  • "externalId": "745bacd2-6c56-47e3-b307-d7ba6b6ab18b",
  • "name": {
    },
  • "displayName": "Kees Klaasen",
  • "userName": "user@example.com",
  • "emails": "user@example.com"
}

Response samples

Content type
application/json
{
  • "id": "48ade859-d53e-4abc-baff-d4bc644c3e6b",
  • "externalId": "745bacd2-6c56-47e3-b307-d7ba6b6ab18b",
  • "name": {
    },
  • "displayName": "Kees Klaasen",
  • "userName": "user@example.com",
  • "emails": "user@example.com"
}

Update a User

Request Body schema: application/json
id
string

Unique id in the service provider

externalId
string <uuid>

Unique id in the invite application

required
object
displayName
string

The name of the user, suitable for display to end-users.

userName
required
string <email>

A service provider's unique identifier for the user, typically used by the user to directly authenticate to the service provider. For SURFconext connected services the edupersonprincipalname (eppn) will be used.

emails
required
string <email>

The email addresses of the users

Responses

Request samples

Content type
application/json
{
  • "id": "48ade859-d53e-4abc-baff-d4bc644c3e6b",
  • "externalId": "745bacd2-6c56-47e3-b307-d7ba6b6ab18b",
  • "name": {
    },
  • "displayName": "Kees Klaasen",
  • "userName": "user@example.com",
  • "emails": "user@example.com"
}

Response samples

Content type
application/json
{
  • "id": "48ade859-d53e-4abc-baff-d4bc644c3e6b",
  • "externalId": "745bacd2-6c56-47e3-b307-d7ba6b6ab18b",
  • "name": {
    },
  • "displayName": "Kees Klaasen",
  • "userName": "user@example.com",
  • "emails": "user@example.com"
}

Deletes a User

Deletes the User specified by the id

query Parameters
id
required
string <uuid>
Example: id=48ade859-d53e-4abc-baff-d4bc644c3e6b

User ID

Responses

Response samples

Content type
application/json
{
  • "code": 401,
  • "message": "Unauthorized"
}

List users

Retrieves a list of inviters and roleadmins

Responses

Response samples

Content type
application/json
[
  • {
    }
]

Get a application

Retrieves a single application

query Parameters
id
required
string <uuid>
Example: id=301ee8e6-b5d1-40b5-a27e-47611f803371

Unique id in the service provider

Responses

Response samples

Content type
application/json
{}

Create a application

Request Body schema: application/json
displayname
string
entityId
string <uri>
landingpage
string <uri>

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Update a application

Request Body schema: application/json
displayname
string
entityId
string <uri>
landingpage
string <uri>

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

Deletes a application

Deletes the application specified by the id

query Parameters
id
required
string <uuid>
Example: id=301ee8e6-b5d1-40b5-a27e-47611f803371

application ID

Responses

Response samples

Content type
application/json
{
  • "code": 401,
  • "message": "Unauthorized"
}

List applications

Retrieves a list of all applications

Responses

Response samples

Content type
application/json
{}