# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for Edge Impulse Third Party Auth API version: 1.0.0 extends: openapi/edge-impulse-third-party-auth-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-10-01' generator: build-phrasing.py label: Generated by API Evangelist operations: 7 - target: $.paths['/api/third-party-auth'].get update: x-apievangelist-phrasing: intent: List third-party auth partners effect: read questions: - Which third-party authentication partners are registered? - Can I see all partners allowed to log users in? instructions: - text: List all third-party auth partners. - text: Show every registered third-party login partner. method: generated generated: '2026-10-01' - target: $.paths['/api/third-party-auth'].post update: x-apievangelist-phrasing: intent: Register a third-party auth partner effect: write questions: - How do I register a new third-party authentication partner? - Which domains and branding does a new auth partner need? instructions: - text: Create a third-party auth partner {name} described as {description} with logo {logo} for domains {domains}. slots: name: requestBody.name description: requestBody.description logo: requestBody.logo domains: requestBody.domains - text: Register auth partner {name} on domains {domains}. slots: name: requestBody.name domains: requestBody.domains method: generated generated: '2026-10-01' - target: $.paths['/api/third-party-auth/{authId}'].get update: x-apievangelist-phrasing: intent: Get a third-party auth partner effect: read questions: - What domains and logo are set on a particular auth partner? - Can I look up one third-party auth partner by ID? instructions: - text: Get third-party auth partner {auth}. slots: auth: path.authId - text: Show the details of auth partner {auth}. slots: auth: path.authId method: generated generated: '2026-10-01' - target: $.paths['/api/third-party-auth/{authId}'].post update: x-apievangelist-phrasing: intent: Update a third-party auth partner effect: write questions: - Can I change the allowed domains of an auth partner? - Is it possible to update a partner's name or logo? instructions: - text: Update auth partner {auth} with domains {domains}. slots: auth: path.authId domains: requestBody.domains - text: Rename third-party auth partner {auth} to {name}. slots: auth: path.authId name: requestBody.name method: generated generated: '2026-10-01' - target: $.paths['/api/third-party-auth/{authId}'].delete update: x-apievangelist-phrasing: intent: Delete a third-party auth partner effect: destructive questions: - Can I remove a third-party authentication partner? - Is deleting an auth partner permanent? instructions: - text: Delete third-party auth partner {auth}. slots: auth: path.authId - text: Remove auth partner {auth}. slots: auth: path.authId method: generated generated: '2026-10-01' - target: $.paths['/api/{projectId}/third-party-auth/{authId}/authorize'].post update: x-apievangelist-phrasing: intent: Grant a third party access to a project effect: write questions: - How do I let a third-party partner access one of my projects? - Where does the user land after authorizing a partner on a project? instructions: - text: Authorize partner {auth} to access project {project}, then redirect to {next}. slots: project: path.projectId auth: path.authId next: requestBody.nextUrl - text: Give third party {auth} access to project {project} and return to {next}. slots: project: path.projectId auth: path.authId next: requestBody.nextUrl method: generated generated: '2026-10-01' - target: $.paths['/api/third-party-auth/{authId}/login'].post update: x-apievangelist-phrasing: intent: Log in or create a user as a partner effect: write questions: - As an auth partner, can I sign users in and auto-create their accounts? - Which users is a third-party partner allowed to log in as? instructions: - text: 'Log in user {username} ({email}, {name}) via partner {auth}, privacy policy accepted: {privacy}.' slots: auth: path.authId username: requestBody.username email: requestBody.email name: requestBody.name privacy: requestBody.privacyPolicy - text: Create user {username} with email {email} through partner {auth} and a starter project named {projectName}. slots: auth: path.authId username: requestBody.username email: requestBody.email projectName: requestBody.projectName method: generated generated: '2026-10-01'