Swadhin Biswas Feature/ai code reviewer (#73) · 8/2/2026
105a287
27 lines · 700 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
/**
 * SAML 2.0 Service Provider (SP) Metadata Endpoint
 * GET /api/auth/saml/metadata
 * Exposes SAML SP XML metadata for IdP discovery
 */

import type { APIRoute } from "astro";
import { generateSPMetadata } from "@/lib/saml";

export const GET: APIRoute = async ({ url }) => {
    const baseUrl = new URL(url).origin;
    const spEntityId = `${baseUrl}/api/auth/saml/metadata`;
    const callbackUrl = `${baseUrl}/api/auth/saml/callback`;

    const metadataXml = generateSPMetadata({
        spEntityId,
        callbackUrl,
    });

    return new Response(metadataXml, {
        status: 200,
        headers: {
            "Content-Type": "application/samlmetadata+xml",
        },
    });
};