diff --git a/docs/docs/guides/integrate/identity-providers/apple.mdx b/docs/docs/guides/integrate/identity-providers/apple.mdx
new file mode 100644
index 0000000000..cec4a76a70
--- /dev/null
+++ b/docs/docs/guides/integrate/identity-providers/apple.mdx
@@ -0,0 +1,88 @@
+---
+title: Configure Apple as Identity Provider
+sidebar_label: Apple
+---
+
+import GeneralConfigDescription from './_general_config_description.mdx';
+import Intro from './_intro.mdx';
+import CustomLoginPolicy from './_custom_login_policy.mdx';
+import IDPsOverview from './_idps_overview.mdx';
+import Activate from './_activate.mdx';
+import TestSetup from './_test_setup.mdx';
+
+
+
+## Apple Configuration
+
+### Register a new App
+
+1. Go to the Identifiers of your Apple Developer Account
+2. Click the add button "+" on the top left
+3. Choose App IDs and click "continue"
+4. Add a description and a unique identifier
+5. Enable "Sign in with Apple" and click "continue"
+
+### Register a new service
+
+1. Go to the Identifiers of your Apple Developer Account: [https://developer.apple.com/account/resources/identifiers/list](https://developer.apple.com/account/resources/identifiers/list)
+2. Click the add button "+" on the top left
+3. Choose Services IDs and click "continue"
+4. Add a description and a unique identifier and click "register"
+5. Select your registered service from the list and enable sign in with Apple, then click "configure"
+6. Choose the previously created App in the Primary App ID List
+7. Add your custom domain in the domains and subdomains field
+ - Example domain for `https://acme-gzoe4x.zitadel.cloud` would look like this: `acme-gzoe4x.zitadel.cloud`
+8. Add the redirect uri in the Return URLs
+ - {your-domain}/ui/login/login/externalidp/callback/form
+ - Example redirect url for the domain `https://acme-gzoe4x.zitadel.cloud` would look like this: `https://acme-gzoe4x.zitadel.cloud/ui/login/login/externalidp/callback/form`
+9. Save the Client ID and Client secret
+
+
+
+
+### Register a new key
+
+1. Go to the keys list of your Apple Developer Account: [https://developer.apple.com/account/resources/authkeys/list](https://developer.apple.com/account/resources/authkeys/list)
+2. Click the add button "+" on the top left
+3. Give your key a name
+4. Enable "Sign in with Apple" and click configure
+5. Choose your app from the list
+6. Register the key and download it
+
+## ZITADEL Configuration
+
+### Add custom login policy
+
+
+
+### Go to the IdP Providers Overview
+
+
+
+### Create a new Apple Provider
+
+1. Add the Client ID, this is the identifier of the service you created in your Apple Account
+2. Fill the Team ID, you can find it when you login to your Apple Developer account, in your membership
+3. Enter the Key ID and upload the Private Key you previously created
+
+You can configure the following settings if you like, a useful default will be filled if you don't change anything:
+
+**Scopes**: The scopes define which scopes will be sent to the provider, `name` and `email` are prefilled. This information will be taken to create/update the user within ZITADEL.
+
+
+
+
+
+### Activate IdP
+
+
+
+
+
+## Test the setup
+
+
+
+
+
+
diff --git a/docs/sidebars.js b/docs/sidebars.js
index c66e03f346..2bb7e8b074 100644
--- a/docs/sidebars.js
+++ b/docs/sidebars.js
@@ -238,6 +238,7 @@ module.exports = {
"guides/integrate/identity-providers/azure-ad",
"guides/integrate/identity-providers/github",
"guides/integrate/identity-providers/gitlab",
+ "guides/integrate/identity-providers/apple",
"guides/integrate/identity-providers/ldap",
"guides/integrate/identity-providers/openldap",
"guides/integrate/identity-providers/migrate",
diff --git a/docs/static/img/guides/apple_login.png b/docs/static/img/guides/apple_login.png
new file mode 100644
index 0000000000..eae5651a5e
Binary files /dev/null and b/docs/static/img/guides/apple_login.png differ
diff --git a/docs/static/img/guides/apple_service_create.png b/docs/static/img/guides/apple_service_create.png
new file mode 100644
index 0000000000..051e6d22a5
Binary files /dev/null and b/docs/static/img/guides/apple_service_create.png differ
diff --git a/docs/static/img/guides/zitadel_activate_apple.png b/docs/static/img/guides/zitadel_activate_apple.png
new file mode 100644
index 0000000000..253d20c690
Binary files /dev/null and b/docs/static/img/guides/zitadel_activate_apple.png differ
diff --git a/docs/static/img/guides/zitadel_apple_create_provider.png b/docs/static/img/guides/zitadel_apple_create_provider.png
new file mode 100644
index 0000000000..f1c18b6358
Binary files /dev/null and b/docs/static/img/guides/zitadel_apple_create_provider.png differ
diff --git a/docs/static/img/guides/zitadel_identity_provider_overview.png b/docs/static/img/guides/zitadel_identity_provider_overview.png
index 055917aee4..7cb9cfdd72 100644
Binary files a/docs/static/img/guides/zitadel_identity_provider_overview.png and b/docs/static/img/guides/zitadel_identity_provider_overview.png differ
diff --git a/docs/static/img/guides/zitadel_login_apple.png b/docs/static/img/guides/zitadel_login_apple.png
new file mode 100644
index 0000000000..b96dfa47d7
Binary files /dev/null and b/docs/static/img/guides/zitadel_login_apple.png differ