# 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 Organization Portals API version: 1.0.0 extends: openapi/edge-impulse-organizationportals-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/organizations/{organizationId}/portals'].get update: x-apievangelist-phrasing: intent: List an organization's upload portals effect: read questions: - Which upload portals are configured for my Edge Impulse organization? - Can I see all the places external contributors can upload data into my organization? instructions: - text: List all upload portals in organization {organizationId}. slots: organizationId: path.organizationId - text: Show every configured upload portal for organization {organizationId}. slots: organizationId: path.organizationId method: generated generated: '2026-10-01' - target: $.paths['/api/organizations/{organizationId}/portals/{portalId}'].get update: x-apievangelist-phrasing: intent: Get details of an upload portal effect: read questions: - Which bucket and path does a particular upload portal write to? - How can I look up one upload portal's settings by ID? instructions: - text: Get upload portal {portalId} in organization {organizationId}. slots: portalId: path.portalId organizationId: path.organizationId - text: Show the bucket and description for portal {portalId} in organization {organizationId}. slots: portalId: path.portalId organizationId: path.organizationId method: generated generated: '2026-10-01' - target: $.paths['/api/organizations/{organizationId}/portals/{portalId}/verify'].get update: x-apievangelist-phrasing: intent: Preview files in an upload portal effect: read questions: - Can I preview a sample of files in an upload portal before adding it as a data source? - How do I check that an upload portal actually contains files? instructions: - text: Verify upload portal {portalId} in organization {organizationId} by listing a sample of its files. slots: portalId: path.portalId organizationId: path.organizationId - text: Preview files from portal {portalId} of organization {organizationId} for the data source wizard. slots: portalId: path.portalId organizationId: path.organizationId method: generated generated: '2026-10-01' - target: $.paths['/api/organizations/{organizationId}/portals/create'].post update: x-apievangelist-phrasing: intent: Create an upload portal effect: write questions: - How do I create an upload portal that drops files into one of my storage buckets? - Can a new upload portal write into a specific folder path inside a bucket? instructions: - text: Create an upload portal named {name} in organization {organizationId} writing to bucket {bucketId} at {bucketPath}. slots: name: requestBody.name organizationId: path.organizationId bucketId: requestBody.bucketId bucketPath: requestBody.bucketPath - text: Set up a new portal {name} for organization {organizationId} that stores uploads in bucket {bucketId} under {bucketPath}. slots: name: requestBody.name organizationId: path.organizationId bucketId: requestBody.bucketId bucketPath: requestBody.bucketPath method: generated generated: '2026-10-01' - target: $.paths['/api/organizations/{organizationId}/portals/{portalId}/update'].put update: x-apievangelist-phrasing: intent: Update an existing upload portal effect: write questions: - How do I point an existing upload portal at a different bucket path? - Can I rename an upload portal I already set up? instructions: - text: Update existing portal {portalId} in organization {organizationId} to use bucket {bucketId} at {bucketPath}, named {name}. slots: portalId: path.portalId organizationId: path.organizationId bucketId: requestBody.bucketId bucketPath: requestBody.bucketPath name: requestBody.name - text: Change the description of portal {portalId} in organization {organizationId} to {description}. slots: portalId: path.portalId organizationId: path.organizationId description: requestBody.description method: generated generated: '2026-10-01' - target: $.paths['/api/organizations/{organizationId}/portals/{portalId}/rotate-token'].delete update: x-apievangelist-phrasing: intent: Rotate an upload portal's token effect: destructive questions: - How do I invalidate an upload portal's access token and get a new one? - What should I do if an upload portal token has been leaked? instructions: - text: Rotate the token for upload portal {portalId} in organization {organizationId}. slots: portalId: path.portalId organizationId: path.organizationId - text: Issue a fresh access token for portal {portalId} of organization {organizationId}. slots: portalId: path.portalId organizationId: path.organizationId method: generated generated: '2026-10-01' - target: $.paths['/api/organizations/{organizationId}/portals/{portalId}/delete'].delete update: x-apievangelist-phrasing: intent: Delete an upload portal effect: destructive questions: - How do I remove an upload portal I no longer need? - Can I shut down an upload portal so nobody can send files through it? instructions: - text: Delete upload portal {portalId} from organization {organizationId}. slots: portalId: path.portalId organizationId: path.organizationId - text: Remove portal {portalId} in organization {organizationId} permanently. slots: portalId: path.portalId organizationId: path.organizationId method: generated generated: '2026-10-01'