# \SsoApi

All URIs are relative to *https://registry.example.com*

Method | HTTP request | Description
------------- | ------------- | -------------
[**exchange_sso_code**](SsoApi.md#exchange_sso_code) | **POST** /api/v1/auth/sso/exchange | Exchange SSO code for tokens
[**ldap_login**](SsoApi.md#ldap_login) | **POST** /api/v1/auth/sso/ldap/{id}/login | Authenticate via LDAP
[**list_public_sso_providers**](SsoApi.md#list_public_sso_providers) | **GET** /api/v1/auth/sso/providers | List available SSO providers
[**oidc_callback**](SsoApi.md#oidc_callback) | **GET** /api/v1/auth/sso/oidc/{id}/callback | OIDC callback
[**oidc_login**](SsoApi.md#oidc_login) | **GET** /api/v1/auth/sso/oidc/{id}/login | Initiate OIDC login
[**saml_acs**](SsoApi.md#saml_acs) | **POST** /api/v1/auth/sso/saml/{id}/acs | SAML Assertion Consumer Service
[**saml_login**](SsoApi.md#saml_login) | **GET** /api/v1/auth/sso/saml/{id}/login | Initiate SAML login



## exchange_sso_code

> models::SsoExchangeResponse exchange_sso_code(exchange_sso_code_request)
Exchange SSO code for tokens

Exchanges a temporary SSO authorization code (received via redirect after OIDC or SAML authentication) for access and refresh tokens.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**exchange_sso_code_request** | [**ExchangeSsoCodeRequest**](ExchangeSsoCodeRequest.md) |  | [required] |

### Return type

[**models::SsoExchangeResponse**](SsoExchangeResponse.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## ldap_login

> models::TokenPair ldap_login(id, ldap_login_request)
Authenticate via LDAP

Authenticates a user against the specified LDAP directory and returns access and refresh tokens.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | LDAP configuration UUID | [required] |
**ldap_login_request** | [**LdapLoginRequest**](LdapLoginRequest.md) |  | [required] |

### Return type

[**models::TokenPair**](TokenPair.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: application/json
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## list_public_sso_providers

> Vec<models::SsoProviderInfo> list_public_sso_providers()
List available SSO providers

Returns all enabled SSO providers available for authentication. This endpoint is public and does not require authentication.

### Parameters

This endpoint does not need any parameter.

### Return type

[**Vec<models::SsoProviderInfo>**](SsoProviderInfo.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## oidc_callback

> models::SsoRedirectResponse oidc_callback(id, code, state)
OIDC callback

Handles the OIDC authorization code callback from the identity provider. Exchanges the code for tokens and redirects the user to the application with a session code.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | OIDC configuration UUID | [required] |
**code** | **String** | Authorization code from the OIDC identity provider | [required] |
**state** | **String** | OAuth state parameter for CSRF protection | [required] |

### Return type

[**models::SsoRedirectResponse**](SsoRedirectResponse.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## oidc_login

> models::SsoRedirectResponse oidc_login(id)
Initiate OIDC login

Initiates the OIDC authorization code flow by redirecting the user to the identity provider's authorization endpoint.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | OIDC configuration UUID | [required] |

### Return type

[**models::SsoRedirectResponse**](SsoRedirectResponse.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## saml_acs

> models::SsoRedirectResponse saml_acs(id, saml_response, relay_state)
SAML Assertion Consumer Service

Handles the SAML response from the identity provider. Validates the assertion, creates or updates the user, and redirects to the application with a session code.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | SAML configuration UUID | [required] |
**saml_response** | **String** | Base64-encoded SAML response from the identity provider | [required] |
**relay_state** | Option<**String**> | Optional relay state for redirect after authentication |  |

### Return type

[**models::SsoRedirectResponse**](SsoRedirectResponse.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: application/x-www-form-urlencoded
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)


## saml_login

> models::SsoRedirectResponse saml_login(id)
Initiate SAML login

Initiates the SAML authentication flow by redirecting the user to the identity provider's SSO endpoint with an authentication request.

### Parameters


Name | Type | Description  | Required | Notes
------------- | ------------- | ------------- | ------------- | -------------
**id** | **uuid::Uuid** | SAML configuration UUID | [required] |

### Return type

[**models::SsoRedirectResponse**](SsoRedirectResponse.md)

### Authorization

No authorization required

### HTTP request headers

- **Content-Type**: Not defined
- **Accept**: application/json

[[Back to top]](#) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to Model list]](../README.md#documentation-for-models) [[Back to README]](../README.md)

