From 81484226f3ac365c99f77a38f040f8217198084a Mon Sep 17 00:00:00 2001 From: "mintlify[bot]" <109931778+mintlify[bot]@users.noreply.github.com> Date: Mon, 7 Apr 2025 03:13:31 +0000 Subject: [PATCH] Documentation edits made through Mintlify web editor --- docs.json | 614 ++++--- es/advanced/dashboard/permissions.mdx | 16 + es/advanced/dashboard/sso.mdx | 104 ++ es/advanced/mcp/generate.mdx | 41 + es/advanced/mcp/quickstart.mdx | 97 ++ es/advanced/rest-api/chat/create-topic.mdx | 3 + .../rest-api/chat/generate-message.mdx | 3 + es/advanced/rest-api/overview.mdx | 36 + es/advanced/rest-api/update/status.mdx | 3 + es/advanced/rest-api/update/trigger.mdx | 3 + es/advanced/subpath/cloudflare.mdx | 75 + es/advanced/subpath/route53-cloudfront.mdx | 136 ++ es/advanced/subpath/vercel.mdx | 30 + es/api-playground/mdx/authentication.mdx | 87 + es/api-playground/mdx/configuration.mdx | 70 + .../openapi/advanced-features.mdx | 139 ++ es/api-playground/openapi/setup.mdx | 147 ++ es/api-playground/openapi/writing-openapi.mdx | 33 + es/api-playground/overview.mdx | 13 + es/api-playground/troubleshooting.mdx | 72 + es/changelog/overview.mdx | 393 +++++ es/code.mdx | 39 + es/content/components/accordion-groups.mdx | 58 + es/content/components/accordions.mdx | 42 + es/content/components/callouts.mdx | 45 + es/content/components/card-groups.mdx | 50 + es/content/components/cards.mdx | 71 + es/content/components/code-groups.mdx | 51 + es/content/components/code.mdx | 199 +++ es/content/components/expandables.mdx | 43 + es/content/components/frames.mdx | 39 + es/content/components/icons.mdx | 42 + es/content/components/mermaid-diagrams.mdx | 71 + es/content/components/params.mdx | 69 + es/content/components/responses.mdx | 37 + es/content/components/steps.mdx | 73 + es/content/components/sticky-examples.mdx | 44 + es/content/components/tabs.mdx | 43 + es/content/components/tooltips.mdx | 13 + es/content/components/update.mdx | 57 + es/development.mdx | 120 ++ es/guides/auth0.mdx | 63 + es/image-embeds.mdx | 130 ++ es/integrations/analytics/amplitude.mdx | 23 + es/integrations/analytics/clearbit.mdx | 23 + es/integrations/analytics/fathom.mdx | 25 + .../analytics/google-analytics.mdx | 43 + .../analytics/google-tag-manager.mdx | 25 + es/integrations/analytics/heap.mdx | 23 + es/integrations/analytics/hotjar.mdx | 14 + es/integrations/analytics/koala.mdx | 23 + es/integrations/analytics/logrocket.mdx | 13 + es/integrations/analytics/mixpanel.mdx | 13 + es/integrations/analytics/overview.mdx | 612 +++++++ es/integrations/analytics/pirsch.mdx | 25 + es/integrations/analytics/plausible.mdx | 28 + es/integrations/analytics/posthog.mdx | 36 + es/integrations/analytics/segment.mdx | 23 + es/integrations/privacy/osano.mdx | 25 + es/integrations/privacy/overview.mdx | 45 + es/integrations/sdks/speakeasy.mdx | 96 ++ es/integrations/sdks/stainless.mdx | 51 + es/integrations/support/front.mdx | 19 + es/integrations/support/intercom.mdx | 23 + es/integrations/support/overview.mdx | 43 + es/list-table.mdx | 85 + es/migration.mdx | 150 ++ es/navigation/divisions.mdx | 198 +++ es/navigation/localization.mdx | 59 + es/navigation/overview.mdx | 26 + es/navigation/pages.mdx | 51 + es/navigation/versions.mdx | 63 + es/page.mdx | 158 ++ es/quickstart.mdx | 155 ++ es/reusable-snippets.mdx | 143 ++ .../choosing-a-handshake.mdx | 86 + .../authentication-setup/jwt.mdx | 115 ++ .../authentication-setup/mintlify.mdx | 40 + .../authentication-setup/oauth.mdx | 51 + .../authentication-setup/password.mdx | 45 + .../authentication-vs-personalization.mdx | 33 + .../authentication.mdx | 25 + .../partial-authentication.mdx | 24 + .../choosing-a-handshake.mdx | 86 + .../personalization-setup/jwt.mdx | 78 + .../personalization-setup/oauth.mdx | 48 + .../personalization-setup/shared-session.mdx | 57 + .../personalization.mdx | 77 + .../sending-data.mdx | 39 + es/settings/broken-links.mdx | 43 + es/settings/ci.mdx | 111 ++ es/settings/custom-domain.mdx | 45 + es/settings/custom-scripts.mdx | 62 + es/settings/github.mdx | 54 + es/settings/gitlab.mdx | 103 ++ es/settings/global.mdx | 1503 +++++++++++++++++ es/settings/llms.mdx | 19 + es/settings/navigation.mdx | 298 ++++ es/settings/preview-deployments.mdx | 25 + es/settings/seo.mdx | 83 + es/snippets/config-upgrade.mdx | 19 + es/snippets/custom-subpath-gating.mdx | 8 + es/snippets/theme-card.mdx | 22 + es/table.mdx | 30 + es/text.mdx | 104 ++ es/themes.mdx | 37 + es/web-editor.mdx | 298 ++++ 107 files changed, 9300 insertions(+), 221 deletions(-) create mode 100644 es/advanced/dashboard/permissions.mdx create mode 100644 es/advanced/dashboard/sso.mdx create mode 100644 es/advanced/mcp/generate.mdx create mode 100644 es/advanced/mcp/quickstart.mdx create mode 100644 es/advanced/rest-api/chat/create-topic.mdx create mode 100644 es/advanced/rest-api/chat/generate-message.mdx create mode 100644 es/advanced/rest-api/overview.mdx create mode 100644 es/advanced/rest-api/update/status.mdx create mode 100644 es/advanced/rest-api/update/trigger.mdx create mode 100644 es/advanced/subpath/cloudflare.mdx create mode 100644 es/advanced/subpath/route53-cloudfront.mdx create mode 100644 es/advanced/subpath/vercel.mdx create mode 100644 es/api-playground/mdx/authentication.mdx create mode 100644 es/api-playground/mdx/configuration.mdx create mode 100644 es/api-playground/openapi/advanced-features.mdx create mode 100644 es/api-playground/openapi/setup.mdx create mode 100644 es/api-playground/openapi/writing-openapi.mdx create mode 100644 es/api-playground/overview.mdx create mode 100644 es/api-playground/troubleshooting.mdx create mode 100644 es/changelog/overview.mdx create mode 100644 es/code.mdx create mode 100644 es/content/components/accordion-groups.mdx create mode 100644 es/content/components/accordions.mdx create mode 100644 es/content/components/callouts.mdx create mode 100644 es/content/components/card-groups.mdx create mode 100644 es/content/components/cards.mdx create mode 100644 es/content/components/code-groups.mdx create mode 100644 es/content/components/code.mdx create mode 100644 es/content/components/expandables.mdx create mode 100644 es/content/components/frames.mdx create mode 100644 es/content/components/icons.mdx create mode 100644 es/content/components/mermaid-diagrams.mdx create mode 100644 es/content/components/params.mdx create mode 100644 es/content/components/responses.mdx create mode 100644 es/content/components/steps.mdx create mode 100644 es/content/components/sticky-examples.mdx create mode 100644 es/content/components/tabs.mdx create mode 100644 es/content/components/tooltips.mdx create mode 100644 es/content/components/update.mdx create mode 100644 es/development.mdx create mode 100644 es/guides/auth0.mdx create mode 100644 es/image-embeds.mdx create mode 100644 es/integrations/analytics/amplitude.mdx create mode 100644 es/integrations/analytics/clearbit.mdx create mode 100644 es/integrations/analytics/fathom.mdx create mode 100644 es/integrations/analytics/google-analytics.mdx create mode 100644 es/integrations/analytics/google-tag-manager.mdx create mode 100644 es/integrations/analytics/heap.mdx create mode 100644 es/integrations/analytics/hotjar.mdx create mode 100644 es/integrations/analytics/koala.mdx create mode 100644 es/integrations/analytics/logrocket.mdx create mode 100644 es/integrations/analytics/mixpanel.mdx create mode 100644 es/integrations/analytics/overview.mdx create mode 100644 es/integrations/analytics/pirsch.mdx create mode 100644 es/integrations/analytics/plausible.mdx create mode 100644 es/integrations/analytics/posthog.mdx create mode 100644 es/integrations/analytics/segment.mdx create mode 100644 es/integrations/privacy/osano.mdx create mode 100644 es/integrations/privacy/overview.mdx create mode 100644 es/integrations/sdks/speakeasy.mdx create mode 100644 es/integrations/sdks/stainless.mdx create mode 100644 es/integrations/support/front.mdx create mode 100644 es/integrations/support/intercom.mdx create mode 100644 es/integrations/support/overview.mdx create mode 100644 es/list-table.mdx create mode 100644 es/migration.mdx create mode 100644 es/navigation/divisions.mdx create mode 100644 es/navigation/localization.mdx create mode 100644 es/navigation/overview.mdx create mode 100644 es/navigation/pages.mdx create mode 100644 es/navigation/versions.mdx create mode 100644 es/page.mdx create mode 100644 es/quickstart.mdx create mode 100644 es/reusable-snippets.mdx create mode 100644 es/settings/authentication-personalization/authentication-setup/choosing-a-handshake.mdx create mode 100644 es/settings/authentication-personalization/authentication-setup/jwt.mdx create mode 100644 es/settings/authentication-personalization/authentication-setup/mintlify.mdx create mode 100644 es/settings/authentication-personalization/authentication-setup/oauth.mdx create mode 100644 es/settings/authentication-personalization/authentication-setup/password.mdx create mode 100644 es/settings/authentication-personalization/authentication-vs-personalization.mdx create mode 100644 es/settings/authentication-personalization/authentication.mdx create mode 100644 es/settings/authentication-personalization/partial-authentication.mdx create mode 100644 es/settings/authentication-personalization/personalization-setup/choosing-a-handshake.mdx create mode 100644 es/settings/authentication-personalization/personalization-setup/jwt.mdx create mode 100644 es/settings/authentication-personalization/personalization-setup/oauth.mdx create mode 100644 es/settings/authentication-personalization/personalization-setup/shared-session.mdx create mode 100644 es/settings/authentication-personalization/personalization.mdx create mode 100644 es/settings/authentication-personalization/sending-data.mdx create mode 100644 es/settings/broken-links.mdx create mode 100644 es/settings/ci.mdx create mode 100644 es/settings/custom-domain.mdx create mode 100644 es/settings/custom-scripts.mdx create mode 100644 es/settings/github.mdx create mode 100644 es/settings/gitlab.mdx create mode 100644 es/settings/global.mdx create mode 100644 es/settings/llms.mdx create mode 100644 es/settings/navigation.mdx create mode 100644 es/settings/preview-deployments.mdx create mode 100644 es/settings/seo.mdx create mode 100644 es/snippets/config-upgrade.mdx create mode 100644 es/snippets/custom-subpath-gating.mdx create mode 100644 es/snippets/theme-card.mdx create mode 100644 es/table.mdx create mode 100644 es/text.mdx create mode 100644 es/themes.mdx create mode 100644 es/web-editor.mdx diff --git a/docs.json b/docs.json index 44a64f824..55b4111e5 100644 --- a/docs.json +++ b/docs.json @@ -1,296 +1,463 @@ { - "$schema": "https://mintlify.com/docs.json", "theme": "maple", + "$schema": "https://mintlify.com/docs.json", "name": "Mintlify", "colors": { "primary": "#0D9373", "light": "#55D799", "dark": "#0D9373" }, + "logo": { + "light": "/logo/light.svg", + "dark": "/logo/dark.svg", + "href": "https://mintlify.com" + }, "favicon": "/favicon.svg", + "api": { + "mdx": { + "auth": { + "method": "bearer" + } + } + }, + "navbar": { + "links": [ + { + "label": "Community", + "href": "https://mintlify.com/community" + } + ], + "primary": { + "type": "button", + "label": "Get Started", + "href": "https://mintlify.com/start" + } + }, "navigation": { - "dropdowns": [ + "languages": [ { - "dropdown": "Getting Started", - "icon": "book", - "description": "Set up your documentation", - "groups": [ + "language": "en", + "dropdowns": [ { - "group": "Getting Started", - "pages": [ - "quickstart", - { - "group": "Editing", - "icon": "pen-paintbrush", - "pages": ["development", "web-editor"] - }, - "settings/global", + "dropdown": "Getting Started", + "icon": "book", + "description": "Set up your documentation", + "groups": [ { - "group": "Navigation", - "icon": "map", + "group": "Getting Started", "pages": [ - "navigation/overview", - "navigation/pages", - "navigation/divisions", - "navigation/versions", - "navigation/localization" - ] - }, - "themes", - "migration" - ] - }, - { - "group": "Writing Content", - "pages": [ - "page", - "text", - "image-embeds", - "list-table", - "code", - "reusable-snippets" - ] - }, - { - "group": "API References", - "pages": [ - "api-playground/overview", - { - "group": "OpenAPI", - "icon": "brackets-curly", - "pages": [ - "api-playground/openapi/setup", - "api-playground/openapi/writing-openapi", - "api-playground/openapi/advanced-features" - ] - }, - { - "group": "MDX", - "icon": "markdown", - "pages": [ - "api-playground/mdx/configuration", - "api-playground/mdx/authentication" + "quickstart", + { + "group": "Editing", + "icon": "pen-paintbrush", + "pages": [ + "development", + "web-editor" + ] + }, + "settings/global", + { + "group": "Navigation", + "icon": "map", + "pages": [ + "navigation/overview", + "navigation/pages", + "navigation/divisions", + "navigation/versions", + "navigation/localization" + ] + }, + "themes", + "migration" ] }, - "api-playground/troubleshooting" - ] - }, - { - "group": "Configurations", - "pages": [ - "settings/custom-domain", - "settings/seo", - "settings/llms", - "settings/custom-scripts", - "settings/broken-links", - "settings/github", - "settings/gitlab", - "settings/ci", - "settings/preview-deployments" - ] - }, - { - "group": "Advanced", - "pages": [ { - "group": "Custom Subdirectory", - "icon": "folder", + "group": "Writing Content", "pages": [ - "advanced/subpath/cloudflare", - "advanced/subpath/route53-cloudfront", - "advanced/subpath/vercel" + "page", + "text", + "image-embeds", + "list-table", + "code", + "reusable-snippets" ] }, { - "group": "Auth & Personalization", - "icon": "user-lock", + "group": "API References", "pages": [ - "settings/authentication-personalization/authentication", - "settings/authentication-personalization/partial-authentication", - "settings/authentication-personalization/personalization", - "settings/authentication-personalization/authentication-vs-personalization", + "api-playground/overview", { - "group": "Authentication Setup", + "group": "OpenAPI", + "icon": "brackets-curly", "pages": [ - "settings/authentication-personalization/authentication-setup/choosing-a-handshake", - "settings/authentication-personalization/authentication-setup/password", - "settings/authentication-personalization/authentication-setup/jwt", - "settings/authentication-personalization/authentication-setup/oauth", - "settings/authentication-personalization/authentication-setup/mintlify" + "api-playground/openapi/setup", + "api-playground/openapi/writing-openapi", + "api-playground/openapi/advanced-features" ] }, { - "group": "Personalization Setup", + "group": "MDX", + "icon": "markdown", "pages": [ - "settings/authentication-personalization/personalization-setup/choosing-a-handshake", - "settings/authentication-personalization/personalization-setup/shared-session", - "settings/authentication-personalization/personalization-setup/jwt", - "settings/authentication-personalization/personalization-setup/oauth" + "api-playground/mdx/configuration", + "api-playground/mdx/authentication" ] }, - "settings/authentication-personalization/sending-data" + "api-playground/troubleshooting" ] }, { - "group": "Dashboard Access", - "icon": "house-lock", + "group": "Configurations", "pages": [ - "advanced/dashboard/sso", - "advanced/dashboard/permissions" + "settings/custom-domain", + "settings/seo", + "settings/llms", + "settings/custom-scripts", + "settings/broken-links", + "settings/github", + "settings/gitlab", + "settings/ci", + "settings/preview-deployments" ] }, { - "group": "Model Context Protocol", - "icon": "server", - "pages": ["advanced/mcp/quickstart", "advanced/mcp/generate"] - }, - { - "group": "REST API", - "icon": "brackets-curly", + "group": "Advanced", "pages": [ - "advanced/rest-api/overview", { - "group": "Updates", + "group": "Custom Subdirectory", + "icon": "folder", + "pages": [ + "advanced/subpath/cloudflare", + "advanced/subpath/route53-cloudfront", + "advanced/subpath/vercel" + ] + }, + { + "group": "Auth & Personalization", + "icon": "user-lock", + "pages": [ + "settings/authentication-personalization/authentication", + "settings/authentication-personalization/partial-authentication", + "settings/authentication-personalization/personalization", + "settings/authentication-personalization/authentication-vs-personalization", + { + "group": "Authentication Setup", + "pages": [ + "settings/authentication-personalization/authentication-setup/choosing-a-handshake", + "settings/authentication-personalization/authentication-setup/password", + "settings/authentication-personalization/authentication-setup/jwt", + "settings/authentication-personalization/authentication-setup/oauth", + "settings/authentication-personalization/authentication-setup/mintlify" + ] + }, + { + "group": "Personalization Setup", + "pages": [ + "settings/authentication-personalization/personalization-setup/choosing-a-handshake", + "settings/authentication-personalization/personalization-setup/shared-session", + "settings/authentication-personalization/personalization-setup/jwt", + "settings/authentication-personalization/personalization-setup/oauth" + ] + }, + "settings/authentication-personalization/sending-data" + ] + }, + { + "group": "Dashboard Access", + "icon": "house-lock", + "pages": [ + "advanced/dashboard/sso", + "advanced/dashboard/permissions" + ] + }, + { + "group": "Model Context Protocol", + "icon": "server", "pages": [ - "advanced/rest-api/update/trigger", - "advanced/rest-api/update/status" + "advanced/mcp/quickstart", + "advanced/mcp/generate" ] }, { - "group": "Chat API", + "group": "REST API", + "icon": "brackets-curly", "pages": [ - "advanced/rest-api/chat/create-topic", - "advanced/rest-api/chat/generate-message" + "advanced/rest-api/overview", + { + "group": "Updates", + "pages": [ + "advanced/rest-api/update/trigger", + "advanced/rest-api/update/status" + ] + }, + { + "group": "Chat API", + "pages": [ + "advanced/rest-api/chat/create-topic", + "advanced/rest-api/chat/generate-message" + ] + } ] } ] } ] - } - ] - }, - { - "dropdown": "Components", - "icon": "block-brick", - "description": "Component library", - "groups": [ + }, { - "group": "Components", - "pages": [ - "content/components/accordions", - "content/components/accordion-groups", - "content/components/callouts", - "content/components/cards", - "content/components/card-groups", - "content/components/code", - "content/components/code-groups", - "content/components/frames", - "content/components/icons", - "content/components/mermaid-diagrams", - "content/components/steps", - "content/components/tabs", - "content/components/tooltips", - "content/components/update" + "dropdown": "Components", + "icon": "block-brick", + "description": "Component library", + "groups": [ + { + "group": "Components", + "pages": [ + "content/components/accordions", + "content/components/accordion-groups", + "content/components/callouts", + "content/components/cards", + "content/components/card-groups", + "content/components/code", + "content/components/code-groups", + "content/components/frames", + "content/components/icons", + "content/components/mermaid-diagrams", + "content/components/steps", + "content/components/tabs", + "content/components/tooltips", + "content/components/update" + ] + }, + { + "group": "API Components", + "pages": [ + "content/components/params", + "content/components/responses", + "content/components/expandables", + "content/components/sticky-examples" + ] + } + ] + }, + { + "dropdown": "Integrations", + "icon": "plug", + "description": "Connect your providers", + "groups": [ + { + "group": "Analytics", + "pages": [ + "integrations/analytics/overview", + "integrations/analytics/amplitude", + "integrations/analytics/clearbit", + "integrations/analytics/fathom", + "integrations/analytics/google-analytics", + "integrations/analytics/google-tag-manager", + "integrations/analytics/heap", + "integrations/analytics/hotjar", + "integrations/analytics/koala", + "integrations/analytics/logrocket", + "integrations/analytics/mixpanel", + "integrations/analytics/pirsch", + "integrations/analytics/plausible", + "integrations/analytics/posthog", + "integrations/analytics/segment" + ] + }, + { + "group": "SDKs", + "pages": [ + "integrations/sdks/speakeasy", + "integrations/sdks/stainless" + ] + }, + { + "group": "Support", + "pages": [ + "integrations/support/overview", + "integrations/support/intercom", + "integrations/support/front" + ] + }, + { + "group": "Privacy", + "pages": [ + "integrations/privacy/overview", + "integrations/privacy/osano" + ] + } ] }, { - "group": "API Components", - "pages": [ - "content/components/params", - "content/components/responses", - "content/components/expandables", - "content/components/sticky-examples" + "dropdown": "Changelog", + "icon": "list-timeline", + "description": "Updates and changes", + "groups": [ + { + "group": "Changelog", + "pages": [ + "changelog/overview" + ] + } ] } ] }, { - "dropdown": "Integrations", - "icon": "plug", - "description": "Connect your providers", - "groups": [ + "language": "es", + "dropdowns": [ { - "group": "Analytics", - "pages": [ - "integrations/analytics/overview", - "integrations/analytics/amplitude", - "integrations/analytics/clearbit", - "integrations/analytics/fathom", - "integrations/analytics/google-analytics", - "integrations/analytics/google-tag-manager", - "integrations/analytics/heap", - "integrations/analytics/hotjar", - "integrations/analytics/koala", - "integrations/analytics/logrocket", - "integrations/analytics/mixpanel", - "integrations/analytics/pirsch", - "integrations/analytics/plausible", - "integrations/analytics/posthog", - "integrations/analytics/segment" + "dropdown": "Getting Started", + "icon": "book", + "description": "Set up your documentation", + "groups": [ + { + "group": "Getting Started", + "pages": [ + "es/quickstart", + "es/settings/global", + "es/themes", + "es/migration" + ] + }, + { + "group": "Writing Content", + "pages": [ + "es/page", + "es/text", + "es/image-embeds", + "es/list-table", + "es/code", + "es/reusable-snippets" + ] + }, + { + "group": "API References", + "pages": [ + "es/api-playground/overview", + "es/api-playground/troubleshooting" + ] + }, + { + "group": "Configurations", + "pages": [ + "es/settings/custom-domain", + "es/settings/seo", + "es/settings/llms", + "es/settings/custom-scripts", + "es/settings/broken-links", + "es/settings/github", + "es/settings/gitlab", + "es/settings/ci", + "es/settings/preview-deployments" + ] + }, + { + "group": "Advanced", + "pages": [] + } ] }, { - "group": "SDKs", - "pages": [ - "integrations/sdks/speakeasy", - "integrations/sdks/stainless" + "dropdown": "Components", + "icon": "block-brick", + "description": "Component library", + "groups": [ + { + "group": "Components", + "pages": [ + "es/content/components/accordions", + "es/content/components/accordion-groups", + "es/content/components/callouts", + "es/content/components/cards", + "es/content/components/card-groups", + "es/content/components/code", + "es/content/components/code-groups", + "es/content/components/frames", + "es/content/components/icons", + "es/content/components/mermaid-diagrams", + "es/content/components/steps", + "es/content/components/tabs", + "es/content/components/tooltips", + "es/content/components/update" + ] + }, + { + "group": "API Components", + "pages": [ + "es/content/components/params", + "es/content/components/responses", + "es/content/components/expandables", + "es/content/components/sticky-examples" + ] + } ] }, { - "group": "Support", - "pages": [ - "integrations/support/overview", - "integrations/support/intercom", - "integrations/support/front" + "dropdown": "Integrations", + "icon": "plug", + "description": "Connect your providers", + "groups": [ + { + "group": "Analytics", + "pages": [ + "es/integrations/analytics/overview", + "es/integrations/analytics/amplitude", + "es/integrations/analytics/clearbit", + "es/integrations/analytics/fathom", + "es/integrations/analytics/google-analytics", + "es/integrations/analytics/google-tag-manager", + "es/integrations/analytics/heap", + "es/integrations/analytics/hotjar", + "es/integrations/analytics/koala", + "es/integrations/analytics/logrocket", + "es/integrations/analytics/mixpanel", + "es/integrations/analytics/pirsch", + "es/integrations/analytics/plausible", + "es/integrations/analytics/posthog", + "es/integrations/analytics/segment" + ] + }, + { + "group": "SDKs", + "pages": [ + "es/integrations/sdks/speakeasy", + "es/integrations/sdks/stainless" + ] + }, + { + "group": "Support", + "pages": [ + "es/integrations/support/overview", + "es/integrations/support/intercom", + "es/integrations/support/front" + ] + }, + { + "group": "Privacy", + "pages": [ + "es/integrations/privacy/overview", + "es/integrations/privacy/osano" + ] + } ] }, { - "group": "Privacy", - "pages": [ - "integrations/privacy/overview", - "integrations/privacy/osano" + "dropdown": "Changelog", + "icon": "list-timeline", + "description": "Updates and changes", + "groups": [ + { + "group": "Changelog", + "pages": [ + "es/changelog/overview" + ] + } ] } ] - }, - { - "dropdown": "Changelog", - "icon": "list-timeline", - "description": "Updates and changes", - "groups": [ - { - "group": "Changelog", - "pages": ["changelog/overview"] - } - ] } ] }, - "logo": { - "light": "/logo/light.svg", - "dark": "/logo/dark.svg", - "href": "https://mintlify.com" - }, - "api": { - "mdx": { - "auth": { - "method": "bearer" - } - } - }, - "navbar": { - "links": [ - { - "label": "Community", - "href": "https://mintlify.com/community" - } - ], - "primary": { - "type": "button", - "label": "Get Started", - "href": "https://mintlify.com/start" - } - }, "footer": { "socials": { "x": "https://x.com/mintlify", @@ -373,6 +540,11 @@ } }, "contextual": { - "options": ["copy", "view", "chatgpt", "claude"] + "options": [ + "copy", + "view", + "chatgpt", + "claude" + ] } -} +} \ No newline at end of file diff --git a/es/advanced/dashboard/permissions.mdx b/es/advanced/dashboard/permissions.mdx new file mode 100644 index 000000000..7c6ecda1e --- /dev/null +++ b/es/advanced/dashboard/permissions.mdx @@ -0,0 +1,16 @@ +--- +title: Editor Permissions +description: Permita que más miembros de su equipo actualicen sus documentos +--- + +El miembro del equipo que creó sus documentos iniciales tendrá acceso de actualización a sus documentos, siempre que envíe a su repositorio de documentación con la misma cuenta de GitHub que se usó al registrarse en Mintlify. + +Si otro editor intenta actualizar los documentos mientras está en el plan gratuito, verá una advertencia en la verificación de su commit de git. + + + + + +En los detalles de la advertencia de verificación de git, encontrará el enlace para actualizar su plan. También puede actualizar su plan en el [panel de control](https://dashboard.mintlify.com) para permitir que editores ilimitados actualicen su documentación. Una vez que actualice su plan, active una actualización manual o envíe otro cambio para implementar sus actualizaciones. + +Aprenda más sobre nuestros precios [aquí](https://mintlify.com/pricing). diff --git a/es/advanced/dashboard/sso.mdx b/es/advanced/dashboard/sso.mdx new file mode 100644 index 000000000..58ffe30f5 --- /dev/null +++ b/es/advanced/dashboard/sso.mdx @@ -0,0 +1,104 @@ +--- +title: Single Sign-On (SSO) +description: Personaliza cómo tu equipo puede iniciar sesión en tu panel de administración +--- + +Utiliza el inicio de sesión único en tu panel mediante SAML y OIDC. Si utilizas Okta o Google Workspace, tenemos documentación específica para configurar SSO, pero si utilizas otro proveedor, ¡contáctanos! + + + La funcionalidad SSO está disponible en nuestro plan Enterprise.[Contáctanos](https://mintlify.com/enterprise) para saber más! + + +## Okta + + + + + + En `Applications`, haz clic para crear una nueva integración de aplicación usando SAML 2.0. + + + + Ingresa lo siguiente: + + * URL de inicio de sesión único (proporcionada por Mintlify) + * URI de audiencia (proporcionada por Mintlify) + * Formato de ID de nombre: `EmailAddress` + * Declaraciones de atributos: + | Nombre | Formato de nombre | Valor | + | ----------- | ----------------- | ---------------- | + | `firstName` | Básico | `user.firstName` | + | `lastName` | Básico | `user.lastName` | + + + + Una vez que la aplicación esté configurada, navega a la pestaña de inicio de sesión y envíanos la URL de metadatos. + Habilitaremos la conexión desde nuestro lado usando esta información. + + + + + + + + En `Applications`, haz clic para crear una nueva integración de aplicación usando OIDC. + Debes elegir el tipo de aplicación `Web Application`. + + + + Selecciona el tipo de concesión de código de autorización e ingresa la URI de redirección proporcionada por Mintlify. + + + + Una vez que la aplicación esté configurada, navega a la pestaña General y localiza el ID de cliente y el secreto del cliente. + Por favor, proporciónanos estos datos de manera segura, junto con la URL de tu instancia de Okta (por ejemplo, `.okta.com`). Puedes enviar estos datos a través de un servicio como 1Password o SendSafely. + + + + + +## Google Workspace + + + + + + En `Web and mobile apps`, selecciona `Add custom SAML app` del menú desplegable `Add app`. + + + ![](/images/gsuite-add-custom-saml-app.png) + + + + + Copia la URL de SSO proporcionada, el ID de entidad y el certificado x509 y envíalos al equipo de Mintlify. + + + ![](/images/gsuite-saml-metadata.png) + + + + + En la página de detalles del proveedor de servicios, ingresa lo siguiente: + + * URL de ACS (proporcionada por Mintlify) + * ID de entidad (proporcionado por Mintlify) + * Formato de ID de nombre: `EMAIL` + * ID de nombre: `Basic Information > Primary email` + + + ![](/images/gsuite-sp-details.png) + + + En la siguiente página, ingresa las siguientes declaraciones de atributos: + + | Atributo del Directorio de Google | Atributo de la Aplicación | + | --------------------------------- | ------------------------- | + | `First name` | `firstName` | + | `Last name` | `lastName` | + + Una vez que este paso esté completo y los usuarios estén asignados a la aplicación, avísanos y habilitaremos SSO para tu cuenta! + + + + diff --git a/es/advanced/mcp/generate.mdx b/es/advanced/mcp/generate.mdx new file mode 100644 index 000000000..36d64e8b7 --- /dev/null +++ b/es/advanced/mcp/generate.mdx @@ -0,0 +1,41 @@ +--- +title: Generador MCP +description: Aprende cómo configurar tu propio Servidor MCP +--- + + + Esta página está dedicada a configurar tu propio Servidor MCP. Si estás buscando información sobre cómo usar el Servidor MCP de Mintlify, consulta la[Instalación y uso del Servidor MCP de Mintlify](/advanced/mcp/quickstart) página. + + +## Comenzar + +Ejecuta `npm i @mintlify/mcp` para instalar el `@mintlify/mcp` CLI. + +En el [dashboard](https://dashboard.mintlify.com/products/mcp) ve a `MCP Server`, en esta página alterna para ver tu comando de instalación único. Este es el comando para instalar tu Servidor MCP con el `@mintlify/mcp` CLI. + + + Asegúrate de activar el acceso OpenAPI para permitir que el servidor MCP acceda a **todos** + los endpoints en tu especificación OpenAPI. + + +## Inicie el servidor MCP localmente + + + + Ejecute el siguiente comando para instalar el servidor: + + ```bash + npx @mintlify/mcp add [your subdomain] + ``` + + + + Si su API requiere un token de autenticación, indique a su cliente final que lo + obtenga y lo aplique cuando reciba esta respuesta:`> What is the Authorization + (basic token)?` De lo contrario, puede omitir este paso. + + + + Ahora puede ejecutar:`bash npm --prefix ~/.mcp/[your subdomain] start ` + + diff --git a/es/advanced/mcp/quickstart.mdx b/es/advanced/mcp/quickstart.mdx new file mode 100644 index 000000000..dd5f3a9b3 --- /dev/null +++ b/es/advanced/mcp/quickstart.mdx @@ -0,0 +1,97 @@ +--- +title: Quickstart +description: Generar un servidor MCP para ayudar a conectar tu producto con LLMs +--- + +## Introducción + +El Generador MCP es una herramienta CLI que genera un servidor MCP basado en la documentación de tu empresa y la especificación OpenAPI si está disponible. Toma tu documentación y una especificación OpenAPI y genera un servidor MCP que puede ser usado con cualquier cliente MCP. El Generador MCP se entrega a través del[paquete npm](https://www.npmjs.com/package/mcp) y genera un servidor MCP que puede ser usado con cualquier cliente MCP. + +Mintlify te permite crear un servidor MCP que permite a las herramientas de IA interactuar con tus documentos en estos escenarios clave: + +1. **Preguntas y Respuestas sobre Docs**, similar a nuestro Chat de IA. Esto se habilita automáticamente para tus documentos, no se requiere configuración. +2. **Consultas de API en tiempo real**, si tienes una especificación OpenAPI, dirígete al`Mintlify Dashboard > Products > MCP Server` y activa el interruptor para habilitar tu especificación OpenAPI. + + + Al habilitar el interruptor OpenAPI, estás permitiendo que el servidor MCP acceda a + **todos** los endpoints en tu especificación OpenAPI. + + +## Instalar el servidor MCP + + + Esta página está dedicada al Servidor MCP de Mintlify. Si estás buscando información sobre cómo generar tu MCP, por favor consulta la página del[Generador MCP](/advanced/mcp/generate). + + +## Ejemplo de instalación con el servidor MCP de Mintlify + +Para usar el servidor MCP de Mintlify necesitarás una[clave API](https://mintlify.com/docs/advanced/rest-api/overview#authentication) de tu cuenta de Mintlify. Si no tienes una, navega a`Settings > API Keys > Chat API Key` y crea una nueva clave. + +## Iniciar el servidor MCP localmente + + + + Ejecuta el siguiente comando para instalar el servidor: + + ```bash + npx @mintlify/mcp add mintlify + ``` + + + + La siguiente respuesta se mostrará después de ejecutar el comando anterior: + + ``` + > What is the Authorization (basic token)? + ``` + + Usando tu clave de chat API, copia el token de autenticación y pégalo en la CLI. + + + + Ahora puedes ejecutar: + + ```bash + npm --prefix ~/.mcp/mintlify start + ``` + + + +## Usa tu servidor con Claude + + + Descarga la[Aplicación de Escritorio de Claude](https://claude.ai/download) + + +Una vez que tengas instalada la Aplicación de Escritorio de Claude, sigue estos pasos: + + + + + + Agrega lo siguiente al`claude_desktop_config.json`: + + ```json + { + "mcpServers": { + "mintlify": { + "command": "npm", + "args": [ + "--prefix", + "~/.mcp/mintlify", + "start" + ] + } + } + } + ``` + + + + Si haces clic en él, deberías ver las Herramientas MCP disponibles en tu servidor. + + + ![Claude MCP](/images/mcp-with-claude.png) + + + diff --git a/es/advanced/rest-api/chat/create-topic.mdx b/es/advanced/rest-api/chat/create-topic.mdx new file mode 100644 index 000000000..dc00663e3 --- /dev/null +++ b/es/advanced/rest-api/chat/create-topic.mdx @@ -0,0 +1,3 @@ +--- +openapi: POST /chat/topic +--- diff --git a/es/advanced/rest-api/chat/generate-message.mdx b/es/advanced/rest-api/chat/generate-message.mdx new file mode 100644 index 000000000..b1cdbbb37 --- /dev/null +++ b/es/advanced/rest-api/chat/generate-message.mdx @@ -0,0 +1,3 @@ +--- +openapi: POST /chat/message +--- diff --git a/es/advanced/rest-api/overview.mdx b/es/advanced/rest-api/overview.mdx new file mode 100644 index 000000000..ce35a1a8f --- /dev/null +++ b/es/advanced/rest-api/overview.mdx @@ -0,0 +1,36 @@ +--- +title: Descripción General +--- + +## Activar Actualizaciones + +Puedes aprovechar la API REST para activar programáticamente una actualización cuando lo desees. + + + Si bien el caso de uso principal será activar actualizaciones, iremos agregando más y más funcionalidades a la API con el tiempo. Házanos saber qué más quieres ver en + [nuestra comunidad](https://mintlify.com/community)! + + +## Autenticación + +Puedes generar una clave API a través de[el dashboard](https://dashboard.mintlify.com/settings/organization/api-keys). La clave API está asociada con toda la organización y puede usarse en múltiples implementaciones. + + + + + +## Clave API de Administrador + +La clave API de Administrador se usa para la mayoría de la API. Se utiliza para activar actualizaciones a través del [endpoint de Actualización](/advanced/rest-api/update/trigger). + +## Clave API de Chat + +La API de Chat te permite integrar la experiencia de chat con IA basada en tus documentos y continuamente actualizada en cualquier aplicación de tu elección. + +Las respuestas incluyen citas para que puedas dirigir a tus usuarios a los lugares correctos donde necesitan obtener ayuda. + + + El token de la API de Chat es un token público que puede ser referenciado en tu código frontend, mientras que la clave API es un token del lado del servidor que debe mantenerse en secreto. + + +Ahora que tienes una clave API, revisa nuestro [ejemplo](https://github.com/mintlify/discovery-api-example) para saber cómo usar la API para el chat con IA. También puedes ver una versión implementada de este ejemplo en [chat.mintlify.com](https://chat.mintlify.com). diff --git a/es/advanced/rest-api/update/status.mdx b/es/advanced/rest-api/update/status.mdx new file mode 100644 index 000000000..0bc6efc18 --- /dev/null +++ b/es/advanced/rest-api/update/status.mdx @@ -0,0 +1,3 @@ +--- +openapi: GET /project/update-status/{statusId} +--- diff --git a/es/advanced/rest-api/update/trigger.mdx b/es/advanced/rest-api/update/trigger.mdx new file mode 100644 index 000000000..8d47fe1e6 --- /dev/null +++ b/es/advanced/rest-api/update/trigger.mdx @@ -0,0 +1,3 @@ +--- +openapi: POST /project/update/{projectId} +--- diff --git a/es/advanced/subpath/cloudflare.mdx b/es/advanced/subpath/cloudflare.mdx new file mode 100644 index 000000000..5242f4f47 --- /dev/null +++ b/es/advanced/subpath/cloudflare.mdx @@ -0,0 +1,75 @@ +--- +title: Cloudflare +description: Aloja documentación en una subruta /docs usando Cloudflare Workers +--- + +## Crear Worker de Cloudflare + +Navega a`Workers & Pages > Create application > Create worker`. Deberías ver la siguiente pantalla donde puedes crear un nuevo worker de Cloudflare. + + + Create a Cloudflare worker + + + + Ten en cuenta: Si tu proveedor de DNS es Cloudflare, no deberías usar el proxy para el registro CNAME + + +### Agregar dominio personalizado + +Una vez que el worker esté creado, haz clic en`Configure worker`. Navega al worker +`Settings > Triggers`. Haz clic en`Add Custom Domain` para agregar tu dominio deseado a la lista - recomendamos que agregues tanto la versión con y sin`www.` +antepuesto al dominio. + + + Cloudflare worker custom domain + + +Si tienes problemas configurando un subdirectorio personalizado, +[contacta a nuestro equipo de soporte](mailto:sales@mintlify.com) y te guiaremos a través del proceso de actualización de tu alojamiento con nosotros. + +### Editar Script del Worker + +Haz clic en`Edit Code` y agrega el siguiente script en el código del worker. + + + Cloudflare edit code + + + + Edita`DOCS_URL` reemplazando`[SUBDOMAIN]` con tu subdominio único y`CUSTOM_URL` con la URL base de tu sitio web. + + +```javascript +addEventListener("fetch", (event) => { + event.respondWith(handleRequest(event.request)); +}); + +async function handleRequest(request) { + try { + const urlObject = new URL(request.url); + // If the request is to the docs subdirectory + if (/^\/docs/.test(urlObject.pathname)) { + // Then Proxy to Mintlify + const DOCS_URL = "[SUBDOMAIN].mintlify.dev"; + const CUSTOM_URL = "[YOUR_DOMAIN]"; + + let url = new URL(request.url); + url.hostname = DOCS_URL; + + let proxyRequest = new Request(url, request); + + proxyRequest.headers.set("Host", DOCS_URL); + proxyRequest.headers.set("X-Forwarded-Host", CUSTOM_URL); + proxyRequest.headers.set("X-Forwarded-Proto", "https"); + + return await fetch(proxyRequest); + } + } catch (error) { + // if no action found, play the regular request + return await fetch(request); + } +} +``` + +Haz clic en`Deploy` y espera a que los cambios se propaguen (puede tomar hasta algunas horas). diff --git a/es/advanced/subpath/route53-cloudfront.mdx b/es/advanced/subpath/route53-cloudfront.mdx new file mode 100644 index 000000000..f821934c3 --- /dev/null +++ b/es/advanced/subpath/route53-cloudfront.mdx @@ -0,0 +1,136 @@ +--- +title: AWS Route 53 y Cloudfront +sidebarTitle: AWS +description: Aloja documentación en un subdirectorio /docs usando servicios de AWS +--- + +## Crear Distribución de Cloudfront + +Navega a [Cloudfront](https://aws.amazon.com/cloudfront) dentro de la consola de AWS y haz clic en `Create distribution` + + + ![Cloudfront Create Distribution](/images/cloudfront/create-distribution.png) + + +Para el dominio de origen, ingresa `[SUBDOMAIN].mintlify.dev` donde `[SUBDOMAIN]` es el subdominio único del proyecto. Haz clic en `Use: [SUBDOMAIN].mintlify.dev` + +![Cloudfront Origin name](/images/cloudfront/origin-name.png) + +Para **Cache key and origin requests**, selecciona `Caching Optimized`. + + + ![Cloudfront Caching policy](/images/cloudfront/caching-policy.png) + + +Y para **Web Application Firewall (WAF)**, habilita las protecciones de seguridad + + + ![Cloudfront Caching + policy](/images/cloudfront/enable-security-protections.png) + + +La configuración restante debe ser la predeterminada. Haz clic en `Create distribution`. + +## Add Default Origin + +Después de crear la distribución, navega a la pestaña `Origins`. + +![Cloudfront Origins](/images/cloudfront/origins.png) + +Queremos encontrar una URL de staging que refleje el dominio principal (example.com). Esto varía mucho dependiendo de cómo esté alojada tu página de inicio. + + + Por ejemplo, si tu página de inicio está alojada en Webflow, puedes usar la URL de staging de Webflow. Se vería como `.webflow.io`. + + Si usas Vercel, puedes usar el dominio `.vercel.app` disponible para cada proyecto. + + + + Si no estás seguro de cómo obtener una URL de staging para tu página de inicio, [contacta con soporte](mailto:support@mintlify.com) y estaremos encantados de ayudar + + +Una vez que tengas la URL de staging, la nuestra por ejemplo es [mintlify-landing-page.vercel.app](https://mintlify-landing-page.vercel.app), crea un nuevo Origin y añádelo como **Origin domain**. + + + ![Cloudfront Default Origins](/images/cloudfront/default-origin.png) + + +En este punto, deberías tener dos Origins - uno con `[SUBDOMAIN].mintlify.app` y otro con la URL de staging. + +## Configurar Behaviors + +Los Behaviors en Cloudfront permiten controlar la lógica de subrutas. A alto nivel, buscamos crear la siguiente lógica. + +* **Si un usuario llega a /docs**, ir a `[SUBDOMAIN].mintlify.dev` +* **Si un usuario llega a cualquier otra página**, ir a la página de inicio actual + +Vamos a crear tres behaviors haciendo clic en el botón `Create behavior`. + +### `/docs/*` + +El primer behavior debe tener un **Path pattern** de `/docs/*` con **Origin and origin groups** apuntando a la URL `.mintlify.dev` (en nuestro caso `acme.mintlify.dev`) + +![Cloudfront Behavior 1](/images/cloudfront/behavior-1.png) + +Para **Cache policy**, selecciona `CachingOptimized` y crea el behavior. + +### `/docs` + +El segundo behavior debe ser igual que el primero pero con un **Path pattern** de `/docs` y **Origin and origin groups** apuntando a la misma URL `.mintlify.dev`. + +![Cloudfront Behavior 2](/images/cloudfront/behavior-2.png) + +### `Default (*)` + +Por último, vamos a editar el behavior `Default (*)`. + + + ![Cloudfront Behavior Default 1](/images/cloudfront/default-behavior-1.png) + + +Vamos a cambiar el **Origin and origin groups** del behavior predeterminado a la URL de staging (en nuestro caso `mintlify-landing-page.vercel.app`). + + + ![Cloudfront Behavior Default 2](/images/cloudfront/default-behavior-2.png) + + +Haz clic en `Save changes`. + +## Previsualizar Distribución + +Ahora puedes probar si tu distribución está configurada correctamente yendo a la pestaña `General` y visitando el **Distribution domain name** URL. + + + ![Cloudfront Preview + distribution](/images/cloudfront/preview-distribution.png) + + +Todas las páginas deberían dirigirse a tu página principal, pero si agregas `/docs` a la URL, deberías ver que se dirige a la instancia de documentación de Mintlify. + +## Conectándolo con Route53 + +Ahora, vamos a incorporar la funcionalidad de la distribución Cloudfront en tu dominio principal. + + + Para esta sección, también puedes consultar la guía oficial de AWS sobre [Configuración de Amazon Route 53 para dirigir tráfico a una distribución de CloudFront](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html#routing-to-cloudfront-distribution-config) + + +Navega a [Route53](https://aws.amazon.com/route53) dentro de la consola de AWS, y haz clic en el `Hosted zone` para tu dominio principal. Haz clic en `Create record` + + + ![Route 53 create record](/images/cloudfront/route53-create-record.png) + + +Activa `Alias` y luego **Dirigir tráfico a** la `Alias to CloudFront distribution` opción. + + + ![Route 53 create record alias](/images/cloudfront/create-record-alias.png) + + +Haz clic en `Create records`. + + + Es posible que necesites eliminar el registro A existente si hay uno actualmente. + + +¡Y voilà! Deberías poder tener tu documentación servida en `/docs` para tu dominio principal. diff --git a/es/advanced/subpath/vercel.mdx b/es/advanced/subpath/vercel.mdx new file mode 100644 index 000000000..a3d3e799a --- /dev/null +++ b/es/advanced/subpath/vercel.mdx @@ -0,0 +1,30 @@ +--- +title: Vercel +description: Aloje la documentación en una subruta /docs usando Vercel +--- + +## Configuración de vercel.json + +Para alojar su documentación en una subruta personalizada usando Vercel, necesita agregar la +siguiente configuración a su `vercel.json` archivo. + +```json +{ + "rewrites": [ + { + "source": "/docs", + "destination": "https://[subdomain].mintlify.dev/docs" + }, + { + "source": "/docs/:match*", + "destination": "https://[subdomain].mintlify.dev/docs/:match*" + } + ] +} +``` + + + Para más información, también puede consultar la guía oficial de Vercel sobre + reescrituras: [Configuración del Proyecto: + Reescrituras](https://vercel.com/docs/projects/project-configuration#rewrites) + diff --git a/es/api-playground/mdx/authentication.mdx b/es/api-playground/mdx/authentication.mdx new file mode 100644 index 000000000..b82ddd0d3 --- /dev/null +++ b/es/api-playground/mdx/authentication.mdx @@ -0,0 +1,87 @@ +--- +title: Autenticación +description: Puedes establecer parámetros de autenticación para permitir que los usuarios utilicen sus propias claves API. +--- + +## Habilitando la Autenticación + +Puedes agregar un método de autenticación a tu docs.json para habilitarlo en todas las páginas o puedes configurarlo página por página. + +El método de autenticación de la página anulará docs.json si ambos están configurados. + +### Token Bearer + + + ```json docs.json + "api": { + "mdx": { + "auth": { + "method": "bearer" + } + } + } + ``` + + ```md Page Metadata + --- + title: "Your page title" + authMethod: "bearer" + --- + ``` + + +### Autenticación Básica + + + ```json docs.json + "api": { + "mdx": { + "auth": { + "method": "basic" + } + } + } + ``` + + ```md Page Metadata + --- + title: "Your page title" + authMethod: "basic" + --- + ``` + + +### Clave API + + + ```json docs.json + "api": { + "mdx": { + "auth": { + "method": "key", + "name": "x-api-key" + } + } + } + ``` + + ```md Page Metadata + --- + title: "Your page title" + authMethod: "key" + --- + ``` + + +### Ninguna + +El método de autenticación "ninguna" es útil para deshabilitar la autenticación en un endpoint específico después de establecer un valor predeterminado en docs.json. + + + ```md Page Metadata + --- + title: "Your page title" + authMethod: "none" + --- + ``` + diff --git a/es/api-playground/mdx/configuration.mdx b/es/api-playground/mdx/configuration.mdx new file mode 100644 index 000000000..634736c35 --- /dev/null +++ b/es/api-playground/mdx/configuration.mdx @@ -0,0 +1,70 @@ +--- +title: MDX Setup +description: Genera páginas de documentación para tus endpoints de API usando MDX +--- + +Mintlify te permite definir tus endpoints de API usando una combinación de`docs.json` configuración, campos de metadatos MDX, y el componente``. A partir de los endpoints definidos, generamos un área de pruebas de API, ejemplos de solicitudes y ejemplos de respuestas. + + + + En tu archivo`docs.json`, define tu URL base y método de autenticación: + + ```json + "api": { + "mdx": { + "server": "https://mintlify.com/api", // string array for multiple base URLs + "auth": { + "method": "key", + "name": "x-api-key" // options: bearer, basic, key. + } + } + } + ``` + + Si no deseas mostrar un área de pruebas de API, no necesitas incluir tipos de autenticación. Oculta el área de pruebas con el siguiente campo: + + ```json + "api": { + "playground": { + "display": "none" + } + } + ``` + + Encuentra una lista completa de configuraciones de API[aquí](/settings/global#param-api). + + + + Cada página de endpoint de API debe tener un archivo MDX correspondiente. En la parte superior de cada archivo, define: + + ```md + --- + title: 'Create new user' + api: 'POST https://api.mintlify.com/user' + --- + ``` + + Puedes especificar parámetros de ruta agregando el nombre del parámetro a la ruta, envuelto con`{}`: + + ```bash + https://api.example.com/v1/endpoint/{userId} + ``` + + + Si tienes`server` configurado en[docs.json](/settings/global), puedes usar rutas relativas como`/v1/endpoint`. + + + También puedes anular el modo de visualización definido globalmente para el área de pruebas de API por página agregando`playground` en la parte superior del archivo MDX: + + ```md + --- + title: 'Create new user' + api: 'POST https://api.mintlify.com/user' + playground: 'none' + ``` + + + + Agregue sus páginas de endpoints a la barra lateral añadiendo las rutas al `navigation` campo en su `docs.json`. Aprenda más sobre cómo estructurar sus documentos [aquí](/settings/navigation). + + diff --git a/es/api-playground/openapi/advanced-features.mdx b/es/api-playground/openapi/advanced-features.mdx new file mode 100644 index 000000000..d70c34aac --- /dev/null +++ b/es/api-playground/openapi/advanced-features.mdx @@ -0,0 +1,139 @@ +--- +title: Características Avanzadas +description: Soporte para características avanzadas de OpenAPI +--- + +OpenAPI 3 tiene algunas características avanzadas para describir APIs complejas. Aquí te mostramos cómo puedes usarlas con Mintlify. + +## `oneOf`, `anyOf`, `allOf` + +Para tipos de datos complejos, OpenAPI proporciona las palabras clave `oneOf`, `anyOf`, y `allOf`, permitiéndote combinar esquemas de ciertas maneras. Puedes leer más sobre estas palabras clave en la [documentación de Swagger](https://swagger.io/docs/specification/data-models/oneof-anyof-allof-not/), pero esencialmente: + +* `oneOf` funciona como un operador "o-exclusivo" +* `anyOf` funciona como un operador "o" +* `allOf` funciona como un operador "y" + +Las palabras clave `oneOf` y `anyOf` se tratan igual. Hemos encontrado que cuando la gente usa `oneOf`, a menudo *quieren decir* `anyOf` - y a menudo no hay una diferencia significativa para el usuario. + +La palabra clave `not` no está actualmente soportada. + +### Combinando esquemas con `allOf` + +Mintlify realiza algún preprocesamiento en tu documento OpenAPI para mostrar estas combinaciones complejas de una manera legible. Por ejemplo, cuando combinas dos esquemas de objetos con `allOf`, Mintlify combina las propiedades de ambos en un solo objeto. Esto se vuelve especialmente útil cuando se aprovechan los [OpenAPI's reusable `components`](https://swagger.io/docs/specification/components/). + +```yaml +org_with_users: + allOf: + - $ref: '#/components/schemas/Org' + - type: object + properties: + users: + type: array + description: An array containing all users in the organization +... +components: + schemas: + Org: + type: object + properties: + id: + type: string + description: The ID of the organization +``` + + + + + El ID de la organización + + + + Un array que contiene todos los usuarios en la organización + + + + +### Proporcionando opciones con `oneOf` y `anyOf` + +Cuando usas `oneOf` o `anyOf`, Mintlify muestra las opciones en un contenedor con pestañas. Para dar a tus opciones nombres útiles, asegúrate de dar a cada subesquema un `title` campo. Por ejemplo, así es como podrías mostrar dos tipos diferentes de direcciones de entrega: + +```yaml +delivery_address: + oneOf: + - title: StreetAddress + type: object + properties: + address_line_1: + type: string + description: The street address of the recipient + ... + - title: POBox + type: object + properties: + box_number: + type: string + description: The number of the PO Box + ... +``` + + +
+ + + + La dirección de la residencia + + + + + + El número del apartado postal + + + +
+
+ +## `x-codeSamples` + +Si tus usuarios interactúan con tu API usando un SDK en lugar de directamente a través de una solicitud de red, puedes agregar ejemplos de código a tu documento OpenAPI, y Mintlify los mostrará en tus páginas OpenAPI. Puedes definir tus ejemplos de código usando la `x-codeSamples` extensión. Esta propiedad se puede agregar dentro de cualquier método de solicitud y tiene el siguiente esquema: + + + El lenguaje del ejemplo de código. + + + + La etiqueta para el ejemplo. Esto es útil cuando se proporcionan múltiples ejemplos para un solo endpoint. + + + + El código fuente del ejemplo. + + +Aquí hay un ejemplo de algunos ejemplos de código para una aplicación de seguimiento de plantas, que tiene tanto una herramienta CLI de Bash como un SDK de JavaScript. + +```yaml +paths: + /plants: + get: + ... + x-codeSamples: + - lang: bash + label: List all unwatered plants + source: | + planter list -u + - lang: javascript + label: List all unwatered plants + source: | + const planter = require('planter'); + planter.list({ unwatered: true }); + - lang: bash + label: List all potted plants + source: | + planter list -p + - lang: javascript + label: List all potted plants + source: | + const planter = require('planter'); + planter.list({ potted: true }); +``` diff --git a/es/api-playground/openapi/setup.mdx b/es/api-playground/openapi/setup.mdx new file mode 100644 index 000000000..314d3bb21 --- /dev/null +++ b/es/api-playground/openapi/setup.mdx @@ -0,0 +1,147 @@ +--- +title: Configuración de OpenAPI +description: Referencia endpoints de OpenAPI en tus páginas de documentación +--- + +## Agregar un archivo de especificación OpenAPI + +Para describir tus endpoints con OpenAPI, asegúrate de tener un documento OpenAPI válido en formato JSON o YAML que siga la[especificación OpenAPI](https://swagger.io/specification/). Tu documento debe seguir la especificación OpenAPI 3.0+. +Para validar tu especificación OpenAPI, usa nuestro [CLI](https://www.npmjs.com/package/mintlify) y ejecuta este comando:
`mintlify openapi-check `
+ +## Auto-generar páginas de API + +La forma más rápida de comenzar con OpenAPI es agregar un campo `openapi` a una pestaña en el `docs.json`. Este campo puede contener la ruta a un documento OpenAPI en tu repositorio de documentación, o la URL de un documento OpenAPI alojado. Mintlify generará automáticamente una página para cada operación OpenAPI y las colocará en la pestaña. + +**Ejemplo con Pestañas:** + +```json {5} +"navigation": { + "tabs": [ + { + "tab": "API Reference", + "openapi": "https://petstore3.swagger.io/api/v3/openapi.json" + } + ] +} +``` + +![](/images/autogeneration-with-tabs.png) + +**Ejemplo con Grupos:** + +```json {8-11} +"navigation": { + "tabs": [ + { + "tab": "API Reference", + "groups": [ + { + "group": "Endpoints", + "openapi": { + "source": "/path/to/openapi-1.json", + "directory": "api-reference" + } + } + ] + } + ] +} +``` + +El campo directory es opcional. Si no se especifica, los archivos se colocarán en el **api-reference** carpeta del repositorio de documentación. + +Al usar esta opción, los metadatos para las páginas generadas tendrán los siguientes valores predeterminados: + +* `title`: El `summary` campo de la operación OpenAPI, si está presente. De lo contrario, un título generado a partir del método HTTP y el endpoint. + +* `description`: El `description` campo de la operación OpenAPI, si está presente. + +* `version`: El `version` valor del ancla o pestaña, si está presente. + +Hay algunos escenarios en los que el comportamiento predeterminado no es suficiente. Si necesitas más personalización, puedes crear una página MDX para tu operación OpenAPI y modificarla como cualquier otra página MDX. + +## Crear archivos MDX para páginas de API + +Si deseas personalizar los metadatos de la página, agregar contenido adicional, omitir ciertas operaciones OpenAPI o reordenar las páginas OpenAPI en tu navegación, necesitarás una página MDX para cada operación. Aquí hay [un ejemplo de página MDX OpenAPI](https://github.com/mindsdb/mindsdb/blob/main/docs/rest/databases/create-databases.mdx) de [MindsDB](https://docs.mindsdb.com/rest/databases/create-databases). + +![](/images/mindsdb.png) + +### Especificar archivos manualmente + +Siempre puedes crear una página MDX manualmente y hacer referencia a la operación OpenAPI en los metadatos de la página usando el `openapi` campo. + + + +Al usar la referencia OpenAPI, el nombre, descripción, parámetros, respuestas y el área de pruebas de API se generarán automáticamente desde el documento OpenAPI. + +Si tienes múltiples archivos OpenAPI, incluye la ruta al archivo OpenAPI para asegurar que Mintlify encuentre el documento OpenAPI correcto. Esto no es necesario si tienes solo un archivo OpenAPI - detectará automáticamente tu archivo OpenAPI. + +Si deseas hacer referencia a un archivo OpenAPI externo usando este método, proporciona la URL del archivo en el docs.json. Ver [aquí](https://mintlify.com/docs/settings/global#param-source-4) para el formato correcto. + + + ```md Example + --- + title: "Get users" + openapi: "/path/to/openapi-1.json GET /users" + --- + ``` + + ```md Format + --- + title: "title of the page" + openapi: openapi-file-path method path + --- + ``` + + + + En la mayoría de los casos, el método y la ruta deben coincidir exactamente con el método y la ruta especificados en el documento OpenAPI. Si el endpoint no existe en el archivo OpenAPI, la página estará vacía. + + Para webhooks, reemplaza el método (es decir, "POST") con "webhook" (no distingue mayúsculas y minúsculas) y se generará el método correcto. + + +### Autogenerar archivos + +Para documentos OpenAPI grandes, crear una página MDX para cada operación OpenAPI puede ser mucho trabajo. Para facilitarlo, creamos un scraper local de páginas OpenAPI. + +Nuestro Mintlify [scraper](https://www.npmjs.com/package/@mintlify/scraping) +autogenera archivos MDX para tus endpoints OpenAPI. + +Cada página generada corresponderá a una operación OpenAPI bajo la sección "paths" del esquema OpenAPI. Si tu documento OpenAPI es versión 3.1+, el scraper también generará páginas para webhooks bajo la sección "webhooks" del esquema OpenAPI. + +```bash +npx @mintlify/scraping@latest openapi-file +``` + +Agrega la `-o` bandera para especificar una carpeta donde colocar los archivos. Si no se especifica una carpeta, los archivos se colocarán en el directorio de trabajo. + +```bash +npx @mintlify/scraping@latest openapi-file -o api-reference +``` + +Aprende más sobre nuestro paquete de scraping [aquí](https://www.npmjs.com/package/@mintlify/scraping). + +El scraper generará un array de +[Entradas de navegación](/settings/global#structure) que contienen tus archivos MDX OpenAPI. Puedes agregar estas entradas a tu Navegación existente o reordenar y agregar los archivos a tu navegación manualmente. + + + Si tu documento OpenAPI no es válido, los archivos no se autogenerarán. + + +## Crear archivos MDX para esquemas OpenAPI + +Mintlify también permite crear páginas individuales para cualquier esquema OpenAPI definido en el campo `components.schemas` del documento OpenAPI: + + + ```md Example + --- + openapi-schema: OrderItem + --- + ``` + + ```md Format + --- + openapi-schema: "schema-key" + --- + ``` + diff --git a/es/api-playground/openapi/writing-openapi.mdx b/es/api-playground/openapi/writing-openapi.mdx new file mode 100644 index 000000000..75a05acc0 --- /dev/null +++ b/es/api-playground/openapi/writing-openapi.mdx @@ -0,0 +1,33 @@ +--- +title: Writing OpenAPI +description: Usa las características de OpenAPI para mejorar tu documentación +--- + +## Describiendo tu API + +Hay muchas herramientas excelentes en línea para aprender y construir documentos OpenAPI. Aquí están nuestras favoritas: + +* [Guía OpenAPI de Swagger](https://swagger.io/docs/specification/about/) para familiarizarte con la sintaxis de OpenAPI +* [Especificación OpenAPI v3.1.0](https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md) para todos los detalles sobre la especificación más reciente de OpenAPI +* [Validador de Swagger & OpenAPI](https://editor.swagger.io/) para depurar tu documento OpenAPI +* [Editor de Swagger](https://editor.swagger.io/) para ver ejemplos en acción + + + La Guía OpenAPI de Swagger es para OpenAPI v3.0, pero casi toda la información es aplicable a v3.1. Para más información sobre las diferencias entre v3.0 y v3.1, consulta [la publicación del blog de OpenAPI](https://www.openapis.org/blog/2021/02/16/migrating-from-openapi-3-0-to-3-1-0). + + +## Especificando la URL para tu API + +En un documento OpenAPI, diferentes endpoints de API se especifican por sus rutas, como `/users/{id}`, o simplemente `/`. Para especificar la URL base a la que se deben agregar estas rutas, OpenAPI proporciona el campo `servers`. Este campo es necesario para usar algunas características de Mintlify como el API Playground. Lee cómo configurar el campo `servers` en la [documentación de Swagger](https://swagger.io/docs/specification/api-host-and-base-path/). + +El API Playground usará estas URLs de servidor para determinar dónde enviar las solicitudes. Si se especifican múltiples servidores, aparecerá un menú desplegable para permitir alternar entre servidores. Si no se proporciona ningún servidor, el API Playground usará el modo simple, ya que no hay forma de enviar una solicitud. + +Si diferentes endpoints dentro de tu API existen en diferentes URLs, puedes [sobrescribir el campo server](https://swagger.io/docs/specification/api-host-and-base-path/#:~:text=%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%C2%A0%20%2D%20southeastasia-,Overriding%20Servers,-The%20global%20servers) para una ruta u operación específica. + +## Especificando autenticación + +Casi todas las APIs requieren algún método de autenticación. OpenAPI proporciona el `securitySchemes` campo para definir los métodos de autenticación utilizados en toda tu API, con configuración simple para los tipos de autenticación más comunes - [Basic](https://swagger.io/docs/specification/authentication/basic-authentication/), [Bearer](https://swagger.io/docs/specification/authentication/bearer-authentication/), y [API Keys](https://swagger.io/docs/specification/authentication/api-keys/). Para aplicar estos métodos de autenticación a tus endpoints, OpenAPI usa el `security` campo. La sintaxis para definir y aplicar la autenticación es un poco poco intuitiva, así que definitivamente revisa la [documentación y ejemplos de Swagger](https://swagger.io/docs/specification/authentication/) sobre el tema. + +Las descripciones de la API y API Playground agregarán campos de autenticación basados en las configuraciones de seguridad en tu documento OpenAPI. + +Si diferentes endpoints dentro de tu API requieren diferentes métodos de autenticación, puedes [sobrescribir el campo security](https://swagger.io/docs/specification/authentication/#:~:text=you%20can%20apply%20them%20to%20the%20whole%20API%20or%20individual%20operations%20by%20adding%20the%20security%20section%20on%20the%20root%20level%20or%20operation%20level%2C%20respectively.) para una operación específica. diff --git a/es/api-playground/overview.mdx b/es/api-playground/overview.mdx new file mode 100644 index 000000000..1a13f5432 --- /dev/null +++ b/es/api-playground/overview.mdx @@ -0,0 +1,13 @@ +--- +title: Playground +description: Permite a los usuarios interactuar con tu API +openapi: POST /project/update/{projectId} +hideApiMarker: true +icon: play +--- + +El API playground es un entorno interactivo para realizar peticiones y previsualizar un endpoint de API. + + + La autogeneración de páginas de API con OpenAPI generará automáticamente el API playground. Lee más sobre el uso de OpenAPI[aquí](/api-playground/openapi). + diff --git a/es/api-playground/troubleshooting.mdx b/es/api-playground/troubleshooting.mdx new file mode 100644 index 000000000..c09d6bc71 --- /dev/null +++ b/es/api-playground/troubleshooting.mdx @@ -0,0 +1,72 @@ +--- +title: Solución de problemas +description: Problemas comunes con Referencias de API +icon: triangle-exclamation +--- + +Las páginas de API son complicadas. Como resultado, hay muchas cosas que pueden salir mal. +Aquí hay una lista de problemas comunes que hemos visto que los clientes encuentran: + + + + En este escenario, es probable que Mintlify no pueda encontrar tu documento OpenAPI, + o que tu documento OpenAPI no sea válido. + + Ejecutar `mintlify dev` localmente debería revelar algunos de estos problemas. + + Para verificar que tu documento OpenAPI pasará la validación: + + 1. Visita [este validador](https://editor.swagger.io/) + 2. Cambia a la pestaña "Validate text" + 3. Pega tu documento OpenAPI + 4. Haz clic en "Validate it!" + + Si el cuadro de texto que aparece abajo tiene un borde verde, tu documento ha pasado la validación. + Este es el paquete de validación exacto que Mintlify usa para validar documentos OpenAPI, así que si tu documento + pasa la validación aquí, hay una gran probabilidad de que el problema esté en otro lugar. + + Además, Mintlify no es compatible con OpenAPI 2.0. Si tu documento usa esta versión de la especificación, + podrías encontrar este problema. Puedes convertir tu documento en [editor.swagger.io](https://editor.swagger.io/) (bajo Edit > Convert to OpenAPI 3): + + + + + + + + Esto generalmente es causado por un error de escritura en el`openapi` campo en los metadatos de la página. Asegúrate que el método HTTP y la ruta coincidan exactamente con el método HTTP y la ruta en el documento OpenAPI. + + Aquí hay un ejemplo de cómo las cosas pueden salir mal: + + ```md get-user.mdx + --- + openapi: "GET /users/{id}/" + --- + ``` + + ```yaml openapi.yaml + paths: + "/users/{id}": + get: ... + ``` + + Observa que la ruta en el`openapi` campo tiene una barra diagonal al final, mientras que la ruta en el documento OpenAPI no la tiene. + + Otro problema común es un nombre de archivo mal escrito. Si estás especificando un documento OpenAPI particular en el`openapi` campo, asegúrate de que el nombre del archivo sea correcto. Por ejemplo, si tienes dos documentos OpenAPI`openapi/v1.json` y `openapi/v2.json`, tus metadatos podrían verse así: + + ```md api-reference/v1/users/get-user.mdx + --- + openapi: "v1 GET /users/{id}" + --- + ``` + + + + Si tienes un dominio personalizado configurado, esto podría ser un problema con tu proxy inverso. Por defecto, las solicitudes realizadas a través del API Playground comienzan con una solicitud`POST` al + `/api/request` ruta en el sitio de documentación. Si tu proxy inverso está configurado para permitir solo`GET` + solicitudes, entonces todas estas solicitudes fallarán. Para solucionarlo, configura tu proxy inverso para permitir`POST` solicitudes a la`/api/request` ruta. + + Alternativamente, si tu proxy inverso te impide aceptar`POST` solicitudes, puedes configurar Mintlify para enviar solicitudes directamente a tu backend con la`api.playground.disableProxy` + configuración en el`docs.json`, como se describe[aquí](/settings/global#api-configurations). Esto probablemente requerirá que configures CORS en tu servidor, ya que estas solicitudes ahora vendrán directamente desde los navegadores de tus usuarios. + + diff --git a/es/changelog/overview.mdx b/es/changelog/overview.mdx new file mode 100644 index 000000000..bed706276 --- /dev/null +++ b/es/changelog/overview.mdx @@ -0,0 +1,393 @@ +--- +title: Actualizaciones del Producto +description: Nuevas actualizaciones y mejoras +mode: center +--- + + + ## Generador de servidor MCP + + Genera servidores MCP para que las aplicaciones de IA puedan interactuar con tus documentos o APIs. El contenido escrito se genera automáticamente como un servidor MCP, y puedes generar un servidor MCP desde tu especificación OpenAPI con un solo clic. + Consulta la [documentación sobre cómo empezar con MCP.](/advanced/mcp/quickstart.mdx) + + ## mcpt: un registro para servidores MCP + + Descubre más de 105 servidores MCP en [mcpt](https://www.mcpt.com). Este directorio incluye tanto servidores oficiales como los de nuestra propia base de clientes. + + ## Mejoras + + * Etiqueta las actualizaciones del registro de cambios para que los usuarios finales puedan filtrar las actualizaciones + * Sonnet-3.7 compatible con AI Chat. Configura tu modelo preferido a través del panel de control + * Cambia el nombre de tu implementación directamente en la configuración del panel + + ## Corrección de errores + + * Imágenes OG corregidas + * Corregida la inconsistencia de estilo de iconos para anclajes sin contenedor + * Mejoras en los detalles de estilo del borde del panel para la capacidad de respuesta móvil-tableta-escritorio + * Mostrar ejemplos de código incluso en modo simple para el área de pruebas de API + * Soporte para el atajo "command + k" para búsqueda en el editor web + * Los bloques de código dentro de las notas se expanden para llenar el ancho del área de la nota + + + + ## Nuevo Esquema de Configuración`docs.json` + + Hemos introducido un nuevo `docs.json` esquema como reemplazo para `mint.json`, para admitir mejor el control de versiones multinivel, una comprensión visual más fácil y una terminología más consistente. Para más información sobre los cambios, [consulta nuestro blog](https://mintlify.com/blog/refactoring-mint-json-into-docs-json). + + Actualiza de `mint.json` a `docs.json` con los siguientes pasos: + + 1. Asegúrate de que tu CLI esté en la última versión + + ``` + npm i mintlify@latest -g + ``` + + 1. En tu repositorio de documentación, ejecuta + + ``` + mintlify upgrade + ``` + + 1. Elimina tu archivo mint.json antiguo y sube tus cambios + + ## Verificaciones CI + + Revisa automáticamente tu documentación para encontrar enlaces rotos, descubrir problemas de ortografía y gramática, o aplicar estilos de escritura con tu propia configuración de Vale. Aprende más en nuestra [documentación](settings/ci). + + ## Soporte .md para LLMs + + Todas las páginas de documentación están ahora automáticamente disponibles como archivos Markdown simples—solo añade `.md` a la URL. Esto facilita que los LLMs ingieran páginas individuales de tu documentación. + + ## Más Temas + + Nuevos [temas preconfigurados](/themes) para modificar el aspecto de tu documentación. Configura a través de tu [archivo docs.json](/settings/global). + + Ahora disponible: + + * Maple + * Palm + * Willow + + ## Otras mejoras + + * [Guía para la Escritura Técnica:](https://mintlify.com/guides/introduction)Mejores prácticas para escribir documentación técnica, incluyendo investigación de audiencia, tipos de contenido y consejos de escritura. + * [Componente desplegable](/navigation/divisions#dropdowns): Organiza la navegación con un menú desplegable, además de pestañas y anclajes. + * [Corrector de sintaxis AI](https://x.com/ricardonunez_io/status/1892334887644123192): El editor web detectará si hay un error de análisis y usará IA para sugerir correcciones. + + + + ## Mejoras del Asistente de IA + + * Nueva interfaz con página de chat dedicada y prompts preestablecidos + * Mejoras de estabilidad, por ejemplo, corrección de errores al editar el archivo incorrecto o ningún archivo + * Conocimiento más robusto para agregar y editar componentes + * Mejora en la edición del archivo mint.json + + ## Autenticación Parcial + + Personaliza el acceso a cualquier página o sección de contenido según los permisos del usuario. Compatible con la conexión a tu propio sistema de autenticación. + + ## Área de Pruebas de API Renovada + + Hemos renovado completamente el diseño y rendimiento del [Área de Pruebas de API](/api-playground/). Las actualizaciones incluyen: + + * Expansión más fácil de detalles para una visión general de un campo + * Diseño anidado más intuitivo, por ejemplo, para agregar o eliminar elementos + * Tiempos de respuesta más rápidos + + ## Mejoras de Calidad + + * Soporte para requerir autenticación para acceder a despliegues de vista previa + + + + ## Autenticación + + + ![Authentication screenshot](/images/changelog/authentication.png) + + + Haga que los documentos sean privados configurando la autenticación a través de JWT, OAuth o una contraseña universal. Con esta privacidad, puede crear una base de conocimiento interna o evitar que los competidores vean sus documentos. + + + + ## Asistente de IA + + + ![AI Assistant](/images/changelog/ai-assistant.jpg) + + + Ahora puede pedirle a la IA que realice cambios en sus documentos, con el contexto de toda la documentación existente. Escriba un mensaje y el asistente propondrá cambios generando una solicitud de extracción. + + ## Actualización de la Integración con GitLab + + Hemos mejorado nuestro soporte para la sincronización con GitLab, como habilitar actualizaciones automatizadas y despliegues de vista previa. Consulte nuestra [documentación sobre GitLab](/settings/gitlab) para comenzar. + + ## Editor Web + + + ![Web Editor](/images/changelog/webeditor.jpg) + + + Hemos renovado nuestro editor web para que ahora pueda actualizar documentos con una experiencia completamente WYSIWYG, mientras se sincroniza con markdown. + + Consulte nuestra [documentación sobre cómo comenzar con el Editor Web](/web-editor). + + ## Soporte para /llms.txt + + + ![llms.txt support](/images/changelog/llms.jpg) + + + Todas las instancias de documentación ahora se alojan automáticamente en /llms.txt y /llms-full.txt para que los LLMs puedan ingerir fácilmente su documentación. Para más información, lea la [documentación sobre el nuevo estándar llms.txt.](https://llmstxt.org) + + ## Localización + + Ahora puede localizar sus documentos, lo que funciona de manera similar al versionado. Agregue un `locale` a una versión y el contenido fijo en Mintlify como "¿Fue útil esta página?" también coincidirá con el idioma. + + ### Mejoras de Calidad + + * Devolver resultados de chat y búsqueda basados en la versión actual que el usuario está leyendo + * Autenticar usuarios con OAuth, además de tokens JWT o Shared Session. + + + + ## Registros de Cambios + + Lanzamos un nuevo [Componente de Actualización](/content/components/update) para facilitar la visualización y el reporte de actualizaciones (como esta) a sus usuarios. + + + ![Changelog](/images/changelog/changelog.jpg) + + + ## Resaltado de Líneas de Código + + Ahora puede resaltar líneas de código en sus documentos para enfatizar y llamar la atención sobre partes importantes agregando un comentario especial después del identificador de lenguaje. Use llaves `{}` y especifique números de línea o rangos separados por comas. + + ```javascript Line Highlighting Example {1,3-5} + const greeting = "Hello, World!"; + function sayHello() { + console.log(greeting); + } + sayHello(); + ``` + + ````md + ```javascript Line Highlighting Example {1,3-5} + const greeting = "Hello, World!"; + function sayHello() { + console.log(greeting); + } + sayHello(); + ``` + ```` + + ## Bloques de código en modo claro + + Los bloques de código ahora tienen una variante en modo claro que se puede habilitar agregando lo siguiente a su `mint.json`: + + ```json + "codeBlock": { + "mode": "auto" + } + ``` + + ## Pie de Página Avanzado + + + ![Advanced Footer](/images/changelog/advanced-footer.gif) + + + Ahora puede agregar más enlaces al pie de página estándar. Esta actualización proporciona más consistencia entre las páginas de inicio y la documentación, o una mayor personalización si desea destacar páginas específicas como redes sociales o registros de estado. + + ## Filtrar búsqueda basada en el usuario actual + + Cuando la personalización está habilitada, los resultados de búsqueda ahora se filtran según el usuario actualmente conectado para que solo vean el contenido relevante. + + ## Indicaciones Personalizadas para Chat de IA + + Ahora puede personalizar las indicaciones para el chat de IA. Por favor, contacte con [soporte](mailto:sales@mintlify.com) si desea personalizar las indicaciones. + + ## Mejoras en el Panel de Control + + * Se agregó la capacidad de cambiar el dominio personalizado a /docs directamente a través de la configuración del panel. + * Se consolidaron las páginas de inicio de sesión y registro para reducir la fricción y la confusión. + * Se implementó el flujo de inicio de sesión de descubrimiento para que los usuarios que son miembros de múltiples organizaciones ahora puedan cambiar entre ellas. + * Se agregó inicio de sesión con OAuth de Google + * Se agregó la capacidad de añadir nuevo despliegue a través de la configuración del panel. + + ## Corrección de Errores + + * Ahora se pueden usar barras diagonales iniciales en la navegación. + * Ahora se pueden editar archivos CSS y JS en el editor web. + * Se corrigió `suggestEdit` que no aparecía incluso cuando estaba habilitado. + * Se corrigió la navegación por teclado para Búsqueda y Chat, de modo que ahora puede usar las teclas de flecha arriba y abajo para navegar por los resultados. + * No permitir que los motores de búsqueda rastreen páginas protegidas por autenticación de usuario. + * Revalidar la caché cuando se elimina una organización. + * Ahora usamos el analizador Scalar OpenAPI para analizar definiciones OpenAPI, lo que mejora el rendimiento, corrige problemas de análisis y muestra mejores mensajes de error. + * Las descripciones de nivel superior ahora son compatibles en las páginas de referencia de API autogeneradas a partir de definiciones OpenAPI. + * Agregar soporte de estilo en línea para iconos + * Se corrigió la aparición emergente de CSS personalizado en la documentación. + * Mostrar correctamente el estilo de código en línea junto con los enlaces. + * Mantener la posición de desplazamiento cuando haces clic en el botón de retroceso en el navegador. + + + + ## Fuentes Personalizadas + + + ![Custom Fonts](/images/changelog/custom-fonts.jpeg) + + + Personaliza la fuente de tu documentación con tu propia fuente alojada en un CDN o eligiendo entre las fuentes de Google para que coincida con tu marca. + + ## Imágenes en componentes Card + + Agregar una`img` propiedad a una tarjeta para mostrar una imagen en la parte superior de la tarjeta. Aprende más sobre esto [aquí](/content/components/cards#image-card). + + ## Mejoras en la Velocidad de Actualización + + + ![Performance Improvements](/images/changelog/performance-improvements.png) + + + Para proyectos grandes (\~3,000 archivos), el paso de descarga para actualizaciones de documentación es ahora \~440 veces más rápido - una reducción del 99.8% en tiempo. En general, las descargas de archivos durante las actualizaciones son ahora \~5.5 veces más rápidas - una reducción del 81.8% en tiempo. + + ## Mejoras de SEO + + + ![SEO Improvements](/images/changelog/seo-improvements.jpeg) + + + Hemos corregido el diseño móvil y de escritorio de nuestra documentación para que sea más amigable con SEO - incluyendo la adición de etiquetas aria apropiadas a elementos de la barra de navegación y alternadores. + + ## Mejoras en el Dashboard + + * Migración del enrutador de aplicaciones en el dashboard. + * Las analíticas de búsqueda ahora están disponibles en el dashboard. + * Se ha agregado la funcionalidad de eliminar una organización al dashboard. + * Se implementó la interfaz de conexión con GitLab. + * Corrección de datos analíticos incorrectos. + * Los complementos ahora se pueden comprar directamente a través del dashboard. + + ## Corrección de Errores + + * Se corrigió un error donde la barra superior no se extendía al ancho de la pantalla cuando estaba en modo personalizado y el diseño de la barra lateral es `sidenav`. + * Corrección del posicionamiento relativo del widget de IA. + + ## Más + + * **Solución de problemas para páginas API**: Las páginas API pueden ser complicadas, así que hemos listado problemas comunes para ayudarte a resolverlos rápidamente —[Leer la documentación](/api-playground/troubleshooting) + + + + ## Páginas de Referencia OpenAPI + + * Los endpoints definidos por OpenAPI que son complejos y recursivos son ahora 98% más pequeños. + * Ahora mostramos[additionalProperties](https://swagger.io/docs/specification/data-models/dictionaries/) + en páginas OpenAPI. + + ## Carga de Archivos en API Playground + + Por defecto, las solicitudes de API playground son proxy de Mintlify. Ahora puedes usar`disableProxy` para deshabilitar este comportamiento y soportar tipos de solicitudes como cargas de archivos. + + * [Aprende más sobre configuraciones API](/settings/global#api-configurations) + + ## Mejoras de SEO móvil + + Hemos corregido el diseño móvil de nuestra documentación para que sea más amigable con SEO - incluyendo la adición de etiquetas aria apropiadas a los elementos. + + ## Formulario de Soporte + + Hemos agregado un formulario de soporte más detallado al dashboard de Mintlify. Ahora puedes enviar un formulario para contactarnos. + + ## Corrección de Errores + + * Se corrigió un error en la funcionalidad de integración con Segment. + * Ahora mostramos mensajes de error más específicos para los permisos de GitHub al interactuar con el editor. + * Se corrigieron errores donde la navegación no se expandía correctamente cuando se usaba un enlace directo. + + + + ## Widget de IA + + + ![AI Widget](/images/changelog/widget.png) + + + Para`Pro` usuarios, introducimos Mintlify Widget, una extensión de tu documentación para responder las preguntas de tus usuarios cuando y donde las hagan. Puedes agregar este chatbot impulsado por IA a cualquier página web: tu página de inicio, dentro de tu producto o en tus páginas de documentación existentes. + + * [Leer el anuncio del blog](https://mintlify.com/blog/widget) + + ## Plan Pro + + También actualizamos nuestros planes de precios para mejor personalización y escala. + + * [Leer el anuncio del blog](https://mintlify.com/blog/pro-plan) + + ## Sincronización de Ejemplos de Código en API Playground + + Cuando navegas por la documentación de API, el ejemplo de código seleccionado ahora se sincroniza a través de tus páginas. + + ## Insights + + Actualmente en beta, esta función resume preguntas y patrones comunes de usuarios en informes fáciles de digerir con sugerencias impulsadas por IA sobre cómo mejorar tu producto. + + + + ## Destacados de la Semana de Lanzamiento + + * Temas: Personaliza tu estilo con temas preconfigurados. Solo agrega el tema Quill, Prism o Venus a tu`mint.json` archivo y actualizará el estilo de tu documentación. + * Search V2: consulta directamente las descripciones y títulos de endpoints de OpenAPI para acceder a las páginas de Referencia de API, elimina las páginas ocultas de la búsqueda y disfruta de nuestra interfaz de búsqueda actualizada. + * Ramificación en Web Editor: crea ramas en nuestro editor web sin necesidad de un IDE. + * Personalización de Usuario: autentica usuarios con Shared Session o JWT para que puedas mostrarles contenido personalizado, como prellenado de claves API o mostrar contenido específico para clientes. + * Mejoras en la Automatización de OpenAPI: para auto-poblar páginas de API Playground, puedes agregar un `openapi` campo a un objeto en los arrays de tabs o anchors en el mint.json. + + + + ## Okta SSO + + Ahora soportamos inicio de sesión a través de Okta SAML y OIDC. + + ## Mintlify REST API + + Activa actualizaciones de tu documentación programáticamente. + + + + ## Custom mode + + Agrega una configuración a los metadatos para eliminar todos los elementos excepto la barra superior. + Casos de uso ejemplo: + + * Crea una configuración de página de inicio global personalizada con componentes personalizados + * Agrega videos o galerías de imágenes a pantalla completa + * Incrusta elementos demo de iFrame personalizados para agregar interactividad a tus documentos + + Revisa nuestra [documentación de Custom Mode](/page#custom-mode). + + + + ## Mintlify MDX for VSCode + + Llama fragmentos de nuestros componentes y avisos preconstruidos sin salir de VSCode. [Instala la extensión aquí](https://marketplace.visualstudio.com/items?itemName=mintlify.mintlify-snippets). + + + + ## Mejoras de Calidad + + * Mejoras en el Dashboard: ver registros de actualización para ver qué ha cambiado y el estado de una actualización, alternar entre proyectos de Mintlify para gestionar despliegues + * Versionado con pestañas totalmente soportado + * Redirecciones con comodines ahora soportadas + * Detección de Errores CLI: ahora mostramos la posición del frontmatter inválido cuando hay problemas de análisis durante el desarrollo local + + + + ## Destacados de la Semana de Lanzamiento + + * Despliegues de Vista Previa: Cuando creas un pull request, generaremos un enlace único que muestra una vista previa en vivo de cómo se verán tus documentos en producción. Puedes compartir este enlace con compañeros de equipo. + * Snippets V2: Ahora soportamos componentes completamente reutilizables y variables para snippets. + * Motor MDX de código abierto: Hemos expuesto dos APIs—getCompiledMdx y MDXComponent—para que puedas acceder al markdown de Mintlify y resaltado de sintaxis de código. [Las contribuciones al proyecto](https://github.com/mintlify/mdx) son bienvenidas. + * Insights de Chat AI: Segmenta el historial de chat por fecha y aumenta la cuota de Chat AI desde el dashboard, y ve con qué frecuencia aparece una consulta específica. + diff --git a/es/code.mdx b/es/code.mdx new file mode 100644 index 000000000..25539276b --- /dev/null +++ b/es/code.mdx @@ -0,0 +1,39 @@ +--- +title: Code Blocks +description: Muestra código en línea y bloques de código +icon: code +--- + +## Básico + +### Código en línea + +Para denotar un `word` o `phrase` como código, enciérralo entre comillas invertidas (\`). + +``` +To denote a `word` or `phrase` as code, enclose it in backticks (`). +``` + +### Bloque de Código + +Usa [bloques de código cercados](https://www.markdownguide.org/extended-syntax/#fenced-code-blocks) encerrando el código entre tres comillas invertidas y siguiendo las comillas iniciales con el lenguaje de programación de tu fragmento para obtener resaltado de sintaxis. Opcionalmente, también puedes escribir el nombre de tu código después del lenguaje de programación. + +```java HelloWorld.java +class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } +} +``` + +````md +```java HelloWorld.java +class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } +} +``` +```` + +Visita la [página de Code Block](/content/components/code) para documentación más detallada. diff --git a/es/content/components/accordion-groups.mdx b/es/content/components/accordion-groups.mdx new file mode 100644 index 000000000..fd066d8cf --- /dev/null +++ b/es/content/components/accordion-groups.mdx @@ -0,0 +1,58 @@ +--- +title: Grupos de Acordeón +description: Agrupa múltiples acordeones en una sola visualización. +icon: table-rows +--- + +Simplemente agrega``alrededor de tus existentes``componentes. + + + + Puedes poner otros componentes dentro de los Acordeones. + + ```java HelloWorld.java + class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } + } + ``` + + + + Consulta la[Acordeón](/content/components/accordions)documentación para todas las propiedades soportadas. + + + + Consulta la[Acordeón](/content/components/accordions)documentación para todas las propiedades soportadas. + + + + + ````jsx Accordion Group Example + + + You can put other components inside Accordions. + + ```java HelloWorld.java + class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } + } + ``` + + + + + Check out the [Accordion](/content/components/accordions) docs for all the supported props. + + + + Check out the [Accordion](/content/components/accordions) docs for all the supported props. + + + ```` + + +`AccordionGroup`no tiene ninguna propiedad. diff --git a/es/content/components/accordions.mdx b/es/content/components/accordions.mdx new file mode 100644 index 000000000..c4351d094 --- /dev/null +++ b/es/content/components/accordions.mdx @@ -0,0 +1,42 @@ +--- +title: Accordions +description: Un componente desplegable para alternar contenido +icon: square-caret-down +--- + + + Puede poner cualquier contenido aquí. Consulte + [AccordionGroup](/content/components/accordion-groups) si desea agrupar + múltiples Accordions en una sola visualización. + + + + ```jsx Accordion Example + + You can put any content in here. + + ``` + + +## Props + + + Título en la vista previa del Accordion. + + + + Detalle debajo del título en la vista previa del Accordion. + + + + Si el Accordion está abierto por defecto. + + + + Un [Font Awesome icon](https://fontawesome.com/icons), [Lucide icon](https://lucide.dev/icons), o código SVG + + + + Uno de "regular", "solid", "light", "thin", "sharp-solid", "duotone", o + "brands" + diff --git a/es/content/components/callouts.mdx b/es/content/components/callouts.mdx new file mode 100644 index 000000000..6c0c06638 --- /dev/null +++ b/es/content/components/callouts.mdx @@ -0,0 +1,45 @@ +--- +title: Callout Boxes +description: Use los callouts para agregar contexto llamativo a su contenido +icon: circle-exclamation +--- + +### Callouts de Nota + +Esto agrega una nota en el contenido + +```jsx +This adds a note in the content +``` + +### Callouts de Advertencia + +Esto levanta una advertencia para tener cuidado + +```jsx +This raises a warning to watch out for +``` + +### Callouts de Información + +Esto llama la atención sobre información importante + +```jsx +This draws attention to important information +``` + +### Callouts de Consejo + +Esto sugiere un consejo útil + +```jsx +This suggests a helpful tip +``` + +### Callouts de Verificación + +Esto nos trae un estado verificado + +```jsx +This brings us a checked status +``` diff --git a/es/content/components/card-groups.mdx b/es/content/components/card-groups.mdx new file mode 100644 index 000000000..1aa7955b3 --- /dev/null +++ b/es/content/components/card-groups.mdx @@ -0,0 +1,50 @@ +--- +title: Grupos de Tarjetas +description: Muestra tarjetas lado a lado en formato de cuadrícula +icon: rectangles-mixed +--- + +El`CardGroup`componente te permite agrupar múltiples`Card`componentes juntos. Se usa más comúnmente para poner múltiples tarjetas en la misma columna. + + + + Nadie ama el dolor por el dolor mismo ni lo busca por placer + + + + El dolor es dolor, el amor es amor, el dolor se sienta aquí + + + + Para llegar al mínimo, ¿quién de nosotros realiza ejercicio físico laborioso? + + + + Excepto para obtener alguna ventaja de ello + + + + + ```jsx Card Group Example + + + Neque porro quisquam est qui dolorem ipsum quia dolor sit amet + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit + + + Ut enim ad minim veniam, quis nostrud exercitation ullamco + + + Excepteur sint occaecat cupidatat non proident + + + ``` + + +## Propiedades + + + El número de columnas por fila + diff --git a/es/content/components/cards.mdx b/es/content/components/cards.mdx new file mode 100644 index 000000000..54f89bbe8 --- /dev/null +++ b/es/content/components/cards.mdx @@ -0,0 +1,71 @@ +--- +title: Cards +description: Resalta puntos principales o enlaces con iconos personalizables +icon: rectangle +--- + + + Así es como se usa una tarjeta con un icono y un enlace. Hacer clic en esta tarjeta + te lleva a la página de Grupo de Tarjetas. + + + + ```jsx Card Example + + This is how you use a card with an icon and a link. Clicking on this card + brings you to the Card Group page. + + ``` + + ```jsx Image Card Example + + Here is an example of a card with an image + + ``` + + +### Tarjeta Horizontal + +Agrega una `horizontal` propiedad a una tarjeta para hacerla horizontal. + + + Aquí hay un ejemplo de una tarjeta horizontal + + +### Tarjeta con Imagen + +Agrega una `img` propiedad a una tarjeta para mostrar una imagen en la parte superior de la tarjeta. + + + Aquí hay un ejemplo de una tarjeta con una imagen + + +## Propiedades + + + El título de la tarjeta + + + + Un [Font Awesome icon](https://fontawesome.com/icons), [Lucide icon](https://lucide.dev/icons), o código SVG en `icon={}` + + + + Uno de `regular`, `solid`, `light`, `thin`, `sharp-solid`, `duotone`, `brands` + + + + El color del icono como código hexadecimal + + + + La URL a la que se dirigirá el usuario al hacer clic en la tarjeta + + + + Hace que la tarjeta sea más compacta y horizontal + + + + La URL o ruta local de una imagen para mostrar en la parte superior de la tarjeta + diff --git a/es/content/components/code-groups.mdx b/es/content/components/code-groups.mdx new file mode 100644 index 000000000..ceda54a97 --- /dev/null +++ b/es/content/components/code-groups.mdx @@ -0,0 +1,51 @@ +--- +title: Code Groups +description: El componente CodeGroup te permite combinar bloques de código en una visualización separada por pestañas +icon: rectangle-code +--- + +Necesitarás hacer [Code Blocks](/content/components/code) luego agregar el `` componente alrededor de ellos. Cada Code Block debe tener un nombre de archivo porque usamos los nombres para los botones de las pestañas. + +Mira abajo un ejemplo del resultado final. + + + ```javascript helloWorld.js + console.log("Hello World"); + ``` + + ```python hello_world.py + print('Hello World!') + ``` + + ```java HelloWorld.java + class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } + } + ``` + + + + ````md Code Group Example + + + ```javascript helloWorld.js + console.log("Hello World"); + ``` + + ```python hello_world.py + print('Hello World!') + ``` + + ```java HelloWorld.java + class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } + } + ``` + + + ```` + diff --git a/es/content/components/code.mdx b/es/content/components/code.mdx new file mode 100644 index 000000000..ff0795b70 --- /dev/null +++ b/es/content/components/code.mdx @@ -0,0 +1,199 @@ +--- +title: Code Blocks +description: Mostrar código con resaltado de sintaxis opcional +icon: code +--- + + + ````md Code Block Example + ```javascript Code Block Example + const hello = "world"; + ``` + ```` + + +## Bloque de Código Básico + +Use [bloques de código cercados](https://www.markdownguide.org/extended-syntax/#fenced-code-blocks) encerrando el código entre tres comillas invertidas. + +``` +helloWorld(); +``` + +````md +``` +helloWorld(); +``` +```` + +## Resaltado de Sintaxis + +Coloque el nombre de su lenguaje de programación después de las tres comillas invertidas para obtener resaltado de sintaxis. + +Usamos [Prism](https://prismjs.com/#supported-languages) para el resaltado de sintaxis. [Test Drive Prism](https://prismjs.com/test.html#language=markup) lista todos los lenguajes soportados. + +```java +class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } +} +``` + +````md +```java +class HelloWorld { + public static void main(String[] args) { + System.out.println("Hello, World!"); + } +} +``` +```` + +## Nombres + +Agregue un título después del lenguaje de programación para establecer el nombre de su ejemplo de código. El texto puede ser cualquier cosa siempre que esté en una sola línea. + +```javascript Code Block Example +const hello = "world"; +``` + +````md Code Block Example +```javascript Code Block Example +const hello = "world"; +``` +```` + +## Resaltado de Líneas + +Resalte líneas específicas en sus bloques de código agregando un comentario especial después del identificador del lenguaje. Use llaves`{}` y especifique números de línea o rangos separados por comas. + +```javascript Line Highlighting Example {1,3-5} +const greeting = "Hello, World!"; +function sayHello() { + console.log(greeting); +} +sayHello(); +``` + +````md +```javascript Line Highlighting Example {1,3-5} +const greeting = "Hello, World!"; +function sayHello() { + console.log(greeting); +} +sayHello(); +``` +```` + +## Expandible + +Si tiene un bloque de código largo y`[expandable]` después de su título para hacerlo cerrar y expandir. + +```python library.py [expandable] +from datetime import datetime, timedelta +from typing import Dict, List, Optional +from dataclasses import dataclass + +@dataclass +class Book: + title: str + author: str + isbn: str + checked_out: bool = False + due_date: Optional[datetime] = None + +class Library: + def __init__(self): + self.books: Dict[str, Book] = {} + self.checkouts: Dict[str, List[str]] = {} # patron -> list of ISBNs + + def add_book(self, book: Book) -> None: + if book.isbn in self.books: + raise ValueError(f"Book with ISBN {book.isbn} already exists") + self.books[book.isbn] = book + + def checkout_book(self, isbn: str, patron: str, days: int = 14) -> None: + if patron not in self.checkouts: + self.checkouts[patron] = [] + + book = self.books.get(isbn) + if not book: + raise ValueError("Book not found") + + if book.checked_out: + raise ValueError("Book is already checked out") + + if len(self.checkouts[patron]) >= 3: + raise ValueError("Patron has reached checkout limit") + + book.checked_out = True + book.due_date = datetime.now() + timedelta(days=days) + self.checkouts[patron].append(isbn) + + def return_book(self, isbn: str) -> float: + book = self.books.get(isbn) + if not book or not book.checked_out: + raise ValueError("Book not found or not checked out") + + late_fee = 0.0 + if datetime.now() > book.due_date: + days_late = (datetime.now() - book.due_date).days + late_fee = days_late * 0.50 + + book.checked_out = False + book.due_date = None + + # Remove from patron's checkouts + for patron, books in self.checkouts.items(): + if isbn in books: + books.remove(isbn) + break + + return late_fee + + def search(self, query: str) -> List[Book]: + query = query.lower() + return [ + book for book in self.books.values() + if query in book.title.lower() or query in book.author.lower() + ] + +def main(): + library = Library() + + # Add some books + books = [ + Book("The Hobbit", "J.R.R. Tolkien", "978-0-261-10295-4"), + Book("1984", "George Orwell", "978-0-452-28423-4"), + ] + + for book in books: + library.add_book(book) + + # Checkout and return example + library.checkout_book("978-0-261-10295-4", "patron123") + late_fee = library.return_book("978-0-261-10295-4") + print(f"Late fee: ${late_fee:.2f}") + +if __name__ == "__main__": + main() +``` + +````md +```javascript Expandable Example [expandable] +const greeting = "Hello, World!"; +function sayHello() { + console.log(greeting); +} +sayHello(); +``` +```` + +## Grupos de Código + +¿Quiere mostrar múltiples ejemplos de código en una caja de código? Consulte la documentación de Grupos de Código: + + + Lea la referencia para el componente de Grupo de Código + diff --git a/es/content/components/expandables.mdx b/es/content/components/expandables.mdx new file mode 100644 index 000000000..878669556 --- /dev/null +++ b/es/content/components/expandables.mdx @@ -0,0 +1,43 @@ +--- +title: Expandables +description: Alternar para mostrar propiedades anidadas. +icon: caret-down +--- + + + + + El nombre completo del usuario + + + + Si el usuario es mayor de 21 años + + + + + + ```jsx Expandable Example + + + + The full name of the user + + + + Whether the user is over 21 years old + + + + ``` + + +## Props + + + El nombre del objeto que estás mostrando. Se usa para generar el texto "Mostrar NOMBRE" y "Ocultar NOMBRE". + + + + Establecer como verdadero para mostrar el componente abierto cuando la página carga. + diff --git a/es/content/components/frames.mdx b/es/content/components/frames.mdx new file mode 100644 index 000000000..fd7065903 --- /dev/null +++ b/es/content/components/frames.mdx @@ -0,0 +1,39 @@ +--- +title: Frames +description: Use el componente Frame para envolver imágenes u otros componentes en un contenedor. +icon: frame +--- + +Los Frames son muy útiles si desea centrar una imagen. + + + + + +## Subtítulos + +Puede agregar contexto adicional a una imagen usando el `caption` prop opcional. + + + + + +## Props + + + Texto de subtítulo opcional para mostrar centrado debajo de su componente. + + + + ```jsx Frame + + + + ``` + + ```jsx Frame with Captions + + + + ``` + diff --git a/es/content/components/icons.mdx b/es/content/components/icons.mdx new file mode 100644 index 000000000..481c50c3d --- /dev/null +++ b/es/content/components/icons.mdx @@ -0,0 +1,42 @@ +--- +title: Icons +description: Use [Font Awesome](https://fontawesome.com/icons) or + [Lucide](https://lucide.dev/icons) icons anywhere in the doc +icon: icons +--- + + + + + ```jsx Icon Example + + ``` + + +## Íconos en línea + +El ícono se colocará en línea cuando se use en un párrafo. + +```markdown Inline Icon Example + The documentation you want, effortlessly +``` + + La documentación que deseas, sin esfuerzo + +## Props + + + Un [Font Awesome](https://fontawesome.com/icons) ícono + + + + Uno de `regular`, `solid`, `light`, `thin`, `sharp-solid`, `duotone`, `brands` + + + + El color del ícono como código hexadecimal (ej., `#FF5733`) + + + + El tamaño del ícono en píxeles + diff --git a/es/content/components/mermaid-diagrams.mdx b/es/content/components/mermaid-diagrams.mdx new file mode 100644 index 000000000..e2de1bb1b --- /dev/null +++ b/es/content/components/mermaid-diagrams.mdx @@ -0,0 +1,71 @@ +--- +title: Diagramas Mermaid +description: Muestra diagramas usando Mermaid +icon: diagram-project +--- + + + ````md Mermaid Flowchart Example + ```mermaid + flowchart LR + subgraph subgraph1 + direction TB + top1[top] --> bottom1[bottom] + end + subgraph subgraph2 + direction TB + top2[top] --> bottom2[bottom] + end + %% ^ These subgraphs are identical, except for the links to them: + + %% Link *to* subgraph1: subgraph1 direction is maintained + outside --> subgraph1 + %% Link *within* subgraph2: + %% subgraph2 inherits the direction of the top-level graph (LR) + outside ---> top2 + ``` + ```` + + +[Mermaid](https://mermaid.js.org/)te permite crear diagramas visuales usando texto y código. + +```mermaid + flowchart LR + subgraph subgraph1 + direction TB + top1[top] --> bottom1[bottom] + end + subgraph subgraph2 + direction TB + top2[top] --> bottom2[bottom] + end + %% ^ These subgraphs are identical, except for the links to them: + + %% Link *to* subgraph1: subgraph1 direction is maintained + outside --> subgraph1 + %% Link *within* subgraph2: + %% subgraph2 inherits the direction of the top-level graph (LR) + outside ---> top2 +``` + +Puedes crear lo siguiente usando diagramas Mermaid: + +* Diagrama de flujo +* Diagrama de secuencia +* Diagrama de clases +* Diagrama de estado +* Diagrama de relación de entidades +* Viaje del usuario +* y más + +Para una lista completa de diagramas soportados por Mermaid, consulta su[sitio web](https://mermaid.js.org/). + +## Sintaxis para diagramas Mermaid + +Para crear un diagrama de flujo, puedes escribir el diagrama de flujo Mermaid dentro de un bloque de código Mermaid. + +````md +```mermaid +// Your mermaid code block here +``` +```` diff --git a/es/content/components/params.mdx b/es/content/components/params.mdx new file mode 100644 index 000000000..f23dbe032 --- /dev/null +++ b/es/content/components/params.mdx @@ -0,0 +1,69 @@ +--- +title: Campos de Parámetros +description: Configure parámetros de ruta, consulta y cuerpo +icon: text-size +--- + +`ParamField` componentes ayudan a definir los parámetros para sus APIs o SDKs. Agregar un ParamField automáticamente agregará un [API Playground](/api-playground/overview). + + + Un ejemplo de un campo de parámetro + + + + ```jsx Path Example + + An example of a parameter field + + ``` + + ```jsx Query Example + + The filtering command used to sort through the users + + ``` + + ```jsx Body Example + + The age of the user. Cannot be less than 0 + + ``` + + +## Props + + + Si es un parámetro de consulta, ruta, cuerpo o encabezado seguido del nombre + + + + Tipo esperado del valor del parámetro + + Soporta `number`, `string`, `bool`, `object`. + + Los arrays pueden definirse usando el sufijo `[]`. Por ejemplo `string[]`. + + + + Indica si el parámetro es requerido + + + + Indica si el parámetro está obsoleto + + + + Valor predeterminado utilizado por el servidor si la solicitud no proporciona un valor + + + + Valor que se utilizará para inicializar el playground + + + + Texto de marcador de posición para la entrada en el playground + + + + Descripción del parámetro (markdown habilitado) + diff --git a/es/content/components/responses.mdx b/es/content/components/responses.mdx new file mode 100644 index 000000000..a3404c5d4 --- /dev/null +++ b/es/content/components/responses.mdx @@ -0,0 +1,37 @@ +--- +title: Response Fields +description: Mostrar valores de respuesta de API +icon: message +--- + +El componente `` está diseñado para definir los valores de retorno de una API. Muchos documentos también usan `` en páginas cuando necesita listar los tipos de algo. + + + Un ejemplo de campo de respuesta + + + + ```jsx ResponseField Example + + A response field example + + ``` + + +## Props + + + El nombre del valor de respuesta. + + + + Tipo esperado del valor de respuesta + + + + El valor predeterminado. + + + + Mostrar "required" junto al nombre del campo. + diff --git a/es/content/components/steps.mdx b/es/content/components/steps.mdx new file mode 100644 index 000000000..72e10c45a --- /dev/null +++ b/es/content/components/steps.mdx @@ -0,0 +1,73 @@ +--- +title: Steps +description: Secuencia contenido usando el componente Steps +icon: arrow-progress +--- + +Los Steps son la mejor manera de mostrar una serie de acciones o eventos a tus usuarios. Puedes agregar tantos pasos como desees. + + + + Estas son instrucciones o contenido que solo pertenecen al primer paso. + + + + Estas son instrucciones o contenido que solo pertenecen al segundo paso. + + + + Estas son instrucciones o contenido que solo pertenecen al tercer paso. + + + + + ```jsx Steps Example + + + These are instructions or content that only pertain to the first step. + + + These are instructions or content that only pertain to the second step. + + + These are instructions or content that only pertain to the third step. + + + ``` + + +## Props de Steps + + + Una lista de `Step` componentes. + + + + El tamaño de los títulos de los pasos. Uno de `p`, `h2` y `h3`. + + +## Propiedades de Pasos Individuales + + + El contenido de un paso ya sea como texto plano o componentes. + + + + Un [Font Awesome icon](https://fontawesome.com/icons), [Lucide icon](https://lucide.dev/icons), o código SVG en `icon={}` + + + + Uno de `regular`, `solid`, `light`, `thin`, `sharp-solid`, `duotone`, `brands` + + + + El título es el texto principal para el paso y aparece junto al indicador. + + + + El número del paso. + + + + El tamaño de los títulos de los pasos. Uno de `p`, `h2` y `h3`. + diff --git a/es/content/components/sticky-examples.mdx b/es/content/components/sticky-examples.mdx new file mode 100644 index 000000000..0222abc31 --- /dev/null +++ b/es/content/components/sticky-examples.mdx @@ -0,0 +1,44 @@ +--- +title: Sidebar Code Examples +description: Mostrar bloques de código en la parte superior derecha de la página en dispositivos de escritorio +icon: sidebar-flip +--- + +Los `` y `` fijan bloques de código en la parte superior derecha de una página incluso mientras te desplazas. Los componentes funcionan en todas las páginas incluso si no usas un área de pruebas de API. + +`` y `` se muestran como bloques de código regulares en móvil. + +## Ejemplo de Solicitud + +El `` componente funciona similar a [CodeGroup](/content/components/code-groups), pero muestra el contenido de la solicitud en la barra lateral derecha. Por lo tanto, puedes poner múltiples bloques de código dentro de ``. + +Por favor, establece un nombre en cada bloque de código que pongas dentro de RequestExample. + + + ````md RequestExample Example + + + ```bash Request + curl --request POST \ + --url https://dog-api.kinduff.com/api/facts + ``` + + + ```` + + +## Ejemplo de Respuesta + +El `` componente es el mismo que `` pero se mostrará debajo de él. + + + ````md ResponseExample Example + + + ```json Response + { "status": "success" } + ``` + + + ```` + diff --git a/es/content/components/tabs.mdx b/es/content/components/tabs.mdx new file mode 100644 index 000000000..3388febdd --- /dev/null +++ b/es/content/components/tabs.mdx @@ -0,0 +1,43 @@ +--- +title: Tabs +description: Alterna contenido usando el componente Tabs +icon: window-restore +--- + +Puedes agregar cualquier número de pestañas. + + + + ☝️ Bienvenido al contenido que solo puedes ver dentro de la primera pestaña. + + + + ✌️ Aquí está el contenido que solo está dentro de la segunda pestaña. + + + + 💪 Aquí está el contenido que solo está dentro de la tercera pestaña. + + + + + ```jsx Tabs Example + + + ☝️ Welcome to the content that you can only see inside the first Tab. + + + ✌️ Here's content that's only inside the second Tab. + + + 💪 Here's content that's only inside the third Tab. + + + ``` + + +## Propiedades de Tab + + + El título de la pestaña. Los títulos cortos son más fáciles de navegar. + diff --git a/es/content/components/tooltips.mdx b/es/content/components/tooltips.mdx new file mode 100644 index 000000000..af9c0b351 --- /dev/null +++ b/es/content/components/tooltips.mdx @@ -0,0 +1,13 @@ +--- +title: Tooltips +description: Muestra una definición cuando pasas el cursor sobre el texto. +icon: message-lines +--- + +Pasa el cursor sobre mí y verás un tooltip en acción + + + ```jsx Tooltip Example + Hover over me + ``` + diff --git a/es/content/components/update.mdx b/es/content/components/update.mdx new file mode 100644 index 000000000..2f4ca8c96 --- /dev/null +++ b/es/content/components/update.mdx @@ -0,0 +1,57 @@ +--- +title: Update +description: Realizar un seguimiento de cambios y actualizaciones +icon: rectangle-history +--- + +El `Update` componente se utiliza para realizar un seguimiento de cambios y actualizaciones. + + + + + + + ## Registro de cambios + + Puede agregar cualquier cosa aquí, como una captura de pantalla, un fragmento de código o una lista de cambios. + + #### Características + + * Diseño responsivo + * Sección fija para cada registro de cambios + + + + ### Cómo usar + + ```md + + This is how you use a changelog with a label + and a description. + + + This is how you use a changelog with a label + and a description. + + ``` + + Puede usar múltiples `Update` componentes para crear registros de cambios. + + + + Cada `label` crea un ancla y también aparece en la tabla de contenidos a la derecha. + + +## Props + + + Etiqueta en el registro de cambios, en el lado izquierdo fijo. + + + + Descripción debajo de la etiqueta en la vista previa del Registro de cambios. + + + + Etiquetas para el registro de cambios, se mostrarán como filtros en el panel del lado derecho + diff --git a/es/development.mdx b/es/development.mdx new file mode 100644 index 000000000..ea879dba8 --- /dev/null +++ b/es/development.mdx @@ -0,0 +1,120 @@ +--- +title: Desarrollo Local +description: Vista previa de cambios localmente para actualizar tu documentación +--- + + + **Prerrequisito**: Por favor instala Node.js (versión 19 o superior) antes de continuar. + + +**Paso 1**: Instala el CLI de Mintlify: + + + ```bash npm + npm i -g mintlify + ``` + + ```bash yarn + yarn global add mintlify + ``` + + ```bash pnpm + pnpm add -g mintlify + ``` + + +**Paso 2**: Navega al directorio de documentación (donde está el archivo `docs.json` y ejecuta el siguiente comando: + +```bash +mintlify dev +``` + +Alternativamente, si no deseas instalar el CLI globalmente, puedes usar un script de ejecución disponible: + + + ```bash npm + npx mintlify dev + ``` + + ```bash yarn + yarn dlx mintlify dev + ``` + + ```bash pnpm + pnpm dlx mintlify dev + ``` + + + + El script de ejecución "dlx" de Yarn requiere yarn versión >2. Ver [aquí](https://yarnpkg.com/cli/dlx) para más información. + + +Una vista previa local de tu documentación estará disponible en `http://localhost:3000`. + +### Puertos Personalizados + +Por defecto, Mintlify usa el puerto 3000. Puedes personalizar el puerto usando la bandera `--port`. Para ejecutar Mintlify en el puerto 3333, por ejemplo, usa este comando: + +```bash +mintlify dev --port 3333 +``` + +Si intentas ejecutar en un puerto que ya está en uso, utilizará el siguiente puerto disponible: + +```md +Port 3000 is already in use. Trying 3001 instead. +``` + +## Versiones + +Ten en cuenta que cada versión del CLI está asociada con una versión específica de Mintlify. Si tu sitio web local no coincide con la versión de producción, por favor actualiza el CLI: + + + ```bash npm + npm i -g mintlify@latest + ``` + + ```bash yarn + yarn global upgrade mintlify + ``` + + ```bash pnpm + pnpm up --global mintlify + ``` + + +## Validación de Enlaces + +El CLI puede ayudar con la validación de enlaces de referencia en tu documentación. Para identificar enlaces rotos, usa el siguiente comando: + +```bash +mintlify broken-links +``` + +## Despliegue + +Si el despliegue es exitoso, deberías ver lo siguiente: + + + + + +## Formato de Código + +Sugerimos usar extensiones en tu IDE para reconocer y formatear MDX. Si eres usuario de VSCode, considera la [extensión MDX VSCode](https://marketplace.visualstudio.com/items?itemName=unifiedjs.vscode-mdx) para resaltado de sintaxis, y [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode) para el formato del código. + +## Solución de Problemas + + + + Esto puede deberse a una versión desactualizada de node. Intenta lo siguiente: + + 1. Elimina la versión actualmente instalada de mintlify: `npm remove -g mintlify` + 2. Actualiza a Node v19 o superior. + 3. Reinstala mintlify: `npm install -g mintlify` + + + + Solución: Ve a la raíz de tu dispositivo y elimina la carpeta \~/.mintlify. Después, ejecuta `mintlify dev` de nuevo. + + diff --git a/es/guides/auth0.mdx b/es/guides/auth0.mdx new file mode 100644 index 000000000..eed714185 --- /dev/null +++ b/es/guides/auth0.mdx @@ -0,0 +1,63 @@ +--- +title: Usando Auth0 con el OAuth Handshake +description: Si Auth0 es la fuente de verdad para los datos de tus usuarios, puedes configurar + Mintlify como una aplicación cliente OAuth para autenticar a tus usuarios. +--- + + + **Aviso de Seguridad**: Si bien proporcionamos esta guía para ayudarte a integrar Auth0 con Mintlify, por favor consulta con tu equipo de seguridad antes de implementar cualquier solución de autenticación. Mintlify no es responsable de ningún problema de seguridad que pueda surgir de tu implementación específica. + + +## Descripción general + +Esta guía te explica cómo configurar Auth0 como proveedor de autenticación para tu documentación de Mintlify. Al final, tus usuarios podrán iniciar sesión en tu documentación usando sus credenciales de Auth0. + + + + Inicia sesión en tu panel de Auth0 y navega a **Applications** > **Applications**. Haz clic en el botón **Create Application**, dale un nombre a tu aplicación (por ejemplo, "Mintlify"), y selecciona **Regular Web Applications** como tipo de aplicación. Luego haz clic en **Create**. + + ![Creating a new application in Auth0](/images/guides/auth0/auth0-create-application.png) + + + + Después de crear tu aplicación, serás dirigido a la página de configuración de la aplicación. Aquí encontrarás las credenciales esenciales necesarias para la integración OAuth: + + ![Auth0 client settings page](/images/guides/auth0/auth0clientsettings.png) + + Toma nota de la siguiente información: + + * **Domain**: Este es tu dominio de inquilino de Auth0 (por ejemplo, `your-tenant.auth0.com`) + * **Client ID**: El identificador público de tu aplicación + * **Client Secret**: La clave secreta de tu aplicación (mantenla segura) + + Necesitarás estos valores para configurar Mintlify en el siguiente paso. + + + + Navega a tu Panel de Mintlify y ve a la sección **Settings** > **Authentication**. Selecciona **OAuth** como tu método de autenticación y verás el formulario de configuración de OAuth: + + ![Mintlify OAuth client settings](/images/guides/auth0/mintlifyoauthclientsettings.png) + + Completa el formulario con los siguientes valores: + + * **Authorization URL**: `https://YOUR_AUTH0_DOMAIN/authorize` (reemplaza `YOUR_AUTH0_DOMAIN` con tu dominio real de Auth0 del paso 2) + * **Client ID**: Ingresa el Client ID de tu aplicación Auth0 + * **Client Secret**: Ingresa el Client Secret de tu aplicación Auth0 + * **Scopes**: Déjalo en blanco a menos que tengas scopes personalizados configurados en Auth0 + * **Token URL**: `https://YOUR_AUTH0_DOMAIN/oauth/token` (reemplaza `YOUR_AUTH0_DOMAIN` con tu dominio real de Auth0) + + Después de completar estos detalles, haz clic en **Save changes** para guardar tu configuración de OAuth. + + + + Mintlify generará una URL de Redirección única que Auth0 necesita reconocer para que el flujo OAuth funcione correctamente. + + Copia la URL de Redirección desde la configuración de Autenticación de tu Panel de Mintlify: + ![Mintlify redirect URL](/images/guides/auth0/mintlifyredirecturl.png) + + Regresa a la página de configuración de tu aplicación Auth0, desplázate hacia abajo hasta la sección **Application URIs** y pega la URL de Redirección en el campo **Allowed Callback URLs**: + ![Auth0 redirect URL configuration](/images/guides/auth0/auth0redirecturl.png) + + Haz clic en **Save Changes** en la parte inferior de la página de Auth0 para aplicar esta configuración. + + diff --git a/es/image-embeds.mdx b/es/image-embeds.mdx new file mode 100644 index 000000000..4cc11ea8c --- /dev/null +++ b/es/image-embeds.mdx @@ -0,0 +1,130 @@ +--- +title: Imágenes, Videos y Embebidos +description: Agregar imágenes, videos y otros elementos HTML +icon: image +--- + + + + + Mintlify admite archivos de hasta 5 MB. Para usar archivos más grandes, considera un servicio de almacenamiento como Cloudinary y embébelos en tu documentación usando la URL. + + +## Imagen + +### Usando Markdown + +La [sintaxis markdown](https://www.markdownguide.org/basic-syntax/#images) te permite agregar imágenes usando el siguiente código + +```md +![title](/path/image.jpg) +``` + +Ten en cuenta que el tamaño del archivo de imagen debe ser menor a 5MB. De lo contrario, recomendamos alojarlo en un servicio como [Cloudinary](https://cloudinary.com/) o [S3](https://aws.amazon.com/s3/). Luego puedes usar esa URL y embeber. + +### Usando Embebidos + +Para obtener más personalización con las imágenes, también puedes usar embebidos para agregar imágenes. + +```html + +``` + +### Deshabilitar Zoom de Imagen + +Para deshabilitar el zoom predeterminado al hacer clic en las imágenes, agrega la propiedad noZoom a los embebidos de imagen. + +```html + +``` + +### Enlazando Imágenes + +Para enlazar una imagen, por ejemplo para crear un botón en tu documentación, envuelve la imagen en un enlace con la`noZoom` propiedad. Las imágenes en`a` etiquetas tendrán automáticamente un cursor de puntero. + +```html + + + +``` + +### Modo Oscuro + +Para usar imágenes diferentes para modo claro y oscuro, usa Tailwind CSS para ocultar y mostrar imágenes. + +```html + + +``` + +### Relacionado + +Para más información, recomendamos las siguientes secciones: + + + Lee la referencia para el componente Frame + + +## Videos + + +``` + +Para otros videos, usa: + +```html + +``` + +Para reproducir el video automáticamente, usa: + +```html + +``` + + + Ya que Mintlify necesita adherirse a la sintaxis JSX, los atributos de dos palabras deberán escribirse en camelCase: autoPlay, playsInline. + + +## iFrames + +Carga otra página HTML dentro del documento. + +```html + +``` + + + Aunque no es obligatorio, recomendamos agregar los`alt` y `title` atributos a las imágenes para mejor SEO y accesibilidad. Aprende más en[imagen + SEO](https://yoast.com/image-seo-alt-tag-and-title-tag-optimization/). + diff --git a/es/integrations/analytics/amplitude.mdx b/es/integrations/analytics/amplitude.mdx new file mode 100644 index 000000000..ff0849a43 --- /dev/null +++ b/es/integrations/analytics/amplitude.mdx @@ -0,0 +1,23 @@ +--- +title: Amplitude +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Amplitude. + + + ```json Analytics options in docs.json + "integrations": { + "amplitude": { + "apiKey": "required" + } + } + ``` + + ```json Example + "integrations": { + "amplitude": { + "apiKey": "76bb138bf3fbf58186XXX00000" + } + } + ``` + diff --git a/es/integrations/analytics/clearbit.mdx b/es/integrations/analytics/clearbit.mdx new file mode 100644 index 000000000..31ce10aa2 --- /dev/null +++ b/es/integrations/analytics/clearbit.mdx @@ -0,0 +1,23 @@ +--- +title: Clearbit +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Clearbit. + + + ```json Analytics options in docs.json + "integrations": { + "clearbit": { + "publicApiKey": "required" + } + } + ``` + + ```json Example + "integrations": { + "clearbit": { + "publicApiKey": "pk_1a1882" + } + } + ``` + diff --git a/es/integrations/analytics/fathom.mdx b/es/integrations/analytics/fathom.mdx new file mode 100644 index 000000000..c22efc08d --- /dev/null +++ b/es/integrations/analytics/fathom.mdx @@ -0,0 +1,25 @@ +--- +title: Fathom +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Fathom. + +Puede obtener el `siteId` desde la configuración de su script. + + + ```json Analytics options in docs.json + "integrations": { + "fathom": { + "siteId": "required" + } + } + ``` + + ```json Example + "integrations": { + "fathom": { + "siteId": "YSVMSDAY" + } + } + ``` + diff --git a/es/integrations/analytics/google-analytics.mdx b/es/integrations/analytics/google-analytics.mdx new file mode 100644 index 000000000..77a302a01 --- /dev/null +++ b/es/integrations/analytics/google-analytics.mdx @@ -0,0 +1,43 @@ +--- +title: Google Analytics 4 +--- + +Necesitarás generar una nueva propiedadGA4para usar con Mintlify. Los datos recopilados irán al mismo proyecto que tus otros datos de Google Analytics. + +Si está utilizando la versión antigua de Google Analytics, Universal Analytics, aún podrá generar una GA4 propiedad. GA4 los datos son ligeramente diferentes de los datos de UA pero aún se recopilan en el mismo proyecto. + +## Cómo Conectar GA4 a Mintlify + +### Crear un Stream Web + +Necesitará crear un stream web para obtener el ID de Medición para poner en Mintlify. + +Haga clic en el engranaje en la parte inferior izquierda de la pantalla de Google Analytics. Luego haga clic en Flujos de datos. + +![](/images/ga4-web-streams.png) + +Cree un Stream Web y coloque la URL de su sitio de documentación Mintlify como la URL del stream. + +Su ID de Medición se parece a `G-XXXXXXX` y aparecerá bajo Detalles del Stream inmediatamente después de crear el Stream Web. + +### Poner ID de Medición en docs.json + +Agregue su ID de Medición a su `docs.json` archivo así: + +```json docs.json +"integrations": { + "ga4": { + "measurementId": "G-XXXXXXX" + } +} +``` + +### Esperar + +Google Analytics tarda de dos a tres días en mostrar sus datos. + +Puede usar el [Depurador de Google Analytics](https://chrome.google.com/webstore/detail/google-analytics-debugger/jnkmfdileelhofjcijamephohjechhna?hl=en) para verificar que los análisis estén habilitados correctamente. La extensión registrará en la consola de su navegador cada vez que GA4 realice una solicitud. + + + Los enlaces de vista previa tienen los análisis desactivados. + diff --git a/es/integrations/analytics/google-tag-manager.mdx b/es/integrations/analytics/google-tag-manager.mdx new file mode 100644 index 000000000..f90f5fb70 --- /dev/null +++ b/es/integrations/analytics/google-tag-manager.mdx @@ -0,0 +1,25 @@ +--- +title: Google Tag Manager +--- + +Agregue su ID de etiqueta a `docs.json` archivo y nosotros inyectaremos el script de Google Tag Manager en todas sus páginas. + +Usted es responsable de configurar los banners de consentimiento de cookies con Google Tag Manager si los necesita. + + + ```json Analytics options in docs.json + "integrations": { + "gtm": { + "tagId": "required" + } + } + ``` + + ```json Example + "integrations": { + "gtm": { + "tagId": "GTM-MGBL4PW" + } + } + ``` + diff --git a/es/integrations/analytics/heap.mdx b/es/integrations/analytics/heap.mdx new file mode 100644 index 000000000..5f23852ab --- /dev/null +++ b/es/integrations/analytics/heap.mdx @@ -0,0 +1,23 @@ +--- +title: Heap +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Heap. + + + ```json Analytics options in docs.json + "integrations": { + "heap": { + "appId": "required" + } + } + ``` + + ```json Example + "integrations": { + "heap": { + "appId": "1234567890" + } + } + ``` + diff --git a/es/integrations/analytics/hotjar.mdx b/es/integrations/analytics/hotjar.mdx new file mode 100644 index 000000000..2e27b0804 --- /dev/null +++ b/es/integrations/analytics/hotjar.mdx @@ -0,0 +1,14 @@ +--- +title: HotJar +--- + +Agregue lo siguiente a su`docs.json` archivo para enviar análisis a HotJar. + +```json Analytics options in docs.json +"integrations": { + "hotjar": { + "hjid": "required", + "hjsv": "required" + } +} +``` diff --git a/es/integrations/analytics/koala.mdx b/es/integrations/analytics/koala.mdx new file mode 100644 index 000000000..d97249449 --- /dev/null +++ b/es/integrations/analytics/koala.mdx @@ -0,0 +1,23 @@ +--- +title: Koala +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Koala. + + + ```json Analytics options in docs.json + "integrations": { + "koala": { + "publicApiKey": "required" + } + } + ``` + + ```json Example + "integrations": { + "koala": { + "publicApiKey": "pk_1a1882" + } + } + ``` + diff --git a/es/integrations/analytics/logrocket.mdx b/es/integrations/analytics/logrocket.mdx new file mode 100644 index 000000000..f12bfe421 --- /dev/null +++ b/es/integrations/analytics/logrocket.mdx @@ -0,0 +1,13 @@ +--- +title: LogRocket +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a LogRocket. + +```json Analytics options in docs.json +"integrations": { + "logrocket": { + "apiKey": "required" + } +} +``` diff --git a/es/integrations/analytics/mixpanel.mdx b/es/integrations/analytics/mixpanel.mdx new file mode 100644 index 000000000..d60b36e7d --- /dev/null +++ b/es/integrations/analytics/mixpanel.mdx @@ -0,0 +1,13 @@ +--- +title: Mixpanel +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Mixpanel. + +```json Analytics options in docs.json +"integrations": { + "mixpanel": { + "projectToken": "required" + } +} +``` diff --git a/es/integrations/analytics/overview.mdx b/es/integrations/analytics/overview.mdx new file mode 100644 index 000000000..a817779e4 --- /dev/null +++ b/es/integrations/analytics/overview.mdx @@ -0,0 +1,612 @@ +--- +title: Analytics Integrations +description: Integrar con una plataforma de análisis para rastrear eventos +--- + +Envía automáticamente datos sobre el compromiso con tu documentación a tu proveedor de análisis de terceros. + +## Todas las Integraciones + + + + + +} + /> + + + + + + +} + /> + + + + + + + + +} + /> + + + + + + + + + + +} + /> + + + + + + + + + + +} + /> + + + + + +} + /> + + + + + +} + /> + + + + + + +} + /> + + + + + + + + + + + + + + + + + + + + + + + + + + + +} + /> + + + + + + + + + + + + + + + + + + + + + + + + + + +} + /> + + + + + + + +} + /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +} + /> + + + + + +} + /> + + + + + + + + +} + /> + + +## Habilitando Analytics + +Configura tus claves de analytics en `docs.json`. Puedes añadir un número ilimitado de integraciones de analytics de forma gratuita. + +La sintaxis para `docs.json` está a continuación. Solo necesitas incluir entradas para las plataformas que deseas conectar. + + + ```json Analytics options in docs.json + "integrations": { + "amplitude": { + "apiKey": "required" + }, + "clearbit": { + "publicApiKey": "required" + }, + "fathom": { + "siteId": "required" + }, + "ga4": { + "measurementId": "required" + }, + "gtm": { + "tagId": "required" + }, + "hotjar": { + "hjid": "required", + "hjsv": "required" + }, + "koala": { + "publicApiKey": "required" + }, + "logrocket": { + "appId": "required" + }, + "mixpanel": { + "projectToken": "required" + }, + "pirsch": { + "id": "required" + }, + "plausible": { + "domain": "required" + }, + "posthog": { + "apiKey": "required", + "apiHost": "optional" + }, + "segment": { + "key": "required" + }, + } + ``` + + ```json Google Analytics 4 Example + "integrations": { + "ga4": { + "measurementId": "G-XXXXXXX" + } + } + ``` + + +## Preguntas Frecuentes + + + * `expandable_open` + + * `expandable_close` + + * `accordion_open` + + * `accordion_close` + + * `header_nav_item_click` + + * `cta_click` + + * `scroll_to_bottom` + + * `search_close` + + * `api_playground_call` + + * `search_result_click` + + * `chat_enter` + + * `chat_followup` + + * `chat_completed` + + * `code_block_copy` + + * `chat_shared` + + * `thumb_vote` + + * `powered_by_mintlify_click` + + * `ai_chat_citation_click` + + * `ai_chat_feedback_positive_click` + + * `ai_chat_feedback_negative_click` + + * `pageview` + diff --git a/es/integrations/analytics/pirsch.mdx b/es/integrations/analytics/pirsch.mdx new file mode 100644 index 000000000..2f150bc6d --- /dev/null +++ b/es/integrations/analytics/pirsch.mdx @@ -0,0 +1,25 @@ +--- +title: Pirsch +--- + +Agregue lo siguiente a su `docs.json` archivo para enviar análisis a Pirsch. + +Puede obtener su ID de sitio desde Configuración > Desarrollador > Código de Identificación. + + + ```json Analytics options in docs.json + "integrations": { + "pirsch": { + "id": "required" + } + } + ``` + + ```json Example + "integrations": { + "pirsch": { + "id": "8Kw7OKxBfswOjnKGZa7P9Day8JmVYwTp" + } + } + ``` + diff --git a/es/integrations/analytics/plausible.mdx b/es/integrations/analytics/plausible.mdx new file mode 100644 index 000000000..dbf964c9b --- /dev/null +++ b/es/integrations/analytics/plausible.mdx @@ -0,0 +1,28 @@ +--- +title: Plausible +--- + +Agregue el dominio de su sitio a `docs.json` para enviar análisis a Plausible. + + + No incluya `https://` para el dominio o servidor. + + + + ```json Analytics options in docs.json + "integrations": { + "plausible": { + "domain": "required", + "server": "optional" + } + } + ``` + + ```json Example + "integrations": { + "plausible": { + "domain": "docs.domain.com" + } + } + ``` + diff --git a/es/integrations/analytics/posthog.mdx b/es/integrations/analytics/posthog.mdx new file mode 100644 index 000000000..de0542f67 --- /dev/null +++ b/es/integrations/analytics/posthog.mdx @@ -0,0 +1,36 @@ +--- +title: PostHog +--- + +Agrega lo siguiente a tu `docs.json` archivo para enviar analíticas a PostHog. + +Solo necesitas incluir `apiHost` si estás auto-alojando PostHog. Enviamos eventos a `https://app.posthog.com` por defecto. + + + ```json Analytics options in docs.json + "integrations": { + "posthog": { + "apiKey": "YOUR_POSTHOG_PROJECT_API_KEY", + "apiHost": "optional" + } + } + ``` + + ```json Example + "integrations": { + "posthog": { + "apiKey": "phc_TXdpocbYTeZVm5VJmMzHTMrCofBQu3e0kN7HGMNGTVW" + } + } + ``` + + +
+ + + Habilitar las analíticas de PostHog deshabilitará las analíticas en el panel de Mintlify. + + +## Grabaciones de Sesión + +Necesitas agregar la URL de tu sitio web de documentación a los "Dominios autorizados para grabaciones" de Posthog antes de poder recibir grabaciones de sesión. La opción para agregar tu URL está en la configuración del proyecto de Posthog. diff --git a/es/integrations/analytics/segment.mdx b/es/integrations/analytics/segment.mdx new file mode 100644 index 000000000..e7cebeab6 --- /dev/null +++ b/es/integrations/analytics/segment.mdx @@ -0,0 +1,23 @@ +--- +title: Segment +--- + +Agrega tu clave de escritura de Segment a tu archivo`docs.json` para enviar análisis a Segment. + + + ```json Analytics options in docs.json + "integrations": { + "segment": { + "key": "required", + } + } + ``` + + ```json Example + "integrations": { + "segment": { + "key": "nqJxiRG15Y6M594P8Sb8ESEciU3VC2" + } + } + ``` + diff --git a/es/integrations/privacy/osano.mdx b/es/integrations/privacy/osano.mdx new file mode 100644 index 000000000..74ff5f5b7 --- /dev/null +++ b/es/integrations/privacy/osano.mdx @@ -0,0 +1,25 @@ +--- +title: Osano +--- + +Agregue lo siguiente a su archivo `docs.json` para agregar el [Osano](https://www.osano.com/) administrador de consentimiento de cookies. + + + ```json Integration options in docs.json + "integrations": { + "osano": "SOURCE" + } + ``` + + ```json Example + "integrations": { + "osano": "https://cmp.osano.com/2sUB2dqwqdkks/8dqwd-dwd86£-4a9b/osano.js" + } + ``` + + +El `SOURCE` se puede encontrar como el valor `src` en el fragmento de código generado por Osano. Siempre comienza con `https://cmp.osano.com/`. + +```html Code snippet from Osano +