HERE · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Authorization API v1.1 Project Access Management API
27 actions
27 updates
phrasing
extends
openapi/here-project-access-management-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for HERE's API. It is a proposal applied on top of the contract, not a document HERE publishes.
What the actions change
x-apievangelist-phrasing
Targets 27 · first 16 shown; the file carries all of them
$.info
$.paths['/projects/{project}/members/{member}'].get
$.paths['/projects/{project}/members/{member}'].post
$.paths['/projects/{project}/members/{member}'].delete
$.paths['/projects/{project}/members/me'].delete
$.paths['/projects/{project}/members'].get
$.paths['/projects/{project}/policies'].get
$.paths['/projects/{project}/policies'].post
$.paths['/projects/{project}/policies/{policy}'].get
$.paths['/projects/{project}/policies/{policy}'].put
$.paths['/projects/{project}/policies/{policy}'].delete
$.paths['/projects/{project}/policies/{policy}/members'].get
$.paths['/projects/{project}/settings'].get
$.paths['/projects/{project}/settings'].patch
$.paths['/projects/{project}/attachedPolicies'].get
$.paths['/projects/{project}/attachedPolicies'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Authorization API v1.1 Project Access Management API
version: 1.0.0
extends: openapi/here-project-access-management-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-02'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 26
- target: $.paths['/projects/{project}/members/{member}'].get
update:
x-apievangelist-phrasing:
intent: Look up one member of a project
effect: read
questions:
- Can I check whether a specific user, app or group belongs to a HERE platform project?
- What details come back for a single project member?
instructions:
- text: Show me member {member} of project {project}.
slots:
member: path.member
project: path.project
- text: Confirm that {member} is a member of project {project}.
slots:
member: path.member
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}'].post
update:
x-apievangelist-phrasing:
intent: Add a user, app or group to a project
effect: write
questions:
- How do I add a user, app or group as a member of a project?
- Can a whole group be added to a project in one step?
instructions:
- text: Add {member} to project {project}.
slots:
member: path.member
project: path.project
- text: Give group {member} membership in project {project}.
slots:
member: path.member
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a member from a project
effect: destructive
questions:
- How do I kick someone else out of a project I manage?
- Can I remove an app from a project without deleting the app?
instructions:
- text: Remove {member} from project {project}.
slots:
member: path.member
project: path.project
- text: Revoke project {project} membership for app {member}.
slots:
member: path.member
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/me'].delete
update:
x-apievangelist-phrasing:
intent: Leave a project yourself
effect: destructive
questions:
- How do I leave a project I no longer work on?
- Can my own app remove itself from a project?
instructions:
- text: Take me out of project {project}.
slots:
project: path.project
- text: Have my identity leave project {project}.
slots:
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members'].get
update:
x-apievangelist-phrasing:
intent: List the members of a project
effect: read
questions:
- Who are all the members of this project?
- Can I get only the effective users and apps of a project, with groups expanded?
- What is the maximum page size when listing project members?
instructions:
- text: List everyone in project {project}.
slots:
project: path.project
- text: List the effective identities in project {project}, {limit} per page.
slots:
project: path.project
limit: query.limit
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/policies'].get
update:
x-apievangelist-phrasing:
intent: List policies available in a project
effect: read
questions:
- Which policies can I attach to members of my project?
- Can I see only the custom policies I created, not the HERE-provided ones?
instructions:
- text: List the policies available in project {project}.
slots:
project: path.project
- text: Show project {project} policies of type {projectPolicyType}.
slots:
project: path.project
projectPolicyType: query.projectPolicyType
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/policies'].post
update:
x-apievangelist-phrasing:
intent: Create a custom project policy
effect: write
questions:
- How do I define my own policy with a custom set of permissions in a project?
- What fields does a new custom project policy need?
instructions:
- text: Create a custom policy {name} with id {id} in project {project}.
slots:
name: requestBody.name
id: requestBody.id
project: path.project
- text: Create policy {id} in project {project} granting permissions {permissions}.
slots:
id: requestBody.id
project: path.project
permissions: requestBody.permissions
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/policies/{policy}'].get
update:
x-apievangelist-phrasing:
intent: View one project policy
effect: read
questions:
- What permissions does a particular project policy contain?
- Can I inspect a HERE-provided policy the same way as a custom one?
instructions:
- text: Show me policy {policy} in project {project}.
slots:
policy: path.policy
project: path.project
- text: Get the definition of project policy {policy} for {project}.
slots:
policy: path.policy
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/policies/{policy}'].put
update:
x-apievangelist-phrasing:
intent: Update a custom project policy
effect: write
questions:
- How do I change the permissions inside a custom policy I already created?
- Can I rename an existing custom project policy?
instructions:
- text: Rename custom policy {policy} in project {project} to {name}.
slots:
policy: path.policy
project: path.project
name: requestBody.name
- text: Replace the permissions of existing policy {policy} in {project} with {permissions}.
slots:
policy: path.policy
project: path.project
permissions: requestBody.permissions
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/policies/{policy}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a custom project policy
effect: destructive
questions:
- How do I get rid of a custom policy I no longer need in a project?
- Is it possible to delete a policy definition entirely rather than just detaching it?
instructions:
- text: Delete custom policy {policy} from project {project}.
slots:
policy: path.policy
project: path.project
- text: Permanently remove the policy definition {policy} in {project}.
slots:
policy: path.policy
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/policies/{policy}/members'].get
update:
x-apievangelist-phrasing:
intent: List members that have a given policy
effect: read
questions:
- Which project members have a particular policy attached to them?
- Who in the project is affected if I change this policy?
instructions:
- text: List the members of project {project} that have policy {policy} attached.
slots:
project: path.project
policy: path.policy
- text: Find who holds policy {policy} in {project}.
slots:
policy: path.policy
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/settings'].get
update:
x-apievangelist-phrasing:
intent: View a project's settings
effect: read
questions:
- Which policies do new members automatically get when they join a project?
- What scope of access is configured for a project?
instructions:
- text: Show the settings for project {project}.
slots:
project: path.project
- text: Tell me the default new-member policies configured on {project}.
slots:
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/settings'].patch
update:
x-apievangelist-phrasing:
intent: Change a project's settings
effect: write
questions:
- How do I change which policies are applied to new project members by default?
- Can I change the allowed scope of access for a project?
instructions:
- text: Set the default new-member policies of project {project} to {defaultNewMemberProjectPolicies}.
slots:
project: path.project
defaultNewMemberProjectPolicies: requestBody.defaultNewMemberProjectPolicies
- text: Change the scope access setting of project {project} to {scopeAccess}.
slots:
project: path.project
scopeAccess: requestBody.scopeAccess
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/attachedPolicies'].get
update:
x-apievangelist-phrasing:
intent: List policies attached to all project members
effect: read
questions:
- Which policies are applied project-wide to every member?
- How many policies can be attached at the project level?
instructions:
- text: List the project-level policies attached for everyone in {project}.
slots:
project: path.project
- text: Show which policies apply to all members of project {project}.
slots:
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/attachedPolicies'].post
update:
x-apievangelist-phrasing:
intent: Replace the project-wide attached policies
effect: write
questions:
- How do I overwrite the full list of policies applied to every project member?
- Can I set all project-wide policies in one call instead of attaching them one by one?
instructions:
- text: Replace the project-wide policies on {project} with {policies}.
slots:
project: path.project
policies: requestBody.policies
- text: 'Set exactly these policies for all members of {project}: {policies}.'
slots:
project: path.project
policies: requestBody.policies
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/attachedPolicies/{policy}'].get
update:
x-apievangelist-phrasing:
intent: Check one project-wide attached policy
effect: read
questions:
- Is a given policy attached at the project level for all members?
- Can I confirm a single project-wide policy attachment?
instructions:
- text: Check whether policy {policy} is attached project-wide in {project}.
slots:
policy: path.policy
project: path.project
- text: Show the project-level attachment of {policy} on project {project}.
slots:
policy: path.policy
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/attachedPolicies/{policy}'].post
update:
x-apievangelist-phrasing:
intent: Apply a policy to every project member
effect: write
questions:
- How do I attach a single policy, by its ID, to every member of a project?
- Can I add one more project-wide policy without replacing the others?
instructions:
- text: Attach policy {policy} to all members of project {project}.
slots:
policy: path.policy
project: path.project
- text: Add {policy} as a project-level policy on {project}.
slots:
policy: path.policy
project: path.project
method: generated
generated: '2026-10-02'
- target: $.paths['/projects/{project}/attachedPolicies/{policy}'].delete
update:
x-apievangelist-phrasing:
intent: Stop applying a policy to all project members
effect: destructive
questions:
- How do I stop a policy from applying to everyone in the project?
- If I detach a project-wide policy, do members who have it individually keep it?
instructions:
- text: Detach project-wide policy {policy} from project {project}.
slots:
policy: path.policy
project: path.project
- text: Remove {policy} from the policies applied to all members of {project}.
slots:
policy: path.policy
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/policies'].get
update:
x-apievangelist-phrasing:
intent: List policies attached to a project member
effect: read
questions:
- Which policies are attached directly to a specific member of a project?
- What policies does this app have in the project?
instructions:
- text: List the policies attached to {member} in project {project}.
slots:
member: path.member
project: path.project
- text: Show member {member}'s attached policies on {project}.
slots:
member: path.member
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/policies'].post
update:
x-apievangelist-phrasing:
intent: Replace a member's attached policies
effect: write
questions:
- How do I overwrite every policy a single project member has with a new list?
- Can I reset one member's project policies in a single call?
instructions:
- text: Replace the policies of {member} in project {project} with {policies}.
slots:
member: path.member
project: path.project
policies: requestBody.policies
- text: Set member {member}'s policies on {project} to exactly {policies}.
slots:
member: path.member
project: path.project
policies: requestBody.policies
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/policies/{policy}'].get
update:
x-apievangelist-phrasing:
intent: Check one policy attached to a member
effect: read
questions:
- Does this project member have a particular policy attached?
- Can I verify a single policy attachment for one member?
instructions:
- text: Check if {member} has policy {policy} attached in project {project}.
slots:
member: path.member
policy: path.policy
project: path.project
- text: Show the attachment of {policy} to member {member} on {project}.
slots:
policy: path.policy
member: path.member
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/policies/{policy}'].post
update:
x-apievangelist-phrasing:
intent: Attach a policy to one project member
effect: write
questions:
- How do I grant a single member an extra policy in a project?
- Can I give one app a policy without affecting other members?
instructions:
- text: Attach policy {policy} to {member} in project {project}.
slots:
policy: path.policy
member: path.member
project: path.project
- text: Give member {member} the {policy} policy on {project}.
slots:
member: path.member
policy: path.policy
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/policies/{policy}'].delete
update:
x-apievangelist-phrasing:
intent: Detach a policy from one project member
effect: destructive
questions:
- How do I take a policy away from one member of a project?
- Can I revoke a single member's policy while keeping them in the project?
instructions:
- text: Detach policy {policy} from {member} in project {project}.
slots:
policy: path.policy
member: path.member
project: path.project
- text: Take {policy} away from member {member} on {project}.
slots:
policy: path.policy
member: path.member
project: path.project
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/permissions'].get
update:
x-apievangelist-phrasing:
intent: See a member's effective project permissions
effect: read
questions:
- What can a member actually do inside a project once all their policies are combined?
- Can I narrow a member's effective permissions to one service or resource?
instructions:
- text: List the effective permissions of {member} in project {project}.
slots:
member: path.member
project: path.project
- text: Show {member}'s effective permissions on {project} for service {serviceId}.
slots:
member: path.member
project: path.project
serviceId: query.serviceId
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/members/{member}/linkable/permissions'].get
update:
x-apievangelist-phrasing:
intent: List permissions a member can link to a project
effect: read
questions:
- Which realm resources can a member link into a project?
- What linkable permissions exist for a given resource type?
instructions:
- text: List the linkable {resourceType} permissions {member} can add to project {project}.
slots:
resourceType: query.resourceType
member: path.member
project: path.project
- text: Show realm resources that {member} could link into {project} as resource type {resourceType}.
slots:
member: path.member
project: path.project
resourceType: query.resourceType
method: generated
generated: '2026-09-26'
- target: $.paths['/projects/{project}/filter'].get
update:
x-apievangelist-phrasing:
intent: View a project's access filter
effect: read
questions:
- Is there an access filter attached to my project?
- What access filter restricts this project?
instructions:
- text: Get the access filter attached to project {project}.
slots:
project: path.project
- text: Show the access filter for {project}.
slots:
project: path.project
method: generated
generated: '2026-09-26'