Laravel · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for Forge Teams API

14 actions 14 updates phrasing extends openapi/laravel-teams-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Laravel's API. It is a proposal applied on top of the contract, not a document Laravel publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 14

$.info
$.paths['/orgs/{organization}/teams'].get
$.paths['/orgs/{organization}/teams'].post
$.paths['/orgs/{organization}/teams/{team}'].get
$.paths['/orgs/{organization}/teams/{team}'].put
$.paths['/orgs/{organization}/teams/{team}'].delete
$.paths['/orgs/{organization}/teams/{team}/members'].get
$.paths['/orgs/{organization}/teams/{team}/members/{user}'].get
$.paths['/orgs/{organization}/teams/{team}/members/{user}'].put
$.paths['/orgs/{organization}/teams/{team}/members/{user}'].delete
$.paths['/orgs/{organization}/teams/{team}/invites'].get
$.paths['/orgs/{organization}/teams/{team}/invites'].post
$.paths['/orgs/{organization}/teams/{team}/invites/{invitation}'].get
$.paths['/orgs/{organization}/teams/{team}/invites/{invitation}'].delete

OpenAPI Overlay

Raw ↑
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
  title: API Evangelist conversational phrasing for Forge Teams API
  version: 1.0.0
extends: openapi/laravel-teams-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: 13
- target: $.paths['/orgs/{organization}/teams'].get
  update:
    x-apievangelist-phrasing:
      intent: List an organization's teams
      effect: read
      questions:
      - Which teams exist in my Forge organization?
      - Can I page through all teams in an organization?
      instructions:
      - text: List the teams in organization {organization}.
        slots:
          organization: path.organization
      - text: Show every team that belongs to {organization}.
        slots:
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams'].post
  update:
    x-apievangelist-phrasing:
      intent: Create a team in an organization
      effect: write
      questions:
      - How do I set up a new team for a group of developers?
      - Can I add existing users and send invites while creating a team?
      instructions:
      - text: Create a team called {name} in organization {organization}.
        slots:
          name: requestBody.name
          organization: path.organization
      - text: Create team {name} in {organization} with members {users} and invite {invites}.
        slots:
          name: requestBody.name
          organization: path.organization
          users: requestBody.users
          invites: requestBody.invites
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a team's details
      effect: read
      questions:
      - What are the details of one specific team?
      - Can I look up a team by its ID?
      instructions:
      - text: Show team {team} in organization {organization}.
        slots:
          team: path.team
          organization: path.organization
      - text: Get the details of team {team} in {organization}.
        slots:
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}'].put
  update:
    x-apievangelist-phrasing:
      intent: Rename a team or change its users
      effect: write
      questions:
      - Can I rename an existing team?
      - Is there a way to replace the users assigned to a team in one call?
      instructions:
      - text: Rename team {team} in {organization} to {name}.
        slots:
          team: path.team
          organization: path.organization
          name: requestBody.name
      - text: Update team {team} in {organization} to name {name} with users {users}.
        slots:
          team: path.team
          organization: path.organization
          name: requestBody.name
          users: requestBody.users
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Delete a team
      effect: destructive
      questions:
      - How do I delete a team we no longer use?
      - Can a whole team be removed from an organization?
      instructions:
      - text: Delete team {team} from organization {organization}.
        slots:
          team: path.team
          organization: path.organization
      - text: Remove the team {team} in {organization} entirely.
        slots:
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/members'].get
  update:
    x-apievangelist-phrasing:
      intent: List a team's members
      effect: read
      questions:
      - Who is on a particular team?
      - Can I page through the members of a large team?
      instructions:
      - text: List the members of team {team} in {organization}.
        slots:
          team: path.team
          organization: path.organization
      - text: Show who belongs to team {team} in organization {organization}.
        slots:
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/members/{user}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get one team member
      effect: read
      questions:
      - What role does a specific person have on a team?
      - Can I fetch a single team member's details?
      instructions:
      - text: Show member {user} of team {team} in {organization}.
        slots:
          user: path.user
          team: path.team
          organization: path.organization
      - text: Get the role of user {user} on team {team}, organization {organization}.
        slots:
          user: path.user
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/members/{user}'].put
  update:
    x-apievangelist-phrasing:
      intent: Change a team member's role
      effect: write
      questions:
      - How do I promote a team member to a different role?
      - Can I change the role assigned to someone already on a team?
      instructions:
      - text: Give user {user} on team {team} in {organization} the role {role_id}.
        slots:
          user: path.user
          team: path.team
          organization: path.organization
          role_id: requestBody.role_id
      - text: Change team {team} member {user}'s role to {role_id} in {organization}.
        slots:
          team: path.team
          user: path.user
          role_id: requestBody.role_id
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/members/{user}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Remove a member from a team
      effect: destructive
      questions:
      - Can I take someone off a team when they leave the project?
      - What removes a user from a team without deleting the team?
      instructions:
      - text: Remove user {user} from team {team} in {organization}.
        slots:
          user: path.user
          team: path.team
          organization: path.organization
      - text: Kick member {user} off team {team}, organization {organization}.
        slots:
          user: path.user
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/invites'].get
  update:
    x-apievangelist-phrasing:
      intent: List a team's pending invitations
      effect: read
      questions:
      - Which invitations to a team are still waiting to be accepted?
      - Can I see everyone who has been invited to a team but not joined yet?
      instructions:
      - text: List pending invitations for team {team} in {organization}.
        slots:
          team: path.team
          organization: path.organization
      - text: Show the outstanding invites to team {team}, organization {organization}.
        slots:
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/invites'].post
  update:
    x-apievangelist-phrasing:
      intent: Invite someone to a team by email
      effect: write
      questions:
      - How do I invite a new person to a team by email with a given role?
      - Can I send a team invitation to someone who doesn't have an account yet?
      instructions:
      - text: Invite {email} to team {team} in {organization} with role {role_id}.
        slots:
          email: requestBody.email
          team: path.team
          organization: path.organization
          role_id: requestBody.role_id
      - text: Send a team {team} invitation to {email} as role {role_id} in organization {organization}.
        slots:
          team: path.team
          email: requestBody.email
          role_id: requestBody.role_id
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/invites/{invitation}'].get
  update:
    x-apievangelist-phrasing:
      intent: Get a pending team invitation
      effect: read
      questions:
      - Which email and role does a pending team invitation have?
      - Can I look up one team invitation by ID?
      instructions:
      - text: Show invitation {invitation} for team {team} in {organization}.
        slots:
          invitation: path.invitation
          team: path.team
          organization: path.organization
      - text: Get the details of pending invite {invitation} to team {team}, org {organization}.
        slots:
          invitation: path.invitation
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'
- target: $.paths['/orgs/{organization}/teams/{team}/invites/{invitation}'].delete
  update:
    x-apievangelist-phrasing:
      intent: Cancel a pending team invitation
      effect: destructive
      questions:
      - I invited the wrong email — can I cancel that team invite?
      - How do I revoke a team invitation before it's accepted?
      instructions:
      - text: Cancel invitation {invitation} to team {team} in {organization}.
        slots:
          invitation: path.invitation
          team: path.team
          organization: path.organization
      - text: Revoke the pending invite {invitation} for team {team}, org {organization}.
        slots:
          invitation: path.invitation
          team: path.team
          organization: path.organization
      method: generated
      generated: '2026-10-01'