Invite API (v1)

Download OpenAPI specification:Download

Invite external API endpoints

Authentication

openId

Security Scheme Type OAuth2
authorizationCode OAuth Flow
Authorization URL: https://connect.test2.surfconext.nl/oidc/authorize
Token URL: https://connect.test2.surfconext.nl/oidc/token
Scopes:
  • openid -

    openid

apiTokens

Security Scheme Type API Key
Header parameter name: X-API-TOKEN

voot

Security Scheme Type HTTP
HTTP Authorization Scheme basic

lifeCycle

Security Scheme Type HTTP
HTTP Authorization Scheme basic

attributeAggregation

Security Scheme Type HTTP
HTTP Authorization Scheme basic

user-role-controller

updateUserRoleExpirationDate

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
userRoleId
required
integer <int64>
endDate
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "userRoleId": 0,
  • "endDate": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

Add Role to a User

Provision the User if the User is unknown and add the Role(s)

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
roleIdentifiers
required
Array of integers <int64>
intendedAuthority
string
Enum: "SUPER_USER" "INSTITUTION_ADMIN" "MANAGER" "INVITER" "GUEST"
sub
string
email
required
string
eduPersonPrincipalName
string
givenName
string
familyName
string
name
string
schacHomeOrganization
string
guestRoleIncluded
boolean

Responses

Request samples

Content type
application/json
{
  • "roleIdentifiers": [
    ],
  • "intendedAuthority": "SUPER_USER",
  • "sub": "string",
  • "email": "string",
  • "eduPersonPrincipalName": "string",
  • "givenName": "string",
  • "familyName": "string",
  • "name": "string",
  • "schacHomeOrganization": "string",
  • "guestRoleIncluded": true
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "sub": "string",
  • "superUser": true,
  • "eduPersonPrincipalName": "string",
  • "givenName": "string",
  • "familyName": "string",
  • "name": "string",
  • "schacHomeOrganization": "string",
  • "organizationGUID": "string",
  • "institutionAdmin": true,
  • "institutionAdminByInvite": true,
  • "email": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastActivity": "2019-08-24T14:15:22Z",
  • "userRoles": [
    ],
  • "applications": [
    ],
  • "institution": {
    }
}

byRole

Authorizations:
openId (openid) apiTokens
path Parameters
roleId
required
integer <int64>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

deleteUserRole

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

teams-controller

migrateTeam

Authorizations:
Request Body schema: application/json
urn
string
name
string
description
string
Array of objects (Membership)
Array of objects (Application)

Responses

Request samples

Content type
application/json
{
  • "urn": "string",
  • "name": "string",
  • "description": "string",
  • "memberships": [
    ],
  • "applications": [
    ]
}

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

role-controller

rolesByApplication

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
[
  • {
    }
]

updateRole

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
id
integer <int64>
name
required
string
shortName
required
string
description
string
urn
string
defaultExpiryDays
integer <int32>
enforceEmailEquality
boolean
eduIDOnly
boolean
blockExpiryDate
boolean
overrideSettingsAllowed
boolean
teamsOrigin
boolean
identifier
string
userRoleCount
integer <int64>
Array of objects (ApplicationUsage) unique
object (Auditable)
Array of objects

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "shortName": "string",
  • "description": "string",
  • "urn": "string",
  • "defaultExpiryDays": 0,
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "blockExpiryDate": true,
  • "overrideSettingsAllowed": true,
  • "teamsOrigin": true,
  • "identifier": "string",
  • "userRoleCount": 0,
  • "applicationUsages": [
    ],
  • "auditable": {
    },
  • "applicationMaps": [
    ]
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "shortName": "string",
  • "description": "string",
  • "urn": "string",
  • "defaultExpiryDays": 0,
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "blockExpiryDate": true,
  • "overrideSettingsAllowed": true,
  • "teamsOrigin": true,
  • "identifier": "string",
  • "userRoleCount": 0,
  • "applicationUsages": [
    ],
  • "auditable": {
    },
  • "applicationMaps": [
    ]
}

newRole

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
id
integer <int64>
name
required
string
shortName
required
string
description
string
urn
string
defaultExpiryDays
integer <int32>
enforceEmailEquality
boolean
eduIDOnly
boolean
blockExpiryDate
boolean
overrideSettingsAllowed
boolean
teamsOrigin
boolean
identifier
string
userRoleCount
integer <int64>
Array of objects (ApplicationUsage) unique
object (Auditable)
Array of objects

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "shortName": "string",
  • "description": "string",
  • "urn": "string",
  • "defaultExpiryDays": 0,
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "blockExpiryDate": true,
  • "overrideSettingsAllowed": true,
  • "teamsOrigin": true,
  • "identifier": "string",
  • "userRoleCount": 0,
  • "applicationUsages": [
    ],
  • "auditable": {
    },
  • "applicationMaps": [
    ]
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "shortName": "string",
  • "description": "string",
  • "urn": "string",
  • "defaultExpiryDays": 0,
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "blockExpiryDate": true,
  • "overrideSettingsAllowed": true,
  • "teamsOrigin": true,
  • "identifier": "string",
  • "userRoleCount": 0,
  • "applicationUsages": [
    ],
  • "auditable": {
    },
  • "applicationMaps": [
    ]
}

role

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "name": "string",
  • "shortName": "string",
  • "description": "string",
  • "urn": "string",
  • "defaultExpiryDays": 0,
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "blockExpiryDate": true,
  • "overrideSettingsAllowed": true,
  • "teamsOrigin": true,
  • "identifier": "string",
  • "userRoleCount": 0,
  • "applicationUsages": [
    ],
  • "auditable": {
    },
  • "applicationMaps": [
    ]
}

deleteRole

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

search_1

Authorizations:
openId (openid) apiTokens
query Parameters
query
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

invitation-controller

resendInvitation

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

deleteInvitation

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

accept

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
hash
string
invitationId
integer <int64>

Responses

Request samples

Content type
application/json
{
  • "hash": "string",
  • "invitationId": 0
}

Response samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

newInvitation

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
intendedAuthority
required
string
Enum: "SUPER_USER" "INSTITUTION_ADMIN" "MANAGER" "INVITER" "GUEST"
message
string
language
string
Enum: "en" "nl"
enforceEmailEquality
boolean
eduIDOnly
boolean
guestRoleIncluded
boolean
invites
required
Array of strings
roleIdentifiers
Array of integers <int64>
roleExpiryDate
string <date-time>
expiryDate
required
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "intendedAuthority": "SUPER_USER",
  • "message": "string",
  • "language": "en",
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "guestRoleIncluded": true,
  • "invites": [
    ],
  • "roleIdentifiers": [
    ],
  • "roleExpiryDate": "2019-08-24T14:15:22Z",
  • "expiryDate": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

byRole_1

Authorizations:
openId (openid) apiTokens
path Parameters
roleId
required
integer <int64>

Responses

Response samples

Content type
application/json
[
  • {
    }
]

getInvitation

Authorizations:
openId (openid) apiTokens
query Parameters
hash
required
string

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "intendedAuthority": "SUPER_USER",
  • "status": "OPEN",
  • "email": "string",
  • "message": "string",
  • "subInvitee": "string",
  • "enforceEmailEquality": true,
  • "eduIDOnly": true,
  • "guestRoleIncluded": true,
  • "createdAt": "2019-08-24T14:15:22Z",
  • "expiryDate": "2019-08-24T14:15:22Z",
  • "roleExpiryDate": "2019-08-24T14:15:22Z",
  • "roles": [
    ],
  • "emailEqualityConflict": true,
  • "inviter": {
    }
}

all

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
[
  • {
    }
]

validation-controller

validate

Authorizations:
Request Body schema: application/json
type
required
string
value
required
string

Responses

Request samples

Content type
application/json
{
  • "type": "string",
  • "value": "string"
}

Response samples

Content type
application/json
{
  • "property1": true,
  • "property2": true
}

user-controller

error

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
property name*
object

Responses

Request samples

Content type
application/json
{
  • "property1": { },
  • "property2": { }
}

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

search

Authorizations:
openId (openid) apiTokens
query Parameters
query
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

details

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "sub": "string",
  • "superUser": true,
  • "eduPersonPrincipalName": "string",
  • "givenName": "string",
  • "familyName": "string",
  • "name": "string",
  • "schacHomeOrganization": "string",
  • "organizationGUID": "string",
  • "institutionAdmin": true,
  • "institutionAdminByInvite": true,
  • "email": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastActivity": "2019-08-24T14:15:22Z",
  • "userRoles": [
    ],
  • "applications": [
    ],
  • "institution": {
    }
}

msAcceptReturn

Authorizations:
openId (openid) apiTokens
path Parameters
manageId
required
string
userId
required
integer <int64>

Responses

Response samples

Content type
application/json
{
  • "contentType": "string"
}

me

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
{
  • "id": 0,
  • "sub": "string",
  • "superUser": true,
  • "eduPersonPrincipalName": "string",
  • "givenName": "string",
  • "familyName": "string",
  • "name": "string",
  • "schacHomeOrganization": "string",
  • "organizationGUID": "string",
  • "institutionAdmin": true,
  • "institutionAdminByInvite": true,
  • "email": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "lastActivity": "2019-08-24T14:15:22Z",
  • "userRoles": [
    ],
  • "applications": [
    ],
  • "institution": {
    }
}

logout

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
{
  • "property1": 0,
  • "property2": 0
}

login

Authorizations:
openId (openid) apiTokens
query Parameters
app
string
Default: "client"

Responses

Response samples

Content type
application/json
{
  • "contentType": "string"
}

config

Authorizations:
openId (openid) apiTokens
query Parameters
required
object (User)
guest
boolean
Default: false

Responses

Response samples

Content type
application/json
{
  • "clientUrl": "string",
  • "welcomeUrl": "string",
  • "serverUrl": "string",
  • "serverWelcomeUrl": "string",
  • "eduidEntityId": "string",
  • "roleSearchRequired": true,
  • "pastDateAllowed": true,
  • "groupUrnPrefix": "string",
  • "authenticated": true,
  • "name": "string",
  • "eduidIdpSchacHomeOrganization": "string",
  • "missingAttributes": [
    ]
}

api-token-controller

apiTokensByInstitution

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
[
  • {
    }
]

create

Authorizations:
openId (openid) apiTokens
Request Body schema: application/json
id
integer <int64>
organizationGUID
string
hashedValue
string
description
string
createdAt
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "id": 0,
  • "organizationGUID": "string",
  • "hashedValue": "string",
  • "description": "string",
  • "createdAt": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "id": 0,
  • "description": "string",
  • "createdAt": "2019-08-24T14:15:22Z"
}

generateToken

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
{
  • "property1": "string",
  • "property2": "string"
}

deleteToken

Authorizations:
openId (openid) apiTokens
path Parameters
id
required
integer <int64>

Responses

voot-controller

getGroupMemberships

Authorizations:
path Parameters
unspecified_id
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]

system-controller

unknownRoles

Authorizations:
openId (openid)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

expiryUserRoles

Authorizations:
openId (openid)

Responses

Response samples

Content type
application/json
[
  • {
    }
]

cronCleanup

Authorizations:
openId (openid)

Responses

Response samples

Content type
application/json
{
  • "property1": [
    ],
  • "property2": [
    ]
}

manage-controller

providers

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
[
  • {
    }
]

providerById

Authorizations:
openId (openid) apiTokens
path Parameters
type
required
string
Enum: "SAML20_SP" "OIDC10_RP" "SAML20_IDP" "PROVISIONING"
id
required
string

Responses

Response samples

Content type
application/json
{
  • "property1": { },
  • "property2": { }
}

applications

Authorizations:
openId (openid) apiTokens

Responses

Response samples

Content type
application/json
{
  • "property1": [
    ],
  • "property2": [
    ]
}

user-life-cycle-controller

preview

Authorizations:
path Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "status": "string",
  • "name": "string",
  • "data": [
    ]
}

deprovision

Authorizations:
path Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "status": "string",
  • "name": "string",
  • "data": [
    ]
}

dryRun

Authorizations:
path Parameters
userId
required
string

Responses

Response samples

Content type
application/json
{
  • "status": "string",
  • "name": "string",
  • "data": [
    ]
}

attribute-aggregator-controller

getGroupMemberships_1

Authorizations:
path Parameters
unspecified_id
required
string
query Parameters
SPentityID
required
string

Responses

Response samples

Content type
application/json
[
  • {
    }
]