P4A Documentation
Guides

Transferring ownership

Hand something you own in P4A to another user. The recipient must accept before ownership moves, and either side can back out first.

Overview

Some things in P4A have an owner — a single user who is the reference point for who maintains them. When maintainership changes (someone leaves a team, or a resource is handed to a different maintainer), you can transfer ownership to another P4A user instead of leaving it stuck with the original owner.

Every transfer follows the same two-step, opt-in handshake, regardless of what's being transferred:

  1. You offer the resource to another registered P4A user by email.
  2. They accept — and only then does ownership actually move. Nothing changes while an offer is pending, and an offer expires automatically after 24 hours.

This page describes that shared flow once, then notes which resource types support it today.

What you can transfer

ResourceSupportedWhat ownership controls
PolicyThe owner (and admins) can edit the policy's documentation links and is the maintainer of record.

Today, policies are the only resource with an ownership transfer flow. The handshake below is intentionally generic so future resource types can adopt it without a different mental model — when they do, they'll appear in the table above and behave the same way.

The transfer flow

1. Offer it

Open the resource you own and start a transfer. For a policy, open the policy and click Transfer Ownership in the action bar at the top of the page.

Policy detail action bar with the Transfer Ownership button next to the GitHub and Deploy actions

Enter the recipient's email address and send the offer. The recipient must already have a P4A account — transfers can't go to someone who hasn't signed up yet. Once sent:

  • The resource shows a Transfer pending badge, visible to you and to admins.
  • The recipient gets an email and an incoming offer on their Transfers page.
  • You can only have one pending offer per resource at a time.

Transfer Ownership dialog with the recipient email field

2. Accept or decline

The recipient reviews offers at /dashboard/transfers. Incoming offers appear under Incoming, with who made the offer, when it was offered, and how long until it expires. The Transfers item in the sidebar shows a count badge while offers are waiting.

  • Accept — ownership moves to the recipient immediately, and owner-only access (such as editing a policy's documentation links) moves with it. The original owner is notified.
  • Decline — ownership stays where it is. The recipient can add an optional note explaining why, which is sent back to the offering user.

Transfers page with an incoming pending offer showing the Accept and Decline buttons and the expiry countdown

The email never accepts on your behalf — it only links you to this page, where you make the decision while signed in.

3. Cancel an offer you made

Offers you've sent appear under Outgoing on the same page. While an offer is still pending you can Cancel offer to withdraw it — useful if you picked the wrong recipient or changed your mind. Once the recipient has accepted or declined, the outcome is final and shows in the list.

Transfers page Outgoing section listing an offer the signed-in user has made, with its status

When offers expire

A pending offer expires 24 hours after it's made. An expired offer can't be accepted — the recipient would need a fresh one. Expired and resolved offers stay listed for reference, with the date and time of each decision, so there's always a record of what happened.

References

  • Getting started — the dashboard tour, including the Transfers page and email-notification preferences.
  • Lifecycle states — what a policy owner can do at each stage of a policy's life.

On this page