Introduction

This is the NetFoundry identity service

Overview

HTTP verbs

NetFoundry adheres closely to standard HTTP and REST conventions in its use of HTTP verbs.

Verb Usage

GET

Used to retrieve a resource

POST

Used to create a new resource

PUT

Used to update an existing resource, full updates only

DELETE

Used to delete an existing resource

The PATCH method is not used (yet).

HTTP status codes

NetFoundry adheres closely to standard HTTP and REST conventions in its use of HTTP status codes.

Status code Usage

200 OK

The actual response will depend on the request method used. In a GET request, the response will contain an entity corresponding to the requested resource. In a POST request, the response will contain an entity describing or containing the result of the action.

201 Created

The request has been fulfilled and resulted in a new resource being created.

202 Accepted

The request has been accepted and is being processed asynchronously Standard response for successful HTTP requests which invoke back-end services.

204 No Content

The server successfully processed the request, but is not returning any content.

400 Bad Request

The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).

401 Unauthorized

The request lacks valid authentication credentials for the target resource.

403 Forbidden

The request is authenticated with valid credentials however that set of credentials is not authorized to access this resource.

404 Not Found

The requested resource could not be found but may be available again in the future. Subsequent requests by the client are permissible.

Resources

Organization

Find Organizations

GET /organizations

Authorization

This endpoint requires:

  • read action on this organization resource.

Query parameters

Supports standard paging query parameters.

Parameter Type Optional Description

name

String

true

active

Boolean

true

mfaProviders

Object

true

Must be one of [None, GoogleAuthenticator].

includeDeleted

Boolean

true

Default value: 'false'.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

name

String

true

label

String

true

identityProviders

Array[Object]

true

identityProviders[].id

String

true

identityProviders[].organizationId

String

true

identityProviders[].auth0ConnectionId

String

true

identityProviders[].name

String

true

identityProviders[].auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

identityProviders[].active

Boolean

true

identityProviders[].createdAt

Object

true

identityProviders[].updatedAt

Object

true

identityProviders[].deletedAt

Object

true

defaultRoles

Array[Object]

true

defaultRoles[].id

String

true

defaultRoles[].organizationId

String

true

defaultRoles[].name

String

true

defaultRoles[].roleType

String

true

Must be one of [Standard, Custom].

defaultRoles[].roleId

String

true

defaultRoles[].createdBy

String

true

defaultRoles[].createdAt

Object

true

defaultRoles[].deletedAt

Object

true

defaultRoles[].deletedBy

String

true

defaultRoles[].deleted

Boolean

true

active

Boolean

true

mfaProvider

String

true

Must be one of [None, GoogleAuthenticator].

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2789

[ {
  "id" : "1bfdffe9-e638-4c4d-94a9-9a4939d10849",
  "name" : "World Wide Imports",
  "label" : "WW-Imports-71",
  "identityProviders" : [ {
    "id" : "3e161449-99b3-4600-9e53-50f23da51967",
    "organizationId" : "1bfdffe9-e638-4c4d-94a9-9a4939d10849",
    "auth0ConnectionId" : "auth0-opaque-connectionId-72",
    "name" : "Username/Password",
    "auth0ConnectionType" : "Database",
    "active" : true,
    "createdAt" : {
      "nano" : 992090000,
      "epochSecond" : 1723727648
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ {
    "id" : "6326de6d-f0c8-4610-abf0-7c6ad6d86981",
    "organizationId" : "1bfdffe9-e638-4c4d-94a9-9a4939d10849",
    "name" : "Default Standard Role-80",
    "roleType" : "Standard",
    "roleId" : "86c2f462-f833-431e-8535-40bea9785f44",
    "createdBy" : "553abe0b-2885-459d-b8b3-74737cafd82b",
    "createdAt" : {
      "nano" : 9339000,
      "epochSecond" : 1723727649
    },
    "deletedAt" : null,
    "deletedBy" : null,
    "deleted" : false
  } ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 990545000,
    "epochSecond" : 1723727648
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
}, {
  "id" : "1d01ce80-42db-4394-a8ed-ea1466e7e0f7",
  "name" : "World Wide Imports",
  "label" : "WW-Imports-43",
  "identityProviders" : [ {
    "id" : "1ca619f5-c04e-4102-841c-75367330691a",
    "organizationId" : "1d01ce80-42db-4394-a8ed-ea1466e7e0f7",
    "auth0ConnectionId" : "auth0-opaque-connectionId-44",
    "name" : "Username/Password",
    "auth0ConnectionType" : "Database",
    "active" : true,
    "createdAt" : {
      "nano" : 532717000,
      "epochSecond" : 1723727648
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ {
    "id" : "366ce59f-5c20-41bb-a2dc-0730af86d6ce",
    "organizationId" : "1d01ce80-42db-4394-a8ed-ea1466e7e0f7",
    "name" : "Default Custom Role-50",
    "roleType" : "Custom",
    "roleId" : "2b0a5a8b-6d3b-4743-8d7b-65b069da1380",
    "createdBy" : "e278387e-e0ed-47b8-b366-b8dd2163c9cc",
    "createdAt" : {
      "nano" : 546610000,
      "epochSecond" : 1723727648
    },
    "deletedAt" : null,
    "deletedBy" : null,
    "deleted" : false
  } ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 529362000,
    "epochSecond" : 1723727648
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
}, {
  "id" : "1f26220a-11e9-4079-880f-acee9b1142f0",
  "name" : "World Wide Imports",
  "label" : "WW-Imports-120",
  "identityProviders" : [ ],
  "defaultRoles" : [ ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 349557000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
} ]

Get Organization By Id

GET /organizations/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this organization resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

name

String

true

label

String

true

identityProviders

Array[Object]

true

identityProviders[].id

String

true

identityProviders[].organizationId

String

true

identityProviders[].auth0ConnectionId

String

true

identityProviders[].name

String

true

identityProviders[].auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

identityProviders[].active

Boolean

true

identityProviders[].createdAt

Object

true

identityProviders[].updatedAt

Object

true

identityProviders[].deletedAt

Object

true

defaultRoles

Array[Object]

true

defaultRoles[].id

String

true

defaultRoles[].organizationId

String

true

defaultRoles[].name

String

true

defaultRoles[].roleType

String

true

Must be one of [Standard, Custom].

defaultRoles[].roleId

String

true

defaultRoles[].createdBy

String

true

defaultRoles[].createdAt

Object

true

defaultRoles[].deletedAt

Object

true

defaultRoles[].deletedBy

String

true

defaultRoles[].deleted

Boolean

true

active

Boolean

true

mfaProvider

String

true

Must be one of [None, GoogleAuthenticator].

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations/e5011091-eaee-48c2-936b-10d99c8da1e3' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2071

{
  "id" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "name" : "ACME International, Inc.",
  "label" : "ACME-0",
  "identityProviders" : [ {
    "id" : "b41829c0-9679-454b-9957-1a440075c751",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "auth0ConnectionId" : "auth0-opaque-connectionId-1",
    "name" : "ACME Federated Active Directory",
    "auth0ConnectionType" : "Enterprise",
    "active" : true,
    "createdAt" : {
      "nano" : 249968000,
      "epochSecond" : 1723727607
    },
    "updatedAt" : null,
    "deletedAt" : null
  }, {
    "id" : "55c67e94-3e36-43b7-8f08-625bee57a867",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "auth0ConnectionId" : "auth0-opaque-connectionId-2",
    "name" : "Google-Account",
    "auth0ConnectionType" : "Social",
    "active" : true,
    "createdAt" : {
      "nano" : 261576000,
      "epochSecond" : 1723727607
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ {
    "id" : "a6449ec7-654d-42de-b17d-c88896bf279e",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "name" : "Test Custom Role",
    "roleType" : "Custom",
    "roleId" : "390f9aaf-93e6-4a95-9267-16521ee35bca",
    "createdBy" : "eb03d7d3-2b87-41bf-9a6a-7a195ef4d42a",
    "createdAt" : {
      "nano" : 279974000,
      "epochSecond" : 1723727607
    },
    "deletedAt" : null,
    "deletedBy" : null,
    "deleted" : false
  }, {
    "id" : "a32616bb-c74d-43b9-8280-da72b94c0d30",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "name" : "Test Std Role",
    "roleType" : "Standard",
    "roleId" : "8ca63cdc-b627-472f-a27a-1766f8ca5289",
    "createdBy" : "d578e2dd-c7a9-4bb5-945f-248f8f13af93",
    "createdAt" : {
      "nano" : 268825000,
      "epochSecond" : 1723727607
    },
    "deletedAt" : null,
    "deletedBy" : null,
    "deleted" : false
  } ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 207943000,
    "epochSecond" : 1723727607
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
}

Get Organization By Label

GET /organizations/label/{label:[-a-zA-Z0-9]{1,63}}

Authorization

This endpoint requires:

  • read action on this organization resource.

Path parameters

Parameter Type Optional Description

label

String

false

Response fields

Path Type Optional Description

id

String

true

name

String

true

label

String

true

identityProviders

Array[Object]

true

identityProviders[].id

String

true

identityProviders[].organizationId

String

true

identityProviders[].auth0ConnectionId

String

true

identityProviders[].name

String

true

identityProviders[].auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

identityProviders[].active

Boolean

true

identityProviders[].createdAt

Object

true

identityProviders[].updatedAt

Object

true

identityProviders[].deletedAt

Object

true

defaultRoles

Array[Object]

true

defaultRoles[].id

String

true

defaultRoles[].organizationId

String

true

defaultRoles[].name

String

true

defaultRoles[].roleType

String

true

Must be one of [Standard, Custom].

defaultRoles[].roleId

String

true

defaultRoles[].createdBy

String

true

defaultRoles[].createdAt

Object

true

defaultRoles[].deletedAt

Object

true

defaultRoles[].deletedBy

String

true

defaultRoles[].deleted

Boolean

true

active

Boolean

true

mfaProvider

String

true

Must be one of [None, GoogleAuthenticator].

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations/label/ACME-0' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2071

{
  "id" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "name" : "ACME International, Inc.",
  "label" : "ACME-0",
  "identityProviders" : [ {
    "id" : "b41829c0-9679-454b-9957-1a440075c751",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "auth0ConnectionId" : "auth0-opaque-connectionId-1",
    "name" : "ACME Federated Active Directory",
    "auth0ConnectionType" : "Enterprise",
    "active" : true,
    "createdAt" : {
      "nano" : 249968000,
      "epochSecond" : 1723727607
    },
    "updatedAt" : null,
    "deletedAt" : null
  }, {
    "id" : "55c67e94-3e36-43b7-8f08-625bee57a867",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "auth0ConnectionId" : "auth0-opaque-connectionId-2",
    "name" : "Google-Account",
    "auth0ConnectionType" : "Social",
    "active" : true,
    "createdAt" : {
      "nano" : 261576000,
      "epochSecond" : 1723727607
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ {
    "id" : "a6449ec7-654d-42de-b17d-c88896bf279e",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "name" : "Test Custom Role",
    "roleType" : "Custom",
    "roleId" : "390f9aaf-93e6-4a95-9267-16521ee35bca",
    "createdBy" : "eb03d7d3-2b87-41bf-9a6a-7a195ef4d42a",
    "createdAt" : {
      "nano" : 279974000,
      "epochSecond" : 1723727607
    },
    "deletedAt" : null,
    "deletedBy" : null,
    "deleted" : false
  }, {
    "id" : "a32616bb-c74d-43b9-8280-da72b94c0d30",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "name" : "Test Std Role",
    "roleType" : "Standard",
    "roleId" : "8ca63cdc-b627-472f-a27a-1766f8ca5289",
    "createdBy" : "d578e2dd-c7a9-4bb5-945f-248f8f13af93",
    "createdAt" : {
      "nano" : 268825000,
      "epochSecond" : 1723727607
    },
    "deletedAt" : null,
    "deletedBy" : null,
    "deleted" : false
  } ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 207943000,
    "epochSecond" : 1723727607
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
}

Create Organization

POST /organizations

Authorization

This endpoint requires:

  • create action on this organization resource.

Request fields

Path Type Optional Description

name

String

true

label

String

true

auth0ConnectionId

String

true

identityProviderName

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

Response fields

Path Type Optional Description

id

String

true

name

String

true

label

String

true

identityProviders

Array[Object]

true

identityProviders[].id

String

true

identityProviders[].organizationId

String

true

identityProviders[].auth0ConnectionId

String

true

identityProviders[].name

String

true

identityProviders[].auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

identityProviders[].active

Boolean

true

identityProviders[].createdAt

Object

true

identityProviders[].updatedAt

Object

true

identityProviders[].deletedAt

Object

true

defaultRoles

Array[Object]

true

defaultRoles[].id

String

true

defaultRoles[].organizationId

String

true

defaultRoles[].name

String

true

defaultRoles[].roleType

String

true

Must be one of [Standard, Custom].

defaultRoles[].roleId

String

true

defaultRoles[].createdBy

String

true

defaultRoles[].createdAt

Object

true

defaultRoles[].deletedAt

Object

true

defaultRoles[].deletedBy

String

true

defaultRoles[].deleted

Boolean

true

active

Boolean

true

mfaProvider

String

true

Must be one of [None, GoogleAuthenticator].

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "Best Corp.",
  "label" : "BEST-CORP",
  "auth0ConnectionId" : "auth0-opaque-connection",
  "identityProviderName" : "Corp SAML",
  "auth0ConnectionType" : "Enterprise"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 736

{
  "id" : "6a71f6c7-ef57-4f2f-aede-d9f329533eec",
  "name" : "Best Corp.",
  "label" : "BEST-CORP",
  "identityProviders" : [ {
    "id" : "50a1ac9f-0ae9-42e4-a949-b132b21b4cb8",
    "organizationId" : "6a71f6c7-ef57-4f2f-aede-d9f329533eec",
    "auth0ConnectionId" : "auth0-opaque-connection",
    "name" : "Best Corp.",
    "auth0ConnectionType" : "Enterprise",
    "active" : true,
    "createdAt" : {
      "nano" : 836837000,
      "epochSecond" : 1723727653
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 835815000,
    "epochSecond" : 1723727653
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
}

Activate Or Deactivate Organization

PUT /organizations/{id}/{action:activate|deactivate}

Authorization

This endpoint requires:

  • update-active action on this organization resource.

Path parameters

Parameter Type Optional Description

id

Object

false

action

String

false

Response fields

Path Type Optional Description

id

String

true

name

String

true

label

String

true

identityProviders

Array[Object]

true

identityProviders[].id

String

true

identityProviders[].organizationId

String

true

identityProviders[].auth0ConnectionId

String

true

identityProviders[].name

String

true

identityProviders[].auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

identityProviders[].active

Boolean

true

identityProviders[].createdAt

Object

true

identityProviders[].updatedAt

Object

true

identityProviders[].deletedAt

Object

true

defaultRoles

Array[Object]

true

defaultRoles[].id

String

true

defaultRoles[].organizationId

String

true

defaultRoles[].name

String

true

defaultRoles[].roleType

String

true

Must be one of [Standard, Custom].

defaultRoles[].roleId

String

true

defaultRoles[].createdBy

String

true

defaultRoles[].createdAt

Object

true

defaultRoles[].deletedAt

Object

true

defaultRoles[].deletedBy

String

true

defaultRoles[].deleted

Boolean

true

active

Boolean

true

mfaProvider

String

true

Must be one of [None, GoogleAuthenticator].

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations/a9f3e16e-f2ec-4468-86ac-3b269895f5d9/deactivate' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 817

{
  "id" : "a9f3e16e-f2ec-4468-86ac-3b269895f5d9",
  "name" : "World Wide Imports",
  "label" : "WW-Imports-166",
  "identityProviders" : [ {
    "id" : "978a0f7e-6623-49b1-8976-1a14e8894157",
    "organizationId" : "a9f3e16e-f2ec-4468-86ac-3b269895f5d9",
    "auth0ConnectionId" : "auth0-opaque-connectionId-167",
    "name" : "Username/Password",
    "auth0ConnectionType" : "Database",
    "active" : true,
    "createdAt" : {
      "nano" : 606459000,
      "epochSecond" : 1723727654
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ ],
  "active" : false,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 605498000,
    "epochSecond" : 1723727654
  },
  "updatedAt" : {
    "nano" : 640689000,
    "epochSecond" : 1723727654
  },
  "deletedAt" : null,
  "deleted" : false
}

Add Identity Provider (deprecated)

POST /organizations/{id}/identity-providers

Deprecated.

Authorization

This endpoint requires:

  • create-identity-provider action on this organization resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

auth0ConnectionId

String

true

identityProviderName

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

Response fields

Path Type Optional Description

id

String

true

name

String

true

label

String

true

identityProviders

Array[Object]

true

identityProviders[].id

String

true

identityProviders[].organizationId

String

true

identityProviders[].auth0ConnectionId

String

true

identityProviders[].name

String

true

identityProviders[].auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

identityProviders[].active

Boolean

true

identityProviders[].createdAt

Object

true

identityProviders[].updatedAt

Object

true

identityProviders[].deletedAt

Object

true

defaultRoles

Array[Object]

true

defaultRoles[].id

String

true

defaultRoles[].organizationId

String

true

defaultRoles[].name

String

true

defaultRoles[].roleType

String

true

Must be one of [Standard, Custom].

defaultRoles[].roleId

String

true

defaultRoles[].createdBy

String

true

defaultRoles[].createdAt

Object

true

defaultRoles[].deletedAt

Object

true

defaultRoles[].deletedBy

String

true

defaultRoles[].deleted

Boolean

true

active

Boolean

true

mfaProvider

String

true

Must be one of [None, GoogleAuthenticator].

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations/e767d9a6-f3a7-480f-8f4e-58b7225622ce/identity-providers' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "auth0ConnectionId" : "auth0-opaque-connection",
  "identityProviderName" : "Corp SAML",
  "auth0ConnectionType" : "Enterprise"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 1156

{
  "id" : "e767d9a6-f3a7-480f-8f4e-58b7225622ce",
  "name" : "World Wide Imports",
  "label" : "WW-Imports-162",
  "identityProviders" : [ {
    "id" : "54f26804-ff29-4e75-a5e4-ec5294f05f9c",
    "organizationId" : "e767d9a6-f3a7-480f-8f4e-58b7225622ce",
    "auth0ConnectionId" : "auth0-opaque-connection",
    "name" : "Corp SAML",
    "auth0ConnectionType" : "Enterprise",
    "active" : true,
    "createdAt" : {
      "nano" : 378623000,
      "epochSecond" : 1723727654
    },
    "updatedAt" : null,
    "deletedAt" : null
  }, {
    "id" : "d83d1246-f0e9-4c8d-8fd8-e850806459cb",
    "organizationId" : "e767d9a6-f3a7-480f-8f4e-58b7225622ce",
    "auth0ConnectionId" : "auth0-opaque-connectionId-163",
    "name" : "Username/Password",
    "auth0ConnectionType" : "Database",
    "active" : true,
    "createdAt" : {
      "nano" : 355706000,
      "epochSecond" : 1723727654
    },
    "updatedAt" : null,
    "deletedAt" : null
  } ],
  "defaultRoles" : [ ],
  "active" : true,
  "mfaProvider" : null,
  "createdAt" : {
    "nano" : 354163000,
    "epochSecond" : 1723727654
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "deleted" : false
}

OIDC Issuers

Find Oidc Issuers

GET /oidc-issuers

Authorization

This endpoint requires:

  • read action on this oidc-issuer resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

issuer

String

true

jwksUri

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-issuers' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1218

[ {
  "id" : "37ab74cb-839b-4efd-887d-5de7ee8faf78",
  "issuer" : "https://116a0d40-225f-457f-b476-bbf1fdd48ede.issuer.idp",
  "jwksUri" : "https://116a0d40-225f-457f-b476-bbf1fdd48ede.issuer.idp/jwks",
  "active" : true,
  "createdBy" : "4bb585e9-7d38-4252-9f2c-869ffe474505",
  "createdAt" : {
    "nano" : 957929000,
    "epochSecond" : 1723727652
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "6c72dba0-a155-4804-9a70-89da12149793",
  "issuer" : "https://accounts.google.com",
  "jwksUri" : "https://www.googleapis.com/oauth2/v3/certs",
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 248235000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "8699db3e-895b-450f-bdf5-064b34f9248c",
  "issuer" : "https://2d23ac1a-b8ed-4c2e-8248-88fc32417cdf.issuer.idp",
  "jwksUri" : "https://2d23ac1a-b8ed-4c2e-8248-88fc32417cdf.issuer.idp/jwks",
  "active" : true,
  "createdBy" : "00d2ff5a-77b9-4637-acae-1482e53e3275",
  "createdAt" : {
    "nano" : 34540000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
} ]

Get Oidc Issuer

GET /oidc-issuers/{id}

Authorization

This endpoint requires:

  • read action on this oidc-issuer resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

issuer

String

true

jwksUri

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-issuers/cb8091be-4dc2-4117-b291-f4013c428d92' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 419

{
  "id" : "cb8091be-4dc2-4117-b291-f4013c428d92",
  "issuer" : "https://42d3f6da-a13a-4b43-9785-6d25f3e04241.issuer.idp",
  "jwksUri" : "https://42d3f6da-a13a-4b43-9785-6d25f3e04241.issuer.idp/jwks",
  "active" : true,
  "createdBy" : "21894d64-5442-4bd6-928c-7c7098ab654b",
  "createdAt" : {
    "nano" : 295245000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Create Oidc Issuer

POST /oidc-issuers

Authorization

This endpoint requires:

  • create action on this oidc-issuer resource.

Request fields

Path Type Optional Description

issuer

String

true

jwksUri

String

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

issuer

String

true

jwksUri

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-issuers' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "issuer" : "https://853f57e0-5d30-4bc3-810a-f75626d21b21.issuer.idp",
  "jwksUri" : "https://853f57e0-5d30-4bc3-810a-f75626d21b21.issuer.idp/jwks",
  "active" : true
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 419

{
  "id" : "946e97b2-61e3-4267-bcfc-74bc67643232",
  "issuer" : "https://853f57e0-5d30-4bc3-810a-f75626d21b21.issuer.idp",
  "jwksUri" : "https://853f57e0-5d30-4bc3-810a-f75626d21b21.issuer.idp/jwks",
  "active" : true,
  "createdBy" : "5ab9ce72-7067-467e-b658-adae4835c0f5",
  "createdAt" : {
    "nano" : 263887000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Update Oidc Issuer

PATCH /oidc-issuers/{id}

Authorization

This endpoint requires:

  • update action on this oidc-issuer resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

issuer

String

true

jwksUri

String

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

issuer

String

true

jwksUri

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-issuers/a6a17641-d5ef-47b8-a587-1d9e78562f1b' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "issuer" : "https://69f44833-8ddb-42cd-a5c2-d1a10b56957b.issuer.idp",
  "jwksUri" : "https://69f44833-8ddb-42cd-a5c2-d1a10b56957b.issuer.idp/jwks",
  "active" : false
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 420

{
  "id" : "a6a17641-d5ef-47b8-a587-1d9e78562f1b",
  "issuer" : "https://69f44833-8ddb-42cd-a5c2-d1a10b56957b.issuer.idp",
  "jwksUri" : "https://69f44833-8ddb-42cd-a5c2-d1a10b56957b.issuer.idp/jwks",
  "active" : false,
  "createdBy" : "bfe3b685-3be4-40bd-a26e-55a57422cf91",
  "createdAt" : {
    "nano" : 201652000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Delete Oidc Issuer

DELETE /oidc-issuers/{id}

Authorization

This endpoint requires:

  • delete action on this oidc-issuer resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

issuer

String

true

jwksUri

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-issuers/82322656-9946-42ef-8390-8ff39162c3af' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 508

{
  "id" : "82322656-9946-42ef-8390-8ff39162c3af",
  "issuer" : "https://610f3c4e-0e0e-416e-b4f1-816856fb3855.issuer.idp",
  "jwksUri" : "https://610f3c4e-0e0e-416e-b4f1-816856fb3855.issuer.idp/jwks",
  "active" : true,
  "createdBy" : "bd77993a-478a-4a60-9e73-657a098d8329",
  "createdAt" : {
    "nano" : 401897000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : {
    "nano" : 410842000,
    "epochSecond" : 1723727653
  },
  "deletedBy" : "e95612c6-6fd6-452d-a26c-6f4aceebb15b",
  "deleted" : true
}

OIDC Public Clients

Find Oidc Public Clients

GET /oidc-public-clients

Authorization

This endpoint requires:

  • read action on this oidc-public-client resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-public-clients' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1292

[ {
  "id" : "290cc71d-cbd0-4c44-bf9e-a9d33a7314e6",
  "oidcIssuerId" : "fc221f2c-e97f-4994-a29e-afc26395f6b6",
  "clientId" : "{clientId}",
  "clientSecret" : "{clientSecret}",
  "authorizationEndpoint" : "https://{auth0-tenant}.auth0.com/authorize",
  "tokenEndpoint" : "https://{auth0-tenant}.auth0.com/oauth/token",
  "userInfoEndpoint" : "https://{auth0-tenant}.auth0.com/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 252151000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "f4e6fcd0-1839-4566-8828-856e42b8f156",
  "oidcIssuerId" : "6c72dba0-a155-4804-9a70-89da12149793",
  "clientId" : "{clientId}",
  "clientSecret" : "{clientSecret}",
  "authorizationEndpoint" : "https://accounts.google.com/o/oauth2/v2/auth",
  "tokenEndpoint" : "https://oauth2.googleapis.com/token",
  "userInfoEndpoint" : "https://openidconnect.googleapis.com/v1/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 252151000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
} ]

Get Oidc Public Client

GET /oidc-public-clients/{id}

Authorization

This endpoint requires:

  • read action on this oidc-public-client resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-public-clients/b61edbbe-78bc-42a0-8c2c-d76ccd0f425d' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 776

{
  "id" : "b61edbbe-78bc-42a0-8c2c-d76ccd0f425d",
  "oidcIssuerId" : "87f7d4e5-dc66-46cf-bb12-4abdd4fa7080",
  "clientId" : "clientId-9a5d2c75-0a8b-446e-809c-e3f8511c09b0",
  "clientSecret" : "clientSecret-b1403743-28c2-49ea-baa2-02cd566c8514",
  "authorizationEndpoint" : "https://98d53095-daa5-4981-9b03-c9c069a3fd68.issuer.idp/authorize",
  "tokenEndpoint" : "https://98d53095-daa5-4981-9b03-c9c069a3fd68.issuer.idp/token",
  "userInfoEndpoint" : "https://98d53095-daa5-4981-9b03-c9c069a3fd68.issuer.idp/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "7d2fcd4e-3745-44f2-83f7-fe50bddf7113",
  "createdAt" : {
    "nano" : 662033000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Create Oidc Public Client

POST /oidc-public-clients

Authorization

This endpoint requires:

  • create action on this oidc-public-client resource.

Request fields

Path Type Optional Description

oidcIssuerId

String

true

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-public-clients' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "oidcIssuerId" : "0a21cc0a-9e9b-4c46-8a53-f436d4f50f25",
  "clientId" : "clientId-ef01f576-db42-431c-9fa3-c49d28f69d1e",
  "clientSecret" : "clientSecret-f7f7c14d-9bd5-4430-b23f-8328c1ddcff8",
  "authorizationEndpoint" : "https://56f7aa85-993b-49dd-8671-2d109d57d439.issuer.idp/authorize",
  "tokenEndpoint" : "https://56f7aa85-993b-49dd-8671-2d109d57d439.issuer.idp/token",
  "userInfoEndpoint" : "https://56f7aa85-993b-49dd-8671-2d109d57d439.issuer.idp/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : true
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 776

{
  "id" : "0ce526ae-17a0-461f-8bd3-7e64dad64690",
  "oidcIssuerId" : "0a21cc0a-9e9b-4c46-8a53-f436d4f50f25",
  "clientId" : "clientId-ef01f576-db42-431c-9fa3-c49d28f69d1e",
  "clientSecret" : "clientSecret-f7f7c14d-9bd5-4430-b23f-8328c1ddcff8",
  "authorizationEndpoint" : "https://56f7aa85-993b-49dd-8671-2d109d57d439.issuer.idp/authorize",
  "tokenEndpoint" : "https://56f7aa85-993b-49dd-8671-2d109d57d439.issuer.idp/token",
  "userInfoEndpoint" : "https://56f7aa85-993b-49dd-8671-2d109d57d439.issuer.idp/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "e65a8724-7a0a-4b4e-b11c-4df743281d26",
  "createdAt" : {
    "nano" : 623665000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Update Oidc Public Client

PATCH /oidc-public-clients/{id}

Authorization

This endpoint requires:

  • update action on this oidc-public-client resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-public-clients/9cfc0429-ead8-4825-935c-b1a097b50329' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "clientId" : "clientId-f6891d1b-816d-4078-92dc-514b806c510d",
  "clientSecret" : "clientSecret-57b68cae-ce22-4c9c-aab1-fd7afdd154af",
  "authorizationEndpoint" : "https://1e10e91c-443d-4e11-b2ce-189fbc32b219.issuer.idp/authorize",
  "tokenEndpoint" : "https://1e10e91c-443d-4e11-b2ce-189fbc32b219.issuer.idp/token",
  "userInfoEndpoint" : "https://1e10e91c-443d-4e11-b2ce-189fbc32b219.issuer.idp/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : false
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 777

{
  "id" : "9cfc0429-ead8-4825-935c-b1a097b50329",
  "oidcIssuerId" : "70f22a9e-7687-40ef-ba9a-21e23712dc43",
  "clientId" : "clientId-f6891d1b-816d-4078-92dc-514b806c510d",
  "clientSecret" : "clientSecret-57b68cae-ce22-4c9c-aab1-fd7afdd154af",
  "authorizationEndpoint" : "https://1e10e91c-443d-4e11-b2ce-189fbc32b219.issuer.idp/authorize",
  "tokenEndpoint" : "https://1e10e91c-443d-4e11-b2ce-189fbc32b219.issuer.idp/token",
  "userInfoEndpoint" : "https://1e10e91c-443d-4e11-b2ce-189fbc32b219.issuer.idp/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : false,
  "createdBy" : "ae4349c3-85b9-45af-9b30-19894b017c30",
  "createdAt" : {
    "nano" : 524816000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Delete Oidc Public Client

DELETE /oidc-public-clients/{id}

Authorization

This endpoint requires:

  • delete action on this oidc-public-client resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

clientId

String

true

clientSecret

String

true

authorizationEndpoint

String

true

tokenEndpoint

String

true

userInfoEndpoint

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-public-clients/886b32d2-b939-4105-a438-589e8b2b7966' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 865

{
  "id" : "886b32d2-b939-4105-a438-589e8b2b7966",
  "oidcIssuerId" : "647d40ed-c487-4e9f-bd8f-067c77467a3d",
  "clientId" : "clientId-033de7ca-94cb-4d5e-b3b0-645a26f3651f",
  "clientSecret" : "clientSecret-19dd4ba0-06c5-4c6b-8d05-a2aedc103a8f",
  "authorizationEndpoint" : "https://6667cece-9e47-4ff6-bc6c-3efa1f74f2f7.issuer.idp/authorize",
  "tokenEndpoint" : "https://6667cece-9e47-4ff6-bc6c-3efa1f74f2f7.issuer.idp/token",
  "userInfoEndpoint" : "https://6667cece-9e47-4ff6-bc6c-3efa1f74f2f7.issuer.idp/userinfo",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "bb614130-2c36-4182-9b4a-90237c459c53",
  "createdAt" : {
    "nano" : 709061000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : {
    "nano" : 718733000,
    "epochSecond" : 1723727653
  },
  "deletedBy" : "50ff6f49-f202-418b-8b12-085da5cc98fd",
  "deleted" : true
}

Organization to OIDC Public Client Mappings

Find Organization Oidc Public Client Mappings

GET /organization-oidc-public-client-mappings

Authorization

This endpoint requires:

  • read action on this organization-oidc-public-client-mapping resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

organizationId

String

true

oidcPublicClientId

String

true

name

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-oidc-public-client-mappings' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1313

[ {
  "id" : "14a90380-d310-4da2-85df-b744adcb446e",
  "organizationId" : "f86122fb-316b-4427-8c38-248165bf4504",
  "oidcPublicClientId" : "f4e6fcd0-1839-4566-8828-856e42b8f156",
  "name" : "NFSUPPORT Google Account",
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 919819000,
    "epochSecond" : 1723727602
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "6865772e-a713-4565-8420-af8eba80ebbd",
  "organizationId" : "cc2433a9-c951-4a30-a57f-c23567fe7b87",
  "oidcPublicClientId" : "f4e6fcd0-1839-4566-8828-856e42b8f156",
  "name" : "NFSUPPORT-RO Google Account",
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 948908000,
    "epochSecond" : 1723727602
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "ddd29d36-e9cf-4c3c-911b-a8e00410f340",
  "organizationId" : "95068bb0-864b-4930-b06e-9acf4957c826",
  "oidcPublicClientId" : "f4e6fcd0-1839-4566-8828-856e42b8f156",
  "name" : "NetFoundry Google Account",
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 26186000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
} ]

Get Organization Oidc Public Client Mapping

GET /organization-oidc-public-client-mappings/{id}

Authorization

This endpoint requires:

  • read action on this organization-oidc-public-client-mapping resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

oidcPublicClientId

String

true

name

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-oidc-public-client-mappings/5442c3cc-fd91-4e77-8a59-7c300bf93001' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 460

{
  "id" : "5442c3cc-fd91-4e77-8a59-7c300bf93001",
  "organizationId" : "0d0d6ddf-f61c-4633-920f-a9097f7517d1",
  "oidcPublicClientId" : "355c0b0c-9962-4911-b348-552672b2b3a6",
  "name" : "console-client-2f3d8c37-0ef0-4aaf-a84a-deb5754807d3",
  "active" : true,
  "createdBy" : "539db75c-a4c5-4292-a176-0e67062e185a",
  "createdAt" : {
    "nano" : 81742000,
    "epochSecond" : 1723727655
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Create Organization Oidc Public Client Mapping

POST /organization-oidc-public-client-mappings

Authorization

This endpoint requires:

  • create action on this organization-oidc-public-client-mapping resource.

  • read action on the oidc-public-client resource identified by the oidcPublicClientId property.

Request fields

Path Type Optional Description

organizationId

String

true

oidcPublicClientId

String

true

name

String

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

oidcPublicClientId

String

true

name

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-oidc-public-client-mappings' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "organizationId" : "5195e890-8703-47ad-aeb9-fcb4a5b36711",
  "oidcPublicClientId" : "6ed38bf1-48a1-428b-b33a-c4bf9b26e796",
  "name" : "console-client-9f752045-90ad-491f-bcc2-ab0a9daca74b",
  "active" : true
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 460

{
  "id" : "554d2c93-db79-420c-9c77-8cab2ce48ee9",
  "organizationId" : "5195e890-8703-47ad-aeb9-fcb4a5b36711",
  "oidcPublicClientId" : "6ed38bf1-48a1-428b-b33a-c4bf9b26e796",
  "name" : "console-client-9f752045-90ad-491f-bcc2-ab0a9daca74b",
  "active" : true,
  "createdBy" : "c1f696be-e3d3-4e69-a736-092b59d4cfeb",
  "createdAt" : {
    "nano" : 33119000,
    "epochSecond" : 1723727655
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Update Organization Oidc Public Client Mapping

PATCH /organization-oidc-public-client-mappings/{id}

Authorization

This endpoint requires:

  • update action on this organization-oidc-public-client-mapping resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

name

String

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

oidcPublicClientId

String

true

name

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-oidc-public-client-mappings/1450fcd1-8ff2-44a7-a76c-b25d3e5b70de' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "custom-client-a66d79e9-3132-417b-bfbf-8ecd20b6923d",
  "active" : false
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 461

{
  "id" : "1450fcd1-8ff2-44a7-a76c-b25d3e5b70de",
  "organizationId" : "4b2bbf3e-d1a1-4d48-a29c-1cb9f7750ce6",
  "oidcPublicClientId" : "20857e07-e6c0-4aa4-bcbe-ca45bd244d3a",
  "name" : "custom-client-a66d79e9-3132-417b-bfbf-8ecd20b6923d",
  "active" : false,
  "createdBy" : "d6429134-677b-4e7b-a119-16d1a7d652a0",
  "createdAt" : {
    "nano" : 940540000,
    "epochSecond" : 1723727654
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Delete Organization Oidc Public Client Mapping

DELETE /organization-oidc-public-client-mappings/{id}

Authorization

This endpoint requires:

  • delete action on this organization-oidc-public-client-mapping resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

oidcPublicClientId

String

true

name

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-oidc-public-client-mappings/252614d8-4187-41b7-b9eb-d5644694148e' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 550

{
  "id" : "252614d8-4187-41b7-b9eb-d5644694148e",
  "organizationId" : "0b96ec1e-0ac5-4018-a07a-d88ea06aef4a",
  "oidcPublicClientId" : "21fa27cc-e478-4417-a4b1-23c0cfebe809",
  "name" : "console-client-a0e94fd3-8a95-4a29-a07e-596b8a6d6807",
  "active" : true,
  "createdBy" : "eaf63e0b-91e9-4ea5-8797-3cb2a5aab8b9",
  "createdAt" : {
    "nano" : 198156000,
    "epochSecond" : 1723727655
  },
  "deletedAt" : {
    "nano" : 220338000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : "c591a4ad-b432-4820-a5a4-9c7f0b4ed47d",
  "deleted" : true
}

OIDC Audiences

Find Oidc Audiences

GET /oidc-audiences

Authorization

This endpoint requires:

  • read action on this oidc-audience resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-audiences' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 850

[ {
  "id" : "6a4f65ad-9db8-4ea7-b404-1d5c5f85cbdf",
  "oidcIssuerId" : "fc221f2c-e97f-4994-a29e-afc26395f6b6",
  "audience" : "https://gateway.{env}.netfoundry.io/",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 257575000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "b71d8edd-6bf1-4ed3-84e8-f3b5fe82868f",
  "oidcIssuerId" : "6c72dba0-a155-4804-9a70-89da12149793",
  "audience" : "https://gateway.{env}.netfoundry.io/",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 257575000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
} ]

Get Oidc Audience

GET /oidc-audiences/{id}

Authorization

This endpoint requires:

  • read action on this oidc-audience resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-audiences/ebd92dc3-8397-4673-9482-6bad375d5705' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 430

{
  "id" : "ebd92dc3-8397-4673-9482-6bad375d5705",
  "oidcIssuerId" : "37ab74cb-839b-4efd-887d-5de7ee8faf78",
  "audience" : "mop-aud-d8d39939-c3be-439b-8f25-9df15a19a6d2",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "c2f054c0-de0e-45cd-bd26-8fba489a73cf",
  "createdAt" : {
    "nano" : 961702000,
    "epochSecond" : 1723727652
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Create Oidc Audience

POST /oidc-audiences

Authorization

This endpoint requires:

  • create action on this oidc-audience resource.

Request fields

Path Type Optional Description

oidcIssuerId

String

true

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-audiences' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "oidcIssuerId" : "994f1a05-297a-4e49-8265-30bf59efc23a",
  "audience" : "mop-aud-4973c810-f469-4724-a414-ff7f9d155600",
  "restrictedToOrganizationIds" : [ ],
  "active" : true
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 430

{
  "id" : "ca780c88-59ae-4cf6-bb54-c4ce877eeec4",
  "oidcIssuerId" : "994f1a05-297a-4e49-8265-30bf59efc23a",
  "audience" : "mop-aud-4973c810-f469-4724-a414-ff7f9d155600",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "1ab7a123-2fca-417d-8ce9-b53f0fc94501",
  "createdAt" : {
    "nano" : 892620000,
    "epochSecond" : 1723727652
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Update Oidc Audience

PATCH /oidc-audiences/{id}

Authorization

This endpoint requires:

  • update action on this oidc-audience resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-audiences/70c07aff-4fd3-4320-bfb3-4282bf3849b7' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "audience" : "mop-aud-c8924086-8c2c-43c5-800c-2e4d41efa560",
  "restrictedToOrganizationIds" : [ ],
  "active" : false
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 431

{
  "id" : "70c07aff-4fd3-4320-bfb3-4282bf3849b7",
  "oidcIssuerId" : "d33b3eec-ccd8-4c99-97a6-af5a9589f97c",
  "audience" : "mop-aud-c8924086-8c2c-43c5-800c-2e4d41efa560",
  "restrictedToOrganizationIds" : [ ],
  "active" : false,
  "createdBy" : "08abcaba-6575-40b4-a108-4cbc4dfdd6ca",
  "createdAt" : {
    "nano" : 744373000,
    "epochSecond" : 1723727652
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Delete Oidc Audience

DELETE /oidc-audiences/{id}

Authorization

This endpoint requires:

  • delete action on this oidc-audience resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

oidcIssuerId

String

true

audience

String

true

restrictedToOrganizationIds

Array[Object]

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/oidc-audiences/ee8f5feb-4be3-49a8-a050-a5052c2cff91' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 517

{
  "id" : "ee8f5feb-4be3-49a8-a050-a5052c2cff91",
  "oidcIssuerId" : "8699db3e-895b-450f-bdf5-064b34f9248c",
  "audience" : "mop-aud-15502dee-8dd0-4d7f-98f5-432fd9e9a51b",
  "restrictedToOrganizationIds" : [ ],
  "active" : true,
  "createdBy" : "b9766c93-3da8-412a-8abf-ccf623e845c2",
  "createdAt" : {
    "nano" : 38412000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : {
    "nano" : 60172000,
    "epochSecond" : 1723727653
  },
  "deletedBy" : "b8e1f192-6e42-48a7-92b4-2716a86419c0",
  "deleted" : true
}

User Identity to OIDC Audience Mappings

Find User Identity Audience Mappings

GET /user-identity-oidc-audience-mappings

Authorization

This endpoint requires:

  • read action on this user-identity-oidc-audience-mapping resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

userIdentityId

String

true

oidcAudienceId

String

true

subject

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identity-oidc-audience-mappings' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 3

[ ]

Get User Identity Audience Mapping

GET /user-identity-oidc-audience-mappings/{id}

Authorization

This endpoint requires:

  • read action on this user-identity-oidc-audience-mapping resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

oidcAudienceId

String

true

subject

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identity-oidc-audience-mappings/5d756a59-b45a-4825-a654-3554250d6ce0' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 460

{
  "id" : "5d756a59-b45a-4825-a654-3554250d6ce0",
  "userIdentityId" : "14676990-d69d-4a5a-8501-11d73fa3030d",
  "oidcAudienceId" : "f634d23d-c0d8-49a2-8c90-e875c22c5596",
  "subject" : "console-client-9b21eab6-0036-4ae3-bd58-4e4a68c19348",
  "active" : true,
  "createdBy" : "cee5b457-4273-44d8-90ca-280683258eea",
  "createdAt" : {
    "nano" : 361012000,
    "epochSecond" : 1723727657
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Create User Identity Audience Mapping

POST /user-identity-oidc-audience-mappings

Authorization

This endpoint requires:

  • create action on this user-identity-oidc-audience-mapping resource.

  • create-identity-mapping action on the user-identity resource identified by the userIdentityId property.

  • read action on the oidc-audience resource identified by the oidcAudienceId property.

Request fields

Path Type Optional Description

userIdentityId

String

true

oidcAudienceId

String

true

subject

String

true

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

oidcAudienceId

String

true

subject

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identity-oidc-audience-mappings' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "userIdentityId" : "24c90831-4c76-415a-9056-b380e919abae",
  "oidcAudienceId" : "2b1405d8-e56f-41da-9fbe-c04ebd57ea66",
  "subject" : "console-client-2e465221-bfa1-4635-9b34-d1f89ed7102c",
  "active" : true
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 460

{
  "id" : "a43e6803-5942-4753-bd91-e67d27106788",
  "userIdentityId" : "24c90831-4c76-415a-9056-b380e919abae",
  "oidcAudienceId" : "2b1405d8-e56f-41da-9fbe-c04ebd57ea66",
  "subject" : "console-client-2e465221-bfa1-4635-9b34-d1f89ed7102c",
  "active" : true,
  "createdBy" : "13ae2796-cd9c-49fc-9a3d-452c9cccb4c5",
  "createdAt" : {
    "nano" : 305594000,
    "epochSecond" : 1723727657
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Update User Identity Audience Mapping

PATCH /user-identity-oidc-audience-mappings/{id}

Authorization

This endpoint requires:

  • update action on this user-identity-oidc-audience-mapping resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

active

Boolean

true

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

oidcAudienceId

String

true

subject

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identity-oidc-audience-mappings/257db526-82e4-409e-ac8d-765435af8427' -i -X PATCH \
    -H 'Content-Type: application/json' \
    -d '{
  "active" : false
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 461

{
  "id" : "257db526-82e4-409e-ac8d-765435af8427",
  "userIdentityId" : "daea5e5f-169a-442d-be82-442b6caa012f",
  "oidcAudienceId" : "bb15c282-7ce2-4b51-a99c-114014248791",
  "subject" : "console-client-cc50b9fb-4781-4a85-9ee5-52e90d006ccc",
  "active" : false,
  "createdBy" : "72a067f4-a71e-46b2-b343-a5788384a8bb",
  "createdAt" : {
    "nano" : 215258000,
    "epochSecond" : 1723727657
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Delete User Identity Audience Mapping

DELETE /user-identity-oidc-audience-mappings/{id}

Authorization

This endpoint requires:

  • delete action on this user-identity-oidc-audience-mapping resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

oidcAudienceId

String

true

subject

String

true

active

Boolean

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identity-oidc-audience-mappings/e8fe0005-792e-4ddf-92ed-d9a5df428c96' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 549

{
  "id" : "e8fe0005-792e-4ddf-92ed-d9a5df428c96",
  "userIdentityId" : "0819d76d-0831-4365-b200-e42544f5f99a",
  "oidcAudienceId" : "c634d692-26e0-4384-8f1d-c72bc59d8980",
  "subject" : "console-client-7f56b8a7-71c2-4e73-98b5-5f0577adf41a",
  "active" : true,
  "createdBy" : "bf802951-daae-4573-8991-d9eb1d0e0e6e",
  "createdAt" : {
    "nano" : 406608000,
    "epochSecond" : 1723727657
  },
  "deletedAt" : {
    "nano" : 420761000,
    "epochSecond" : 1723727657
  },
  "deletedBy" : "34c03fb4-fde1-497e-bb43-b256e0a51b36",
  "deleted" : true
}

Identity Providers

Find Identity Providers

GET /identity-providers

Authorization

This endpoint requires:

  • read action on this identity-provider resource.

Query parameters

Supports standard paging query parameters.

Parameter Type Optional Description

name

String

true

organizationId

Object

true

auth0ConnectionId

Object

true

auth0ConnectionType

Object

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

deleted

Object

true

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-providers' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1137

[ {
  "id" : "0281dfb0-16e3-40a5-b730-372c0be486b7",
  "organizationId" : "9d59ad5e-25a1-4799-b7e8-1ba80a1c92f3",
  "auth0ConnectionId" : "auth0-opaque-connectionId-115",
  "name" : "Username/Password",
  "auth0ConnectionType" : "Database",
  "active" : true,
  "createdAt" : {
    "nano" : 189112000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : null,
  "deletedAt" : null
}, {
  "id" : "145b0194-e552-4f82-86cf-18d860d92d19",
  "organizationId" : "e82901d7-3922-4231-8558-5bde1ffe1c08",
  "auth0ConnectionId" : "auth0-opaque-connectionId-100",
  "name" : "Username/Password",
  "auth0ConnectionType" : "Database",
  "active" : true,
  "createdAt" : {
    "nano" : 766512000,
    "epochSecond" : 1723727650
  },
  "updatedAt" : null,
  "deletedAt" : null
}, {
  "id" : "15401918-0999-4be2-8c82-bfd3a4926f95",
  "organizationId" : "f86122fb-316b-4427-8c38-248165bf4504",
  "auth0ConnectionId" : "google-oauth2",
  "name" : "NFSUPPORT Google Account",
  "auth0ConnectionType" : "Social",
  "active" : true,
  "createdAt" : {
    "nano" : 919819000,
    "epochSecond" : 1723727602
  },
  "updatedAt" : null,
  "deletedAt" : null
} ]

Get Identity Provider

GET /identity-providers/{id}

Authorization

This endpoint requires:

  • read action on this identity-provider resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-providers/b41829c0-9679-454b-9957-1a440075c751' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 394

{
  "id" : "b41829c0-9679-454b-9957-1a440075c751",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ConnectionId" : "auth0-opaque-connectionId-1",
  "name" : "ACME Federated Active Directory",
  "auth0ConnectionType" : "Enterprise",
  "active" : true,
  "createdAt" : {
    "nano" : 249968000,
    "epochSecond" : 1723727607
  },
  "updatedAt" : null,
  "deletedAt" : null
}

Create Identity Provider

POST /identity-providers

Authorization

This endpoint requires:

  • create action on this identity-provider resource.

Request fields

Path Type Optional Description

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-providers' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "organizationId" : "95a6bd90-9b72-4eae-9ac0-565d723b00f3",
  "auth0ConnectionId" : "auth0-opaque-connection",
  "name" : "Corp SAML",
  "auth0ConnectionType" : "Enterprise"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 368

{
  "id" : "503cb06d-0d11-4598-8b22-07f3e9469f8c",
  "organizationId" : "95a6bd90-9b72-4eae-9ac0-565d723b00f3",
  "auth0ConnectionId" : "auth0-opaque-connection",
  "name" : "Corp SAML",
  "auth0ConnectionType" : "Enterprise",
  "active" : true,
  "createdAt" : {
    "nano" : 442472000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : null,
  "deletedAt" : null
}

Update Identity Provider

PUT /identity-providers/{id}

Authorization

This endpoint requires:

  • update action on this identity-provider resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

name

String

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-providers/46ea7ca7-5be4-4fc8-9942-3753d3561238' -i -X PUT \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "New IdP Name"
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 431

{
  "id" : "46ea7ca7-5be4-4fc8-9942-3753d3561238",
  "organizationId" : "be261b0c-de61-4ecc-8ae3-8abb8988e607",
  "auth0ConnectionId" : "auth0-opaque-connectionId-131",
  "name" : "New IdP Name",
  "auth0ConnectionType" : "Database",
  "active" : true,
  "createdAt" : {
    "nano" : 680788000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : {
    "nano" : 702563000,
    "epochSecond" : 1723727651
  },
  "deletedAt" : null
}

Activate Or Deactivate Identity Provider

PUT /identity-providers/{id}/{action:activate|deactivate}

Authorization

This endpoint requires:

  • update action on this identity-provider resource.

Path parameters

Parameter Type Optional Description

id

Object

false

action

String

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-providers/bd0cebe8-7bd0-46f2-9a92-bb56104ac2de/activate' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 380

{
  "id" : "bd0cebe8-7bd0-46f2-9a92-bb56104ac2de",
  "organizationId" : "c0f0c9b7-aa3e-493f-9d4c-672f7c7c9e2b",
  "auth0ConnectionId" : "auth0-opaque-connectionId-125",
  "name" : "Username/Password",
  "auth0ConnectionType" : "Database",
  "active" : true,
  "createdAt" : {
    "nano" : 512744000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : null,
  "deletedAt" : null
}

Delete Identity Provider

DELETE /identity-providers/{id}

Authorization

This endpoint requires:

  • delete action on this identity-provider resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ConnectionId

String

true

name

String

true

auth0ConnectionType

String

true

Must be one of [Database, Social, Enterprise, Passwordless].

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-providers/9efd54a8-f495-4d69-a51c-e804a8d4e74d' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 492

{
  "id" : "9efd54a8-f495-4d69-a51c-e804a8d4e74d",
  "organizationId" : "95e6609f-e3f3-4467-9270-5c013c9c860c",
  "auth0ConnectionId" : "auth0-opaque-connectionId-129",
  "name" : "Username/Password",
  "auth0ConnectionType" : "Database",
  "active" : true,
  "createdAt" : {
    "nano" : 631320000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : {
    "nano" : 647840000,
    "epochSecond" : 1723727651
  },
  "deletedAt" : {
    "nano" : 647000000,
    "epochSecond" : 1723727651
  }
}

Default Roles

Find Default Roles

GET /default-roles

Authorization

This endpoint requires:

  • read action on this default-role resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

organizationId

String

true

name

String

true

roleType

String

true

Must be one of [Standard, Custom].

roleId

String

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/default-roles' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1395

[ {
  "id" : "02a1168c-1e72-4304-8592-7064ce7538d2",
  "organizationId" : "95068bb0-864b-4930-b06e-9acf4957c826",
  "name" : "Network Group Admin - Cloud Engineering Network Group",
  "roleType" : "Standard",
  "roleId" : "b75be358-a3f9-40a5-972d-a804c4758041",
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 31865000,
    "epochSecond" : 1723727603
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "05e188e7-8f13-407c-9829-eec4801814f6",
  "organizationId" : "f86122fb-316b-4427-8c38-248165bf4504",
  "name" : "Network Group Admin - NF Support (NFSUP) Network Group",
  "roleType" : "Standard",
  "roleId" : "cf53e966-a3ad-4e80-a5fc-380fe8d48e57",
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 960516000,
    "epochSecond" : 1723727602
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}, {
  "id" : "1274c964-0d62-41af-b37c-f19fc6fb6e89",
  "organizationId" : "cc2433a9-c951-4a30-a57f-c23567fe7b87",
  "name" : "Standard Role Admin - Network Group Admin of NF Support (NFSUP)",
  "roleType" : "Standard",
  "roleId" : "ddd39147-0ce2-473d-93c7-25b1b404433d",
  "createdBy" : "2b6f496d-36f1-4e66-a205-8abcf1d41d74",
  "createdAt" : {
    "nano" : 960516000,
    "epochSecond" : 1723727602
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
} ]

Get Default Role

GET /default-roles/{id}

Authorization

This endpoint requires:

  • read action on this default-role resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

name

String

true

roleType

String

true

Must be one of [Standard, Custom].

roleId

String

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/default-roles/a6449ec7-654d-42de-b17d-c88896bf279e' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 420

{
  "id" : "a6449ec7-654d-42de-b17d-c88896bf279e",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "name" : "Test Custom Role",
  "roleType" : "Custom",
  "roleId" : "390f9aaf-93e6-4a95-9267-16521ee35bca",
  "createdBy" : "eb03d7d3-2b87-41bf-9a6a-7a195ef4d42a",
  "createdAt" : {
    "nano" : 279974000,
    "epochSecond" : 1723727607
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Create Default Role

POST /default-roles

Authorization

This endpoint requires:

  • create action on this default-role resource.

  • update action on the organization resource identified by the organization property.

Request fields

Path Type Optional Description

organizationId

String

true

roleType

String

true

Must be one of [Standard, Custom].

roleId

String

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

name

String

true

roleType

String

true

Must be one of [Standard, Custom].

roleId

String

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/default-roles' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "organizationId" : "8cf6ba7a-a627-48a6-be37-8afdf48431e1",
  "roleType" : "Standard",
  "roleId" : "2ae58e80-9d7c-4c4b-84db-1f9013c42476"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 458

{
  "id" : "1f079da5-a290-431b-ad96-8e25d6834a3e",
  "organizationId" : "8cf6ba7a-a627-48a6-be37-8afdf48431e1",
  "name" : "Standard Role - 2ae58e80-9d7c-4c4b-84db-1f9013c42476",
  "roleType" : "Standard",
  "roleId" : "2ae58e80-9d7c-4c4b-84db-1f9013c42476",
  "createdBy" : "409913b1-b5e2-4290-a907-372680bbc147",
  "createdAt" : {
    "nano" : 877770000,
    "epochSecond" : 1723727648
  },
  "deletedAt" : null,
  "deletedBy" : null,
  "deleted" : false
}

Delete Default Role

DELETE /default-roles/{id}

Authorization

This endpoint requires:

  • delete action on this default-role resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

name

String

true

roleType

String

true

Must be one of [Standard, Custom].

roleId

String

true

createdBy

String

true

createdAt

Object

true

deletedAt

Object

true

deletedBy

String

true

deleted

Boolean

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/default-roles/357bc92b-0680-425b-ba83-4621f1acb709' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 508

{
  "id" : "357bc92b-0680-425b-ba83-4621f1acb709",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "name" : "Test Deletion",
  "roleType" : "Standard",
  "roleId" : "1a5ad47b-eb7d-4e15-9c32-03a209fa6237",
  "createdBy" : "ed25f703-d935-4d2f-b542-8e4b493261f0",
  "createdAt" : {
    "nano" : 600534000,
    "epochSecond" : 1723727648
  },
  "deletedAt" : {
    "nano" : 609000000,
    "epochSecond" : 1723727648
  },
  "deletedBy" : "46c2d45f-c252-4c2b-af3f-07480f68d4a9",
  "deleted" : true
}

Grant Default Role

POST /default-roles/{id}/grant

Authorization

This endpoint requires:

  • read action on this default-role resource.

  • create action on the invitation resource identified by the organization property.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

No request body.

Response fields

No response body.

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/default-roles/2b3d9abb-d95e-4d97-b950-89505f98ebc6/grant' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "includeIdentityIds" : [ "87283bb7-8ba3-46a2-89f9-e1f47399416e", "88641c89-726f-42d6-868b-586f8f543962", "588701b7-0071-4b31-9fae-b227f0d8ecd8" ],
  "excludeIdentityIds" : [ "88641c89-726f-42d6-868b-586f8f543962", "588701b7-0071-4b31-9fae-b227f0d8ecd8", "aaa05b8c-3f2d-4124-8a98-be50e79d8ba7" ]
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 51

{
  "87283bb7-8ba3-46a2-89f9-e1f47399416e" : true
}

User Identity

Get Identity

GET /identities/self

Authorization

This endpoint requires no specific permission, only an authenticated client.

Response fields

Path Type Optional Description

name

String

true

id

String

true

type

String

true

active

Boolean

true

email

String

true

deletedAt

Object

true

tenantId

String

true

Deprecated..

organizationId

String

true

createdAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identities/self' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 718

{
  "id" : "2484cb9e-2e5d-41cb-b4e5-01da1e9bf8a6",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "First",
  "lastName" : "Last",
  "email" : "random-205@acme.com",
  "identityMappings" : [ {
    "id" : "10aea0d4-e26c-4b8e-af54-4b266e33fa27",
    "auth0UserId" : "auth0-opaque-userId-206",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "2484cb9e-2e5d-41cb-b4e5-01da1e9bf8a6"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 258247000,
    "epochSecond" : 1723727656
  },
  "deletedAt" : null,
  "name" : "First Last",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Get Identity

GET /identities/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this user-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

name

String

true

id

String

true

type

String

true

active

Boolean

true

email

String

true

deletedAt

Object

true

tenantId

String

true

Deprecated..

organizationId

String

true

createdAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identities/ffd6db39-4ea4-45d1-9562-ebc3a874067f' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 710

{
  "id" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "John",
  "lastName" : "Doe",
  "email" : "john.doe@acme.com",
  "identityMappings" : [ {
    "id" : "b8455e21-d911-4678-9a32-3cc3f181633b",
    "auth0UserId" : "auth0-opaque-userId-3",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 390732000,
    "epochSecond" : 1723727607
  },
  "deletedAt" : null,
  "name" : "John Doe",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Find User Identities

GET /user-identities

Authorization

This endpoint requires:

  • read action on this user-identity resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

identityMappings

Array[Object]

true

identityMappings[].id

String

true

identityMappings[].auth0UserId

String

true

identityMappings[].identityProviderId

String

true

identityMappings[].userIdentityId

String

true

identityAudienceMappings

Array[Object]

true

identityAudienceMappings[].id

String

true

identityAudienceMappings[].userIdentityId

String

true

identityAudienceMappings[].oidcAudienceId

String

true

identityAudienceMappings[].subject

String

true

identityAudienceMappings[].active

Boolean

true

identityAudienceMappings[].createdBy

String

true

identityAudienceMappings[].createdAt

Object

true

identityAudienceMappings[].deletedAt

Object

true

identityAudienceMappings[].deletedBy

String

true

identityAudienceMappings[].deleted

Boolean

true

active

Boolean

true

createdAt

Object

true

deletedAt

Object

true

name

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1924

[ {
  "id" : "15cc561d-47dc-464f-a2a4-424087a99e97",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "First",
  "lastName" : "Last",
  "email" : "random-154@acme.com",
  "identityMappings" : [ {
    "id" : "814b3c0d-8652-47f6-92d9-f68368045737",
    "auth0UserId" : "auth0-opaque-userId-155",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "15cc561d-47dc-464f-a2a4-424087a99e97"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 778380000,
    "epochSecond" : 1723727653
  },
  "deletedAt" : null,
  "name" : "First Last",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}, {
  "id" : "183ba95d-3b99-4d6e-894d-b9ec2cd56c4e",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "First",
  "lastName" : "Last",
  "email" : "random-211@acme.com",
  "identityMappings" : [ {
    "id" : "5880441e-8f2d-4649-a4d9-ffc2f1e5f94a",
    "auth0UserId" : "auth0-opaque-userId-212",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "183ba95d-3b99-4d6e-894d-b9ec2cd56c4e"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : false,
  "createdAt" : {
    "nano" : 547726000,
    "epochSecond" : 1723727656
  },
  "deletedAt" : null,
  "name" : "First Last",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}, {
  "id" : "1b1d4645-1cee-4770-bac3-d6dc7b103a21",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "Jane",
  "lastName" : "Doe",
  "email" : "jane.doe@acme.com",
  "identityMappings" : [ ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 551560000,
    "epochSecond" : 1723727649
  },
  "deletedAt" : null,
  "name" : "Jane Doe",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
} ]

Get User Identity

GET /user-identities/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this user-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

identityMappings

Array[Object]

true

identityMappings[].id

String

true

identityMappings[].auth0UserId

String

true

identityMappings[].identityProviderId

String

true

identityMappings[].userIdentityId

String

true

identityAudienceMappings

Array[Object]

true

identityAudienceMappings[].id

String

true

identityAudienceMappings[].userIdentityId

String

true

identityAudienceMappings[].oidcAudienceId

String

true

identityAudienceMappings[].subject

String

true

identityAudienceMappings[].active

Boolean

true

identityAudienceMappings[].createdBy

String

true

identityAudienceMappings[].createdAt

Object

true

identityAudienceMappings[].deletedAt

Object

true

identityAudienceMappings[].deletedBy

String

true

identityAudienceMappings[].deleted

Boolean

true

active

Boolean

true

createdAt

Object

true

deletedAt

Object

true

name

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities/ffd6db39-4ea4-45d1-9562-ebc3a874067f' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 710

{
  "id" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "John",
  "lastName" : "Doe",
  "email" : "john.doe@acme.com",
  "identityMappings" : [ {
    "id" : "b8455e21-d911-4678-9a32-3cc3f181633b",
    "auth0UserId" : "auth0-opaque-userId-3",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 390732000,
    "epochSecond" : 1723727607
  },
  "deletedAt" : null,
  "name" : "John Doe",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Get User Identity By Mapping

GET /user-identities/mapping/{auth0UserId}/{identityProviderId}

Authorization

This endpoint requires:

  • read action on this user-identity resource.

Path parameters

Parameter Type Optional Description

auth0UserId

String

false

identityProviderId

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

identityMappings

Array[Object]

true

identityMappings[].id

String

true

identityMappings[].auth0UserId

String

true

identityMappings[].identityProviderId

String

true

identityMappings[].userIdentityId

String

true

identityAudienceMappings

Array[Object]

true

identityAudienceMappings[].id

String

true

identityAudienceMappings[].userIdentityId

String

true

identityAudienceMappings[].oidcAudienceId

String

true

identityAudienceMappings[].subject

String

true

identityAudienceMappings[].active

Boolean

true

identityAudienceMappings[].createdBy

String

true

identityAudienceMappings[].createdAt

Object

true

identityAudienceMappings[].deletedAt

Object

true

identityAudienceMappings[].deletedBy

String

true

identityAudienceMappings[].deleted

Boolean

true

active

Boolean

true

createdAt

Object

true

deletedAt

Object

true

name

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities/mapping/auth0-opaque-userId-3/b41829c0-9679-454b-9957-1a440075c751' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 710

{
  "id" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "John",
  "lastName" : "Doe",
  "email" : "john.doe@acme.com",
  "identityMappings" : [ {
    "id" : "b8455e21-d911-4678-9a32-3cc3f181633b",
    "auth0UserId" : "auth0-opaque-userId-3",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 390732000,
    "epochSecond" : 1723727607
  },
  "deletedAt" : null,
  "name" : "John Doe",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Create Identity

POST /user-identities

Authorization

This endpoint requires:

  • create action on this user-identity resource.

Request fields

Path Type Optional Description

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

identityMappings

Array[Object]

true

identityMappings[].id

String

true

identityMappings[].auth0UserId

String

true

identityMappings[].identityProviderId

String

true

identityMappings[].userIdentityId

String

true

identityAudienceMappings

Array[Object]

true

identityAudienceMappings[].id

String

true

identityAudienceMappings[].userIdentityId

String

true

identityAudienceMappings[].oidcAudienceId

String

true

identityAudienceMappings[].subject

String

true

identityAudienceMappings[].active

Boolean

true

identityAudienceMappings[].createdBy

String

true

identityAudienceMappings[].createdAt

Object

true

identityAudienceMappings[].deletedAt

Object

true

identityAudienceMappings[].deletedBy

String

true

identityAudienceMappings[].deleted

Boolean

true

active

Boolean

true

createdAt

Object

true

deletedAt

Object

true

name

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "Jane",
  "lastName" : "Doe",
  "email" : "jane.doe@acme.com"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 478

{
  "id" : "295d8a5c-a39e-4574-ad65-4ee8246d4f06",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "Jane",
  "lastName" : "Doe",
  "email" : "jane.doe@acme.com",
  "identityMappings" : [ ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 11543000,
    "epochSecond" : 1723727657
  },
  "deletedAt" : null,
  "name" : "Jane Doe",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Update

PUT /user-identities/{id}

Authorization

This endpoint requires:

  • update action on this user-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

firstName

String

true

lastName

String

true

email

String

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

identityMappings

Array[Object]

true

identityMappings[].id

String

true

identityMappings[].auth0UserId

String

true

identityMappings[].identityProviderId

String

true

identityMappings[].userIdentityId

String

true

identityAudienceMappings

Array[Object]

true

identityAudienceMappings[].id

String

true

identityAudienceMappings[].userIdentityId

String

true

identityAudienceMappings[].oidcAudienceId

String

true

identityAudienceMappings[].subject

String

true

identityAudienceMappings[].active

Boolean

true

identityAudienceMappings[].createdBy

String

true

identityAudienceMappings[].createdAt

Object

true

identityAudienceMappings[].deletedAt

Object

true

identityAudienceMappings[].deletedBy

String

true

identityAudienceMappings[].deleted

Boolean

true

active

Boolean

true

createdAt

Object

true

deletedAt

Object

true

name

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities/abbe0cbf-48b8-4bec-9ba5-bd1ef2e9ea11' -i -X PUT \
    -H 'Content-Type: application/json' \
    -d '{
  "firstName" : "Bobby",
  "lastName" : "White",
  "email" : "bobby.white@acme.com"
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 721

{
  "id" : "abbe0cbf-48b8-4bec-9ba5-bd1ef2e9ea11",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "Bobby",
  "lastName" : "White",
  "email" : "bobby.white@acme.com",
  "identityMappings" : [ {
    "id" : "03b2c4d9-1076-468a-bfd3-e6aa5b3e1001",
    "auth0UserId" : "auth0-opaque-userId-210",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "abbe0cbf-48b8-4bec-9ba5-bd1ef2e9ea11"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : true,
  "createdAt" : {
    "nano" : 476879000,
    "epochSecond" : 1723727656
  },
  "deletedAt" : null,
  "name" : "Bobby White",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Activate Or Deactivate User Identity

PUT /user-identities/{id}/{action:activate|deactivate}

Authorization

This endpoint requires:

  • update-active action on this user-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

action

String

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

firstName

String

true

lastName

String

true

email

String

true

identityMappings

Array[Object]

true

identityMappings[].id

String

true

identityMappings[].auth0UserId

String

true

identityMappings[].identityProviderId

String

true

identityMappings[].userIdentityId

String

true

identityAudienceMappings

Array[Object]

true

identityAudienceMappings[].id

String

true

identityAudienceMappings[].userIdentityId

String

true

identityAudienceMappings[].oidcAudienceId

String

true

identityAudienceMappings[].subject

String

true

identityAudienceMappings[].active

Boolean

true

identityAudienceMappings[].createdBy

String

true

identityAudienceMappings[].createdAt

Object

true

identityAudienceMappings[].deletedAt

Object

true

identityAudienceMappings[].deletedBy

String

true

identityAudienceMappings[].deleted

Boolean

true

active

Boolean

true

createdAt

Object

true

deletedAt

Object

true

name

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities/183ba95d-3b99-4d6e-894d-b9ec2cd56c4e/deactivate' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 719

{
  "id" : "183ba95d-3b99-4d6e-894d-b9ec2cd56c4e",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "firstName" : "First",
  "lastName" : "Last",
  "email" : "random-211@acme.com",
  "identityMappings" : [ {
    "id" : "5880441e-8f2d-4649-a4d9-ffc2f1e5f94a",
    "auth0UserId" : "auth0-opaque-userId-212",
    "identityProviderId" : "b41829c0-9679-454b-9957-1a440075c751",
    "userIdentityId" : "183ba95d-3b99-4d6e-894d-b9ec2cd56c4e"
  } ],
  "identityAudienceMappings" : [ ],
  "active" : false,
  "createdAt" : {
    "nano" : 547726000,
    "epochSecond" : 1723727656
  },
  "deletedAt" : null,
  "name" : "First Last",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "UserIdentity"
}

Reset User Identity Mfa Settings

PUT /user-identities/{id}/reset-mfa

Authorization

This endpoint requires:

  • update-reset-mfa action on this user-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

No response body.

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities/30450b2b-d92f-459b-ae35-399fad2ca332/reset-mfa' -i -X PUT

Example response

HTTP/1.1 200 OK

Map Identity

POST /user-identities/{id}/mapping

Authorization

This endpoint requires:

  • create-identity-mapping action on this user-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

auth0UserId

String

true

identityProviderId

String

true

Response fields

No response body.

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/user-identities/ff40d8bf-35ec-4363-9c5e-d12b0bbf80a8/mapping' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "auth0UserId" : "new-auth0-userId:cc070eb0-13b6-4c9f-b88c-407e8c71afea",
  "identityProviderId" : "55c67e94-3e36-43b7-8f08-625bee57a867"
}'

Example response

HTTP/1.1 200 OK

API Account Identity

Find Api Account Identities

GET /api-account-identities

Authorization

This endpoint requires:

  • read action on this api-account-identity resource.

Query parameters

Supports standard paging query parameters.

Parameter Type Optional Description

tenantId

Object

true

Deprecated..

organizationId

Object

true

name

String

true

contactEmail

String

true

active

Boolean

true

includeDeleted

Boolean

true

Default value: 'false'.

provider

String

true

Must be one of [Auth0, Cognito].

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ClientId

String

true

awsCognitoClientId

String

true

authenticationUrl

String

true

name

String

true

contactEmail

String

true

description

String

true

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

email

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/api-account-identities' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 2005

[ {
  "id" : "228cf971-d6c6-40c1-9d36-9e6bd03db6df",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : null,
  "awsCognitoClientId" : "fdfd0963-4478-47e3-af55-61b0eefa9379|akcprqim",
  "authenticationUrl" : "https://netfoundry-test-ytrfof.auth.us-east-1.amazoncognito.com/oauth2/token",
  "name" : "Testing Limits",
  "contactEmail" : "a@acme.com",
  "description" : "description",
  "active" : true,
  "createdAt" : {
    "nano" : 67553000,
    "epochSecond" : 1723727618
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "email" : "a@acme.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
}, {
  "id" : "24e3d921-1433-4626-a082-1c0d60462da8",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : null,
  "awsCognitoClientId" : "ced2c07f-2722-45ba-9f9e-01f9ef32ff9c|ftdnbcxi",
  "authenticationUrl" : "https://netfoundry-test-ajsyio.auth.us-east-1.amazoncognito.com/oauth2/token",
  "name" : "Testing Limits",
  "contactEmail" : "a@acme.com",
  "description" : "description",
  "active" : true,
  "createdAt" : {
    "nano" : 684341000,
    "epochSecond" : 1723727620
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "email" : "a@acme.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
}, {
  "id" : "2615acdd-64f2-4896-944b-8e57c2a552e7",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : null,
  "awsCognitoClientId" : "0a50151b-2760-417a-a68b-d72811a8a8da|xxpmevbw",
  "authenticationUrl" : "https://netfoundry-test-ucojtl.auth.us-east-1.amazoncognito.com/oauth2/token",
  "name" : "Testing Limits",
  "contactEmail" : "a@acme.com",
  "description" : "description",
  "active" : true,
  "createdAt" : {
    "nano" : 914540000,
    "epochSecond" : 1723727628
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "email" : "a@acme.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
} ]

Get Api Account Identity

GET /api-account-identities/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this api-account-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ClientId

String

true

awsCognitoClientId

String

true

authenticationUrl

String

true

name

String

true

contactEmail

String

true

description

String

true

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

email

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/api-account-identities/d71c5f97-e84b-4915-827e-7efdb5b3b613' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 718

{
  "id" : "d71c5f97-e84b-4915-827e-7efdb5b3b613",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : "bb6507aa-baa7-4ea3-908a-56f06d3a7f67",
  "awsCognitoClientId" : null,
  "authenticationUrl" : "http://127.0.0.1:1234/IdP/OAuth2/login",
  "name" : "api-account",
  "contactEmail" : "no-reply@acme.com",
  "description" : "This is an ACME non-interactive API client.",
  "active" : true,
  "createdAt" : {
    "nano" : 417578000,
    "epochSecond" : 1723727607
  },
  "updatedAt" : {
    "nano" : 133878000,
    "epochSecond" : 1723727609
  },
  "deletedAt" : null,
  "email" : "no-reply@acme.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
}

Get Api Account Identity By Mapping

GET /api-account-identities/mapping/{clientId}

Authorization

This endpoint requires:

  • read action on this api-account-identity resource.

Path parameters

Parameter Type Optional Description

clientId

String

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ClientId

String

true

awsCognitoClientId

String

true

authenticationUrl

String

true

name

String

true

contactEmail

String

true

description

String

true

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

email

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/api-account-identities/mapping/35606c53-b8c2-4ed5-9c0c-60af8b058f78' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 682

{
  "id" : "973c5985-cf6c-4815-80a1-ebfd1672b92c",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : "35606c53-b8c2-4ed5-9c0c-60af8b058f78",
  "awsCognitoClientId" : null,
  "authenticationUrl" : "http://127.0.0.1:1234/IdP/OAuth2/login",
  "name" : "ACME Internal Service-29",
  "contactEmail" : "service.admin-30@foo.com",
  "description" : "updatable API Account description-31",
  "active" : true,
  "createdAt" : {
    "nano" : 799362000,
    "epochSecond" : 1723727647
  },
  "updatedAt" : null,
  "deletedAt" : null,
  "email" : "service.admin-30@foo.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
}

Create Api Account Identity

POST /api-account-identities

Authorization

This endpoint requires:

  • create action on this api-account-identity resource.

Request fields

Path Type Optional Description

organizationId

String

true

name

String

true

contactEmail

String

true

description

String

true

grantDefaultRoles

Boolean

true

provider

String

true

Must be one of [Auth0, Cognito].

Response fields

Path Type Optional Description

apiAccountIdentity

Object

true

apiAccountIdentity.id

String

true

apiAccountIdentity.organizationId

String

true

apiAccountIdentity.auth0ClientId

String

true

apiAccountIdentity.awsCognitoClientId

String

true

apiAccountIdentity.authenticationUrl

String

true

apiAccountIdentity.name

String

true

apiAccountIdentity.contactEmail

String

true

apiAccountIdentity.description

String

true

apiAccountIdentity.active

Boolean

true

apiAccountIdentity.createdAt

Object

true

apiAccountIdentity.updatedAt

Object

true

apiAccountIdentity.deletedAt

Object

true

apiAccountIdentity.email

String

true

apiAccountIdentity.tenantId

String

true

Deprecated..

apiAccountIdentity.type

String

true

clientId

String

true

password

String

true

authenticationUrl

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/api-account-identities' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "name" : "HR Bridge Service",
  "contactEmail" : "hr.director@acme.com",
  "description" : "description goes here",
  "grantDefaultRoles" : true,
  "provider" : "Cognito"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 940

{
  "apiAccountIdentity" : {
    "id" : "cc020fd0-ebfd-491e-8500-e6835bb1a03d",
    "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "auth0ClientId" : null,
    "awsCognitoClientId" : "d5c550d6-a57d-4c77-bfbe-542fadeeddfb|ixcreihl",
    "authenticationUrl" : "https://netfoundry-test-vewgka.auth.us-east-1.amazoncognito.com/oauth2/token",
    "name" : "HR Bridge Service",
    "contactEmail" : "hr.director@acme.com",
    "description" : "description goes here",
    "active" : true,
    "createdAt" : {
      "nano" : 958671000,
      "epochSecond" : 1723727612
    },
    "updatedAt" : null,
    "deletedAt" : null,
    "email" : "hr.director@acme.com",
    "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
    "type" : "ApiAccountIdentity"
  },
  "clientId" : "ixcreihl",
  "password" : "jifnrnjhnstqyvkcgbxlltgt",
  "authenticationUrl" : "https://netfoundry-test-vewgka.auth.us-east-1.amazoncognito.com/oauth2/token"
}

Update Identity Info

PUT /api-account-identities/{id}

Authorization

This endpoint requires:

  • update action on this api-account-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

name

String

true

contactEmail

String

true

description

String

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ClientId

String

true

awsCognitoClientId

String

true

authenticationUrl

String

true

name

String

true

contactEmail

String

true

description

String

true

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

email

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/api-account-identities/bf926a3a-0443-4bd4-8dc7-be871df4bf51' -i -X PUT \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "Robot",
  "contactEmail" : "robot@acme.com",
  "description" : "description here."
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 680

{
  "id" : "bf926a3a-0443-4bd4-8dc7-be871df4bf51",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : "0e1f9c54-635b-4751-9677-b9f5379aa43b",
  "awsCognitoClientId" : null,
  "authenticationUrl" : "http://127.0.0.1:1234/IdP/OAuth2/login",
  "name" : "Robot",
  "contactEmail" : "robot@acme.com",
  "description" : "description here.",
  "active" : true,
  "createdAt" : {
    "nano" : 452741000,
    "epochSecond" : 1723727607
  },
  "updatedAt" : {
    "nano" : 335904000,
    "epochSecond" : 1723727608
  },
  "deletedAt" : null,
  "email" : "robot@acme.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
}

Activate Or Deactivate Api Account Identity

PUT /api-account-identities/{id}/{action:activate|deactivate}

Authorization

This endpoint requires:

  • update-active action on this api-account-identity resource.

Path parameters

Parameter Type Optional Description

id

Object

false

action

String

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

auth0ClientId

String

true

awsCognitoClientId

String

true

authenticationUrl

String

true

name

String

true

contactEmail

String

true

description

String

true

active

Boolean

true

createdAt

Object

true

updatedAt

Object

true

deletedAt

Object

true

email

String

true

tenantId

String

true

Deprecated..

type

String

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/api-account-identities/fc60169f-2a53-468f-a87d-92e8140be9b0/deactivate' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 739

{
  "id" : "fc60169f-2a53-468f-a87d-92e8140be9b0",
  "organizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "auth0ClientId" : "dffdfff7-fa1d-45bf-8777-5f54aec37689",
  "awsCognitoClientId" : null,
  "authenticationUrl" : "http://127.0.0.1:1234/IdP/OAuth2/login",
  "name" : "ACME Internal Service-23",
  "contactEmail" : "service.admin-24@foo.com",
  "description" : "updatable API Account description-25",
  "active" : false,
  "createdAt" : {
    "nano" : 621986000,
    "epochSecond" : 1723727647
  },
  "updatedAt" : {
    "nano" : 645134000,
    "epochSecond" : 1723727647
  },
  "deletedAt" : null,
  "email" : "service.admin-24@foo.com",
  "tenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "type" : "ApiAccountIdentity"
}

Invitation

Find Invitations

GET /invitations

Authorization

This endpoint requires:

  • read action on this invitation resource.

Query parameters

Supports standard paging query parameters.

Parameter Type Optional Description

fromIdentityId

Object

true

toTenantId

Object

true

Deprecated..

toOrganizationId

Object

true

invitedEmailAddress

String

true

targetIdentityId

Object

true

states

Object

true

Must be one of [Open, Accepted, Declined, Expired, Revoked].

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

fromIdentityId

String

true

toOrganizationId

String

true

invitedEmailAddress

String

true

expiration

Object

true

targetUserIdentityId

String

true

accepted

Boolean

true

revokedAt

Object

true

responseReceivedAt

Object

true

state

String

true

toTenantId

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 527

[ {
  "id" : "c64ae53d-58eb-4e15-9042-e7a571ee3a2f",
  "fromIdentityId" : "8530560a-c041-4b73-a4d1-49c3cc3038fd",
  "toOrganizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "invitedEmailAddress" : "new.employee@acme.com",
  "expiration" : {
    "nano" : 894574000,
    "epochSecond" : 1724332451
  },
  "targetUserIdentityId" : "db8cdc54-da5f-4db6-ab6f-54dbd40d4ab3",
  "accepted" : null,
  "revokedAt" : null,
  "responseReceivedAt" : null,
  "state" : "Open",
  "toTenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3"
} ]

Get Invitation By Id

GET /invitations/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this invitation resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

fromIdentityId

String

true

toOrganizationId

String

true

invitedEmailAddress

String

true

expiration

Object

true

targetUserIdentityId

String

true

accepted

Boolean

true

revokedAt

Object

true

responseReceivedAt

Object

true

state

String

true

toTenantId

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations/cf960ca5-797b-48db-81d0-d69682046e59' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 527

{
  "id" : "cf960ca5-797b-48db-81d0-d69682046e59",
  "fromIdentityId" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f",
  "toOrganizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "invitedEmailAddress" : "new.employee-141@acme.com",
  "expiration" : {
    "nano" : 114381000,
    "epochSecond" : 1724332452
  },
  "targetUserIdentityId" : "cbe09a97-bcd2-412f-aea6-e822089747c5",
  "accepted" : null,
  "revokedAt" : null,
  "responseReceivedAt" : null,
  "state" : "Open",
  "toTenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3"
}

Create Invitation

POST /invitations

Authorization

This endpoint requires:

  • create action on this invitation resource.

  • read action on the user-identity resource identified by the targetUserIdentityId property.

Request fields

Path Type Optional Description

toOrganizationId

String

true

invitedEmailAddress

String

true

invitationUrl

String

true

targetUserIdentityId

String

true

Response fields

Path Type Optional Description

id

String

true

fromIdentityId

String

true

toOrganizationId

String

true

invitedEmailAddress

String

true

expiration

Object

true

targetUserIdentityId

String

true

accepted

Boolean

true

revokedAt

Object

true

responseReceivedAt

Object

true

state

String

true

toTenantId

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "toOrganizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "invitedEmailAddress" : "new.employee@acme.com",
  "invitationUrl" : "http://acme.console.netfoundry.io/invitation",
  "targetUserIdentityId" : "db8cdc54-da5f-4db6-ab6f-54dbd40d4ab3"
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 523

{
  "id" : "c64ae53d-58eb-4e15-9042-e7a571ee3a2f",
  "fromIdentityId" : "8530560a-c041-4b73-a4d1-49c3cc3038fd",
  "toOrganizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "invitedEmailAddress" : "new.employee@acme.com",
  "expiration" : {
    "nano" : 894574000,
    "epochSecond" : 1724332451
  },
  "targetUserIdentityId" : "db8cdc54-da5f-4db6-ab6f-54dbd40d4ab3",
  "accepted" : null,
  "revokedAt" : null,
  "responseReceivedAt" : null,
  "state" : "Open",
  "toTenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3"
}

Respond To Invitation

PUT /invitations/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}/{action:accept|decline}

Authorization

This endpoint requires:

  • update-respond action on this invitation resource.

Path parameters

Parameter Type Optional Description

id

Object

false

action

String

false

Response fields

Path Type Optional Description

id

String

true

fromIdentityId

String

true

toOrganizationId

String

true

invitedEmailAddress

String

true

expiration

Object

true

targetUserIdentityId

String

true

accepted

Boolean

true

revokedAt

Object

true

responseReceivedAt

Object

true

state

String

true

toTenantId

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations/3b724358-3a5f-4f5e-a7ca-e287e7ec633f/decline' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 586

{
  "id" : "3b724358-3a5f-4f5e-a7ca-e287e7ec633f",
  "fromIdentityId" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f",
  "toOrganizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "invitedEmailAddress" : "new.employee-138@acme.com",
  "expiration" : {
    "nano" : 64126000,
    "epochSecond" : 1724332452
  },
  "targetUserIdentityId" : "d658bec4-5348-49d1-8f62-36aa53e8bad9",
  "accepted" : false,
  "revokedAt" : null,
  "responseReceivedAt" : {
    "nano" : 75289000,
    "epochSecond" : 1723727652
  },
  "state" : "Declined",
  "toTenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3"
}

Revoke Invitation

PUT /invitations/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}/revoke

Authorization

This endpoint requires:

  • update-revoke action on this invitation resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

fromIdentityId

String

true

toOrganizationId

String

true

invitedEmailAddress

String

true

expiration

Object

true

targetUserIdentityId

String

true

accepted

Boolean

true

revokedAt

Object

true

responseReceivedAt

Object

true

state

String

true

toTenantId

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations/d8db1bc5-37f5-4e70-b305-f8aa9e9215dc/revoke' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 642

{
  "id" : "d8db1bc5-37f5-4e70-b305-f8aa9e9215dc",
  "fromIdentityId" : "ffd6db39-4ea4-45d1-9562-ebc3a874067f",
  "toOrganizationId" : "e5011091-eaee-48c2-936b-10d99c8da1e3",
  "invitedEmailAddress" : "new.employee-144@acme.com",
  "expiration" : {
    "nano" : 159840000,
    "epochSecond" : 1724332452
  },
  "targetUserIdentityId" : "dbfc8f30-a130-493b-a66a-e6220cffa8fc",
  "accepted" : null,
  "revokedAt" : {
    "nano" : 173018000,
    "epochSecond" : 1723727652
  },
  "responseReceivedAt" : {
    "nano" : 173021000,
    "epochSecond" : 1723727652
  },
  "state" : "Revoked",
  "toTenantId" : "e5011091-eaee-48c2-936b-10d99c8da1e3"
}

Support

Create Support Request

POST /nfconsole/support/requests

Authorization

Authorization not required for this request.

Request fields

Path Type Optional Description

name

String

true

email

String

true

selectedOrganizationId

String

true

selectedNetworkId

String

true

subject

String

true

comment

String

true

type

String

true

Must be one of [problem, incident, question, task].

priority

String

true

Must be one of [urgent, high, normal, low].

severity

String

true

Must be one of [Severity1, Severity2, Severity3].

recentErrorMessages

Array[String]

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/nfconsole/support/requests' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "name" : "Curious George",
  "email" : "george@curious-client.com",
  "selectedOrganizationId" : null,
  "selectedNetworkId" : null,
  "subject" : "Sales Contact Request",
  "comment" : "This looks great!  I'd like a sales rep to contact me.",
  "type" : "question",
  "priority" : "high",
  "severity" : "Severity3",
  "recentErrorMessages" : null
}'

Example response

HTTP/1.1 200 OK

Invitation Flow

Get Invitation By Key

GET /invitations/key/{key:\p{Alnum}{36}}

Authorization

Authorization not required for this request.

Path parameters

Parameter Type Optional Description

key

String

false

Response fields

Path Type Optional Description

fromIdentity

Object

true

fromIdentity.name

String

true

fromIdentity.email

String

true

targetIdentity

Object

true

targetIdentity.name

String

true

targetIdentity.email

String

true

invitedEmailAddress

String

true

toOrganizationName

String

true

toOrganizationLabel

String

true

expiration

Object

true

accepted

Boolean

true

state

String

true

Must be one of [Open, Accepted, Declined, Expired, Revoked].

toTenantName

String

true

Deprecated..

toTenantLabel

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations/key/5R4g4B71ZTnDXB72Frx1W6EpxKzy6UHkpyMZ' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 519

{
  "fromIdentity" : {
    "name" : "John Doe",
    "email" : "john.doe@acme.com"
  },
  "targetIdentity" : {
    "name" : "First Last",
    "email" : "random-151@acme.com"
  },
  "invitedEmailAddress" : "new.employee-153@acme.com",
  "toOrganizationName" : "ACME International, Inc.",
  "toOrganizationLabel" : "ACME-0",
  "expiration" : {
    "nano" : 488786000,
    "epochSecond" : 1724332452
  },
  "accepted" : null,
  "state" : "Open",
  "toTenantName" : "ACME International, Inc.",
  "toTenantLabel" : "ACME-0"
}

Decline Invitation

PUT /invitations/key/{key:\p{Alnum}{36}}/decline

Authorization

Authorization not required for this request.

Path parameters

Parameter Type Optional Description

key

String

false

Response fields

Path Type Optional Description

fromIdentity

Object

true

fromIdentity.name

String

true

fromIdentity.email

String

true

targetIdentity

Object

true

targetIdentity.name

String

true

targetIdentity.email

String

true

invitedEmailAddress

String

true

toOrganizationName

String

true

toOrganizationLabel

String

true

expiration

Object

true

accepted

Boolean

true

state

String

true

Must be one of [Open, Accepted, Declined, Expired, Revoked].

toTenantName

String

true

Deprecated..

toTenantLabel

String

true

Deprecated..

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations/key/AA0ur2bYz26wLAdXaQsE35b6v5irloUOoAvY/decline' -i -X PUT

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 524

{
  "fromIdentity" : {
    "name" : "John Doe",
    "email" : "john.doe@acme.com"
  },
  "targetIdentity" : {
    "name" : "First Last",
    "email" : "random-148@acme.com"
  },
  "invitedEmailAddress" : "new.employee-150@acme.com",
  "toOrganizationName" : "ACME International, Inc.",
  "toOrganizationLabel" : "ACME-0",
  "expiration" : {
    "nano" : 427805000,
    "epochSecond" : 1724332452
  },
  "accepted" : false,
  "state" : "Declined",
  "toTenantName" : "ACME International, Inc.",
  "toTenantLabel" : "ACME-0"
}

Initiate Accept Invitation

POST /invitations/key/{key:\p{Alnum}{36}}/accept-initiate

Authorization

Authorization not required for this request.

Path parameters

Parameter Type Optional Description

key

String

false

Request fields

Path Type Optional Description

intermediateReturnUrl

String

true

Response fields

Path Type Optional Description

nfToken

String

true

auth0ConnectionIds

Array[String]

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/invitations/key/nfywxyLXPc5pUqFdf1ICUnnxeiverkGeNNg1/accept-initiate' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "intermediateReturnUrl" : "http://console.nfadmin.netfoundry.io/invitation"
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 981

{
  "nfToken" : "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MjM3Mjc2NTIsImV4cCI6MTcyMzcyODU1MiwiaXNzIjoiaHR0cDovL2xvY2FsaG9zdDo4MDgwL2lkZW50aXR5L3YxIiwiYXVkIjoiaHR0cHM6Ly9uZXRmb3VuZHJ5LXNhbmRib3guYXV0aDAuY29tLyIsImZsb3ciOiJpbnZpdGF0aW9uIiwiaW52aXRhdGlvbklkIjoiYzZhNjVjMjUtYjhjYS00MDJkLWE2YzEtNTgyMjU0NmIzN2Y2IiwidGVuYW50TGFiZWwiOiJBQ01FLTAiLCJhdXRoMENvbm5lY3Rpb25JZHMiOlsiYXV0aDAtb3BhcXVlLWNvbm5lY3Rpb25JZC0xIiwiYXV0aDAtb3BhcXVlLWNvbm5lY3Rpb25JZC0yIl0sInJlZGlyZWN0VXJsIjoiaHR0cDovL2NvbnNvbGUubmZhZG1pbi5uZXRmb3VuZHJ5LmlvL2ludml0YXRpb24ifQ.hEqn-oRxzQsfZZfJi37rVxALa4MyENHPUA_W7Spwdc69gMxNw2iVoShoO1Jlt2slx77AJuO5Oxmw5DwScJWLAqR0UMx9ZT206amseE0VjKiDWN0mhEEXfibqMuA29-iHXl7ABciucd9x-SRbyupUSTTQUkPDQ0OiXsFymVN_voXR3oV-Zyk2R2mllWVDOfzCUSb4LxpEskQDTSGiKTefWhrvmUpc7D6Cw8SiA0WG93MgIuUC0MRxgG5i7wl68ozoxZ1AsIFs11VMdmpbZ7ir2Pu8jKLPgnbBQrpUWZA-mRMdfo4m1Hs_NePaMOgI_B-zezxHqlfMjw8tl86zSlJ-bQ",
  "auth0ConnectionIds" : [ "auth0-opaque-connectionId-1", "auth0-opaque-connectionId-2" ]
}

Login Flow

Initiate Interactive Authorization

POST /organizations/authorize-initiate

Authorization

Authorization not required for this request.

Request fields

Path Type Optional Description

label

String

true

intermediateReturnUrl

String

true

Response fields

Path Type Optional Description

nfToken

String

true

auth0ConnectionIds

Array[String]

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organizations/authorize-initiate' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "label" : "ACME-0",
  "intermediateReturnUrl" : "http://console.nfadmin.netfoundry.io/invitation"
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 902

{
  "nfToken" : "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE3MjM3Mjc2NTIsImV4cCI6MTcyMzcyODU1MiwiaXNzIjoiaHR0cDovL2xvY2FsaG9zdDo4MDgwL2lkZW50aXR5L3YxIiwiYXVkIjoiaHR0cHM6Ly9uZXRmb3VuZHJ5LXNhbmRib3guYXV0aDAuY29tLyIsImZsb3ciOiJsb2dpbiIsInRlbmFudExhYmVsIjoiQUNNRS0wIiwiYXV0aDBDb25uZWN0aW9uSWRzIjpbImF1dGgwLW9wYXF1ZS1jb25uZWN0aW9uSWQtMSIsImF1dGgwLW9wYXF1ZS1jb25uZWN0aW9uSWQtMiJdLCJyZWRpcmVjdFVybCI6Imh0dHA6Ly9jb25zb2xlLm5mYWRtaW4ubmV0Zm91bmRyeS5pby9pbnZpdGF0aW9uIn0.rqRfRKvwb4q_BvbjfEjYHG-Xlu8V6ql1K0X_urLF72LZ0VwPzOUc0ojiWNB52zUvtJo6Qs4KsDraGm5ZXulDp8xzlPmETENO_-2irwq1ApDJ1NE-iXjiZZ6rxp3XAY8CDblBOZer_1un-YfEtQgRKAOTVHZFAhxt_cLV1wMoRVxfGUZ82h1pM_-yfPFwNqQIwH3-VlKi6bqYToXVROnQICgc6OqfKPZFyKPPaPiybFrHRGr3kN9BT3WE-YejXoXkJmkiOEsDcLiKtshROMtJ_a3Dvi6R68EEmu6EkEMnyXIiFyvpW0cgKeBx1m4SS8lMgKu4KhwnlHx-4hPFFq5b4g",
  "auth0ConnectionIds" : [ "auth0-opaque-connectionId-1", "auth0-opaque-connectionId-2" ]
}

Identity Preference Flow

Find Identity Preferences

GET /identity-preferences

Authorization

This endpoint requires:

  • read action on this identity-preference resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

userIdentityId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-preferences' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 434

[ {
  "id" : "845d8961-8ad9-44b8-96cd-791d2156e31b",
  "userIdentityId" : "4a335891-e645-4f9b-a489-36ae4f76a328",
  "preferences" : {
    "first" : "my first preference."
  },
  "createdBy" : "4a335891-e645-4f9b-a489-36ae4f76a328",
  "createdAt" : {
    "nano" : 292990000,
    "epochSecond" : 1723727650
  },
  "updatedAt" : {
    "nano" : 292990000,
    "epochSecond" : 1723727650
  },
  "deletedBy" : null,
  "deletedAt" : null
} ]

Get Identity Preference

GET /identity-preferences/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this identity-preference resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-preferences/65d20d81-9b29-4462-bad7-3ffb127bf5f8' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 413

{
  "id" : "65d20d81-9b29-4462-bad7-3ffb127bf5f8",
  "userIdentityId" : "8d3fd017-54c2-4609-81dd-751ae43f326f",
  "preferences" : {
    "hello" : "world"
  },
  "createdBy" : "8d3fd017-54c2-4609-81dd-751ae43f326f",
  "createdAt" : {
    "nano" : 23899000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : {
    "nano" : 23899000,
    "epochSecond" : 1723727651
  },
  "deletedBy" : null,
  "deletedAt" : null
}

Create Identity Preference

POST /identity-preferences

Authorization

This endpoint requires:

  • create action on this identity-preference resource.

Request fields

Path Type Optional Description

userIdentityId

String

true

preferences

Object

true

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-preferences' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "userIdentityId" : "c0f66687-c9b5-42a8-8351-86dadad8e124",
  "preferences" : {
    "first" : "my first preference."
  }
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 430

{
  "id" : "f472314c-aa4f-4299-9a82-49306a5a32a2",
  "userIdentityId" : "c0f66687-c9b5-42a8-8351-86dadad8e124",
  "preferences" : {
    "first" : "my first preference."
  },
  "createdBy" : "1d50beeb-fd0b-439d-b92f-3033b56862c5",
  "createdAt" : {
    "nano" : 631583000,
    "epochSecond" : 1723727650
  },
  "updatedAt" : {
    "nano" : 631583000,
    "epochSecond" : 1723727650
  },
  "deletedBy" : null,
  "deletedAt" : null
}

Update Identity Preference

PUT /identity-preferences/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • update action on this identity-preference resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

preferences

Object

true

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-preferences/c6b8f334-c96c-473c-b7f4-2c368aafe7e3' -i -X PUT \
    -H 'Content-Type: application/json' \
    -d '{
  "preferences" : {
    "updated" : "my second preference."
  }
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 433

{
  "id" : "c6b8f334-c96c-473c-b7f4-2c368aafe7e3",
  "userIdentityId" : "24b1e1c1-0261-4ede-96da-5d5d2dd22f6a",
  "preferences" : {
    "updated" : "my second preference."
  },
  "createdBy" : "24b1e1c1-0261-4ede-96da-5d5d2dd22f6a",
  "createdAt" : {
    "nano" : 133622000,
    "epochSecond" : 1723727651
  },
  "updatedAt" : {
    "nano" : 145956000,
    "epochSecond" : 1723727651
  },
  "deletedBy" : null,
  "deletedAt" : null
}

Delete Identity Preference

DELETE /identity-preferences/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • delete action on this identity-preference resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

userIdentityId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/identity-preferences/1e0efffa-5354-4a1e-b66e-e065e42b105d' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 505

{
  "id" : "1e0efffa-5354-4a1e-b66e-e065e42b105d",
  "userIdentityId" : "afd14114-8fbc-478a-afe1-399cd33514c2",
  "preferences" : {
    "hello" : "world"
  },
  "createdBy" : "afd14114-8fbc-478a-afe1-399cd33514c2",
  "createdAt" : {
    "nano" : 959735000,
    "epochSecond" : 1723727650
  },
  "updatedAt" : {
    "nano" : 981843000,
    "epochSecond" : 1723727650
  },
  "deletedBy" : "71ff7d24-cbf9-4e6f-a87c-4a8e0c57a23e",
  "deletedAt" : {
    "nano" : 981000000,
    "epochSecond" : 1723727650
  }
}

Organization Preference Flow

Find Organization Preferences

GET /organization-preferences

Authorization

This endpoint requires:

  • read action on this organization-preference resource.

Response fields

Standard paging response where content field is list of following objects:

Path Type Optional Description

id

String

true

organizationId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-preferences' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1268

[ {
  "id" : "7841af5a-1f32-444b-ae94-0a84dafd7161",
  "organizationId" : "5f65683f-51d2-4367-9cb7-e2aadcb20da0",
  "preferences" : {
    "hello" : "world"
  },
  "createdBy" : "070ab3a1-5e92-4f3f-9733-2d52a776d88e",
  "createdAt" : {
    "nano" : 454705000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 454705000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : null,
  "deletedAt" : null
}, {
  "id" : "7e7dc541-6f6f-4180-8147-fb99d4540ee8",
  "organizationId" : "4eecf8e9-3339-41b7-b743-bd948525bc90",
  "preferences" : {
    "first" : "my first preference."
  },
  "createdBy" : "51306620-f0c9-4ab7-9ba2-af6826575075",
  "createdAt" : {
    "nano" : 385777000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 385777000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : null,
  "deletedAt" : null
}, {
  "id" : "e31d263f-9996-4dac-a914-e2365dcafa5d",
  "organizationId" : "e6c1bbd1-78d7-44c6-aaf7-c9153eb6c55e",
  "preferences" : {
    "hello" : "world"
  },
  "createdBy" : "039cc1b8-ec38-4cd1-97b1-43311da06dd3",
  "createdAt" : {
    "nano" : 305109000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 305109000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : null,
  "deletedAt" : null
} ]

Get Organization Preference

GET /organization-preferences/{id:[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}}

Authorization

This endpoint requires:

  • read action on this organization-preference resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-preferences/7841af5a-1f32-444b-ae94-0a84dafd7161' -i -X GET

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 415

{
  "id" : "7841af5a-1f32-444b-ae94-0a84dafd7161",
  "organizationId" : "5f65683f-51d2-4367-9cb7-e2aadcb20da0",
  "preferences" : {
    "hello" : "world"
  },
  "createdBy" : "070ab3a1-5e92-4f3f-9733-2d52a776d88e",
  "createdAt" : {
    "nano" : 454705000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 454705000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : null,
  "deletedAt" : null
}

Create Organization Preference

POST /organization-preferences

Authorization

This endpoint requires:

  • create action on this organization-preference resource.

Request fields

Path Type Optional Description

organizationId

String

true

preferences

Object

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-preferences' -i -X POST \
    -H 'Content-Type: application/json' \
    -d '{
  "organizationId" : "4eecf8e9-3339-41b7-b743-bd948525bc90",
  "preferences" : {
    "first" : "my first preference."
  }
}'

Example response

HTTP/1.1 201 Created
Content-Type: application/json
Content-Length: 430

{
  "id" : "7e7dc541-6f6f-4180-8147-fb99d4540ee8",
  "organizationId" : "4eecf8e9-3339-41b7-b743-bd948525bc90",
  "preferences" : {
    "first" : "my first preference."
  },
  "createdBy" : "51306620-f0c9-4ab7-9ba2-af6826575075",
  "createdAt" : {
    "nano" : 385777000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 385777000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : null,
  "deletedAt" : null
}

Update Organization Preference

PUT /organization-preferences/{id}

Authorization

This endpoint requires:

  • update action on this organization-preference resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Request fields

Path Type Optional Description

preferences

Object

true

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-preferences/eb91e4f1-e517-46c7-a225-e3c45bd37dba' -i -X PUT \
    -H 'Content-Type: application/json' \
    -d '{
  "preferences" : {
    "updated" : "my second preference."
  }
}'

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 433

{
  "id" : "eb91e4f1-e517-46c7-a225-e3c45bd37dba",
  "organizationId" : "94768665-987d-4627-908d-867b327b6cf7",
  "preferences" : {
    "updated" : "my second preference."
  },
  "createdBy" : "c873bacc-bfc6-406f-8194-912aeef2ed7c",
  "createdAt" : {
    "nano" : 580178000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 593200000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : null,
  "deletedAt" : null
}

Delete Organization Preference

DELETE /organization-preferences/{id}

Authorization

This endpoint requires:

  • delete action on this organization-preference resource.

Path parameters

Parameter Type Optional Description

id

Object

false

Response fields

Path Type Optional Description

id

String

true

organizationId

String

true

preferences

Object

true

createdBy

String

true

createdAt

Object

true

updatedAt

Object

true

deletedBy

String

true

deletedAt

Object

true

Example request

$ curl 'https://gateway.netFoundry.io/identity/v1/organization-preferences/268bf4ec-2464-45dd-a942-51c2dd2bc105' -i -X DELETE

Example response

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 505

{
  "id" : "268bf4ec-2464-45dd-a942-51c2dd2bc105",
  "organizationId" : "18085ebc-e2ae-42a5-9353-dad7723804b2",
  "preferences" : {
    "hello" : "world"
  },
  "createdBy" : "6375b7ad-c503-4bfd-a9c6-d4108bd9007b",
  "createdAt" : {
    "nano" : 416934000,
    "epochSecond" : 1723727655
  },
  "updatedAt" : {
    "nano" : 425519000,
    "epochSecond" : 1723727655
  },
  "deletedBy" : "8a135075-cb96-44c1-90e0-eda7f01f7f9c",
  "deletedAt" : {
    "nano" : 425000000,
    "epochSecond" : 1723727655
  }
}