# OIDC Configuration (Infrastructure)

Endpoints to configure external IDPs.

## Get OIDC providers

> Return a complete list of all configured OIDC providers.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to configure external IDPs.","name":"OIDC Configuration (Infrastructure)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"OidcProviders":{"properties":{"providers":{"description":"The list of OIDC providers","items":{"$ref":"#/components/schemas/StrippedOidcProvider"},"type":"array"},"total":{"description":"The total number of OIDC providers","type":"number"}},"required":["total","providers"],"title":"OidcProviders","type":"object","description":"OidcProviders"},"StrippedOidcProvider":{"properties":{"assignedGroups":{"description":"The assigned groups of the OIDC provider","items":{"$ref":"#/components/schemas/AssignedGroup"},"type":"array"},"clientId":{"description":"The client id of the OIDC provider","type":"string"},"customParameters":{"description":"The custom parameters of the OIDC provider","items":{"$ref":"#/components/schemas/OidcProviderCustomParameter"},"type":"array"},"id":{"description":"The id of the OIDC provider","type":"string"},"issuer":{"description":"The issuer of the OIDC provider","type":"string"},"name":{"description":"The name of the OIDC provider","type":"string"},"status":{"description":"The status of the OIDC provider","enum":["ACTIVE","INACTIVE"],"type":"string"},"version":{"description":"The version of the OIDC provider","type":"number"}},"required":["name","status","issuer","clientId","customParameters","assignedGroups","id","version"],"title":"StrippedOidcProvider","type":"object","description":"StrippedOidcProvider"},"AssignedGroup":{"properties":{"facilityRefs":{"items":{"type":"string"},"type":"array"},"group":{"type":"string"}},"required":["facilityRefs","group"],"title":"AssignedGroup","type":"object","description":"AssignedGroup"},"OidcProviderCustomParameter":{"properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"],"title":"OidcProviderCustomParameter","type":"object","description":"OidcProviderCustomParameter"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/configurations/oidcproviders":{"get":{"deprecated":false,"description":"Return a complete list of all configured OIDC providers.","operationId":"getOidcProviders","parameters":[],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OidcProviders"}}},"description":"Existing oidc providers."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"}},"summary":"Get OIDC providers","tags":["OIDC Configuration (Infrastructure)"]}}}}
```

## Create OIDC provider

> Registers an external OIDC provider so the platform can interact with it for user authentication.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to configure external IDPs.","name":"OIDC Configuration (Infrastructure)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"OidcProviderForCreation":{"properties":{"assignedGroups":{"description":"The assigned groups of the OIDC provider","items":{"$ref":"#/components/schemas/AssignedGroup"},"type":"array"},"clientId":{"description":"The client id of the OIDC provider","type":"string"},"clientSecret":{"description":"The client secret of the OIDC provider","type":"string"},"customParameters":{"description":"The custom parameters of the OIDC provider","items":{"$ref":"#/components/schemas/OidcProviderCustomParameter"},"type":"array"},"issuer":{"description":"The issuer of the OIDC provider","type":"string"},"name":{"description":"The name of the OIDC provider","type":"string"},"status":{"description":"The status of the OIDC provider","enum":["ACTIVE","INACTIVE"],"type":"string"}},"required":["name","status","issuer","clientId","customParameters","assignedGroups","clientSecret"],"title":"OidcProviderForCreation","type":"object","description":"OidcProviderForCreation"},"AssignedGroup":{"properties":{"facilityRefs":{"items":{"type":"string"},"type":"array"},"group":{"type":"string"}},"required":["facilityRefs","group"],"title":"AssignedGroup","type":"object","description":"AssignedGroup"},"OidcProviderCustomParameter":{"properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"],"title":"OidcProviderCustomParameter","type":"object","description":"OidcProviderCustomParameter"},"StrippedOidcProvider":{"properties":{"assignedGroups":{"description":"The assigned groups of the OIDC provider","items":{"$ref":"#/components/schemas/AssignedGroup"},"type":"array"},"clientId":{"description":"The client id of the OIDC provider","type":"string"},"customParameters":{"description":"The custom parameters of the OIDC provider","items":{"$ref":"#/components/schemas/OidcProviderCustomParameter"},"type":"array"},"id":{"description":"The id of the OIDC provider","type":"string"},"issuer":{"description":"The issuer of the OIDC provider","type":"string"},"name":{"description":"The name of the OIDC provider","type":"string"},"status":{"description":"The status of the OIDC provider","enum":["ACTIVE","INACTIVE"],"type":"string"},"version":{"description":"The version of the OIDC provider","type":"number"}},"required":["name","status","issuer","clientId","customParameters","assignedGroups","id","version"],"title":"StrippedOidcProvider","type":"object","description":"StrippedOidcProvider"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/configurations/oidcproviders":{"post":{"deprecated":false,"description":"Registers an external OIDC provider so the platform can interact with it for user authentication.","operationId":"createOidcProvider","parameters":[],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OidcProviderForCreation"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrippedOidcProvider"}}},"description":"Provider was found."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Create OIDC provider","tags":["OIDC Configuration (Infrastructure)"]}}}}
```

## Get OIDC provider

> Get the configuration of a configured OIDC provider.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to configure external IDPs.","name":"OIDC Configuration (Infrastructure)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/configurations/oidcproviders/{oidcProviderId}":{"get":{"deprecated":false,"description":"Get the configuration of a configured OIDC provider.","operationId":"getOidcProvider","parameters":[{"in":"path","name":"oidcProviderId","required":true,"schema":{"type":"string"}}],"responses":{"201":{"description":"The users was successfully created."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Get OIDC provider","tags":["OIDC Configuration (Infrastructure)"]}}}}
```

## Update OIDC provider

> Change the configuration of an already configured OIDC provider. The configuration has to contain all necessary values.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to configure external IDPs.","name":"OIDC Configuration (Infrastructure)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"OidcProviderForUpdate":{"properties":{"assignedGroups":{"description":"The assigned groups of the OIDC provider","items":{"$ref":"#/components/schemas/AssignedGroup"},"type":"array"},"clientId":{"description":"The client id of the OIDC provider","type":"string"},"clientSecret":{"description":"The client secret of the OIDC provider","type":"string"},"customParameters":{"description":"The custom parameters of the OIDC provider","items":{"$ref":"#/components/schemas/OidcProviderCustomParameter"},"type":"array"},"issuer":{"description":"The issuer of the OIDC provider","type":"string"},"name":{"description":"The name of the OIDC provider","type":"string"},"status":{"description":"The status of the OIDC provider","enum":["ACTIVE","INACTIVE"],"type":"string"},"version":{"description":"The version of the OIDC provider","type":"number"}},"required":["name","status","issuer","clientId","customParameters","assignedGroups","clientSecret","version"],"title":"OidcProviderForUpdate","type":"object","description":"OidcProviderForUpdate"},"AssignedGroup":{"properties":{"facilityRefs":{"items":{"type":"string"},"type":"array"},"group":{"type":"string"}},"required":["facilityRefs","group"],"title":"AssignedGroup","type":"object","description":"AssignedGroup"},"OidcProviderCustomParameter":{"properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"],"title":"OidcProviderCustomParameter","type":"object","description":"OidcProviderCustomParameter"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/configurations/oidcproviders/{oidcProviderId}":{"put":{"deprecated":false,"description":"Change the configuration of an already configured OIDC provider. The configuration has to contain all necessary values.","operationId":"updateOidcProvider","parameters":[{"in":"path","name":"oidcProviderId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OidcProviderForUpdate"}}},"required":true},"responses":{"200":{"description":"Provider was updated successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update OIDC provider","tags":["OIDC Configuration (Infrastructure)"]}}}}
```

## Delete OIDC provider

> Removes an OIDC provider configuration, disabling the platform’s ability to authenticate via that provider.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to configure external IDPs.","name":"OIDC Configuration (Infrastructure)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/configurations/oidcproviders/{oidcProviderId}":{"delete":{"deprecated":false,"description":"Removes an OIDC provider configuration, disabling the platform’s ability to authenticate via that provider.","operationId":"deleteOidcProvider","parameters":[{"in":"path","name":"oidcProviderId","required":true,"schema":{"type":"string"}}],"responses":{"200":{"description":"OIDC Provider was found & you were allowed to delete it."},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Delete OIDC provider","tags":["OIDC Configuration (Infrastructure)"]}}}}
```

## Update OIDC provider

> Change the configuration of an already configured OIDC provider. Only the specified values are changed.

```json
{"openapi":"3.0.1","info":{"title":"fulfillmenttools","version":"VERSIONLESS"},"tags":[{"description":"Endpoints to configure external IDPs.","name":"OIDC Configuration (Infrastructure)"}],"servers":[{"url":"https://{tenant}.api.fulfillmenttools.com","variables":{"tenant":{"default":"your-tenant-name"}}}],"security":[{"BearerToken":[]}],"components":{"securitySchemes":{"BearerToken":{"type":"http","scheme":"bearer","bearerFormat":"JWT"}},"schemas":{"OidcProviderForPatch":{"properties":{"assignedGroups":{"description":"The assigned groups of the OIDC provider","items":{"$ref":"#/components/schemas/AssignedGroup"},"type":"array"},"clientId":{"description":"The client id of the OIDC provider","type":"string"},"clientSecret":{"description":"The client secret of the OIDC provider","type":"string"},"customParameters":{"description":"The custom parameters of the OIDC provider","items":{"$ref":"#/components/schemas/OidcProviderCustomParameter"},"type":"array"},"issuer":{"description":"The issuer of the OIDC provider","type":"string"},"name":{"description":"The name of the OIDC provider","type":"string"},"status":{"description":"The status of the OIDC provider","enum":["ACTIVE","INACTIVE"],"type":"string"},"version":{"description":"The version of the OIDC provider","type":"number"}},"required":["version"],"title":"OidcProviderForPatch","type":"object","description":"OidcProviderForPatch"},"AssignedGroup":{"properties":{"facilityRefs":{"items":{"type":"string"},"type":"array"},"group":{"type":"string"}},"required":["facilityRefs","group"],"title":"AssignedGroup","type":"object","description":"AssignedGroup"},"OidcProviderCustomParameter":{"properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"],"title":"OidcProviderCustomParameter","type":"object","description":"OidcProviderCustomParameter"},"StrippedOidcProvider":{"properties":{"assignedGroups":{"description":"The assigned groups of the OIDC provider","items":{"$ref":"#/components/schemas/AssignedGroup"},"type":"array"},"clientId":{"description":"The client id of the OIDC provider","type":"string"},"customParameters":{"description":"The custom parameters of the OIDC provider","items":{"$ref":"#/components/schemas/OidcProviderCustomParameter"},"type":"array"},"id":{"description":"The id of the OIDC provider","type":"string"},"issuer":{"description":"The issuer of the OIDC provider","type":"string"},"name":{"description":"The name of the OIDC provider","type":"string"},"status":{"description":"The status of the OIDC provider","enum":["ACTIVE","INACTIVE"],"type":"string"},"version":{"description":"The version of the OIDC provider","type":"number"}},"required":["name","status","issuer","clientId","customParameters","assignedGroups","id","version"],"title":"StrippedOidcProvider","type":"object","description":"StrippedOidcProvider"},"ApiError":{"items":{"$ref":"#/components/schemas/ErrorInner"},"type":"array","xml":{"name":"ApiError"},"title":"ApiError","description":"ApiError"},"ErrorInner":{"properties":{"description":{"type":"string"},"requestVersion":{"description":"The version provided within an invalid request.","format":"int64","type":"integer"},"summary":{"type":"string"},"version":{"format":"int64","type":"integer"}},"required":["summary"],"type":"object","title":"ErrorInner","description":"ErrorInner"}}},"paths":{"/api/configurations/oidcproviders/{oidcProviderId}":{"patch":{"deprecated":false,"description":"Change the configuration of an already configured OIDC provider. Only the specified values are changed.","operationId":"patchOidcProvider","parameters":[{"in":"path","name":"oidcProviderId","required":true,"schema":{"type":"string"}}],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/OidcProviderForPatch"}}},"required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StrippedOidcProvider"}}},"description":"Provider was patched successfully"},"401":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user is not allowed to operate against this API instance"},"403":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"Your user, although recognized, is not authorized to use this"},"404":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}},"description":"The requested entity was not found"}},"summary":"Update OIDC provider","tags":["OIDC Configuration (Infrastructure)"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fulfillmenttools.com/documentation/apis/api-reference/oidc-configuration-infrastructure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
