# use.id Documentation > Documentation for use.id ## Guides - [Start here](https://docs.use.id/docs/start-here.md) - [An overview of use.id](https://docs.use.id/docs/what-does-useid-do.md) - [use.id and Solid](https://docs.use.id/docs/useid-and-solid.md) - [Build an app](https://docs.use.id/docs/build-an-app.md) - [Operate your own Solid infrastructure](https://docs.use.id/docs/operate-your-own-solid-infrastructure.md) - [DNS Settings for Custom Domains](https://docs.use.id/docs/configure-the-dns-settings-of-your-domain.md) - [Authentication and DPoP](https://docs.use.id/docs/authenticate-using-dpop.md) - [Access Rules](https://docs.use.id/docs/access-rules.md) - [Patch Requests](https://docs.use.id/docs/patch-requests.md) - [Request ID's and Correlation ID's](https://docs.use.id/docs/logging-request-ids-and-correlation-ids.md) - [Master Subscription Agreement](https://docs.use.id/docs/terms-of-service.md) - [Provisioning Service Use Policy](https://docs.use.id/docs/functional-requirements-for-applications.md) - [Data Processing and Security Terms](https://docs.use.id/docs/data-processing-and-security-terms.md) - [Service Level Agreement](https://docs.use.id/docs/service-level-agreement.md) - [use.id Subprocessors](https://docs.use.id/docs/useid-subprocessors.md) - [Privacy and Security in use.id](https://docs.use.id/docs/privacy-and-security-in-useid.md) - [use.id Data Privacy Inquiries](https://docs.use.id/docs/useid-data-privacy-inquiries.md) - [Contact Support](https://docs.use.id/docs/contact-support.md) ## API Reference - [Check if the service is running and on what version](https://docs.use.id/reference/get_status.md) - [Gets the OpenAPI specification](https://docs.use.id/reference/get_openapi-3.md): The OpenAPI specification describes how distri can be used in a machine-readable format. - [Retrieve health information for service](https://docs.use.id/reference/get-health.md) - [Get the profile document of the server](https://docs.use.id/reference/get-profile.md): Get the WebID profile document of the server. - [Get the WebID of the server](https://docs.use.id/reference/get-root.md): This endpoint redirects you to the WebID profile document of the server. - [Retrieve the public keys of the server](https://docs.use.id/reference/get-jwks.md): Retrieve the public keys of the server. Caution: your application should be able to use **any** of the keys that this endpoint returns. That is, in some cases (e.g. key rotation, the endpoint will return both the future and past keys). - [OIDC Configuration](https://docs.use.id/reference/get-well-known-openid-configuration-1.md): Get the OpenID Configuration of the server. - [put](https://docs.use.id/reference/put-users-url-encoded-webid.md): Create or update a user given his or her URL encoded WebID or URL encoded email. - [Validate an OTP](https://docs.use.id/reference/get-otp-validate.md): Validate a One Time Password (OTP) using a GUI or query parameters. Each validation must contain all of the following * A WebID or email * An OTP that has been requested in the past five minutes - [OAuth Authorization](https://docs.use.id/reference/get_oauth-authorize.md): Start an OAuth authorization code flow by redirecting the user to this endpoint. Compared to a standard OAuth Authorization endpoint, this endpoint accepts several (optional) query parameters to allow for passwordless login, requesting specific locales and asking the user to patch access rules. This endpoint is rate limited. The following are allowed: ### Redirect URI After you have called this endpoint, eventually, the user will be redirected to a URI that you have specified. This URI will look as follows: * In case of a successful procedure: `https://example-app.com/redirect?code=AUTH_CODE_HERE&state=1234zyx` * In case of an error: `https://example-app.com/redirect?error=ERROR_CODE_HERE&error_description=URL_ENCODED_ERROR_DESCRIPTION_HERE`. - [Decide on a patch request](https://docs.use.id/reference/get_patch-decide.md): This endpoint is used to either show the user a screen to register his or her patch request decision or to actually register the decision. This endpoint is only to be used internally. - [Client credentials - Legacy](https://docs.use.id/reference/post_oauth-client.md): The Client Credentials endpoints allows an application to retrieve an access token by presenting your client credentials. - [Send a login email to a user](https://docs.use.id/reference/post_passwordless-email-send.md): Send an email to the end-user so they can login. - [Check if the service is running](https://docs.use.id/reference/get_.md) - [Gets the OpenAPI specification](https://docs.use.id/reference/get_openapi.md): The OpenAPI specification describes how distri can be used in a machine-readable format. - [Retrieve health information for service](https://docs.use.id/reference/get_health.md) - [Create a new piece of data](https://docs.use.id/reference/post_resource.md): Create an invividual resource of a certain type about a certain subject. It is not possible to choose your own resource identifier (e.g. to express semantics about the resource). After creation, the URI of the resource will be provided in the `Location` header of the HTTP response. If you want to add your own metadata to express semantics about the resource, you can do so using the `Labels` header. It is not possible to use this endppoint to add resources for types or subjects that do not exist yet. If you want to create a new type or subject, you can do so via the authorisation agent. - [Get a list of resources you have access to](https://docs.use.id/reference/get-resources.md): As it is not possible to choose your own resource identifier and thus include semantics in the URI of a resource, it is essential that you are able to discover which resources you have access to. Using this endpoint, you can get an list of all the resources you have access to given a Solid token. The metadata that is provided, should enable you to use these resources in your application. Notes: * Currently, it is not yet possible to filter on subject or type. For now, this must be done client-side. * Metadata returned by this endpoint is eventually consistent with the actual data. - [Get a specific piece of data](https://docs.use.id/reference/get-shape-uri-registration-id.md): Get a specific piece of data using its unique identifier. Distri will check the path for a match with the identifier regex that is configured for this tenant, regardless of what is in the rest of the path. For example, if the identifier regex is `^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$` (a regex for a UUIDv4) and the external base URI is `example.com/storage/`, Distri will match the following: * `https://example.com/storage/906f5484-7d1a-4327-9df5-3ba44a50c337` * `https://example.com/storage/sdlkfjqsdmlkf/906f5484-7d1a-4327-9df5-3ba44a50c337` But not the following: * `https://example.com/906f5484-7d1a-4327-9df5-3ba44a50c337` * `https://example.com/blabla/906f5484-7d1a-4327-9df5-3ba44a50c337` - [Get an overview of who has access to what](https://docs.use.id/reference/get-access.md): Given a subject, give an overview of all his/her/its resources and who has access. This endpoint may only be used by authorization agents. If the token contains the authorization agent as the `sub` claim and the authorization agent is whitelisted by the server, you have access to any subject who/that has this authorization agent in his/her/its WebID profile document. If the authorization agent as the `azp` claim and the authorization agent is whitelisted by the server, you have access to the subject listed in the `sub` claim as long as this subject has this authorization agent in his/her/its WebID profile document. - [Add or remove access from a set of resources](https://docs.use.id/reference/patch-access.md) - [put](https://docs.use.id/reference/put-types.md): Create a new type or update an existing type. - [put](https://docs.use.id/reference/put_subjects-url-encoded-uri.md): Create a new subject or update an existing subject. ## Changelog - [2023 03 24 - Version 1.16.0](https://docs.use.id/changelog/2023-03-24-version-1160.md) - [2023 03 24 - Version 1.15.0](https://docs.use.id/changelog/2023-03-24-version-1150.md) - [2023 03 06 - Version 1.14.0](https://docs.use.id/changelog/2023-03-32-version-1140.md) - [2023 03 07 - Version 1.13.0](https://docs.use.id/changelog/2023-03-07-version-1130.md) - [2023 03 02 - Version 1.12.0](https://docs.use.id/changelog/2023-03-02-version-1120.md) - [2023 02 24 - Version 1.11.0](https://docs.use.id/changelog/2023-02-24-version-1110.md) - [2023 02 18 - Version 1.10.0](https://docs.use.id/changelog/2023-02-18-version-1100.md) - [2023 02 16 - Version 1.9.0](https://docs.use.id/changelog/2023-02-16-version-190.md) - [2023 02 06 - Version 1.8.0](https://docs.use.id/changelog/2023-02-06-version-180.md) - [2023 02 02 - Version 1.7.0](https://docs.use.id/changelog/2023-02-02-version-170.md)