Team workflow

How a backend change reaches the web team through Git, from the first API edit to an integration that is verified.

Watch this in the tutorial: A backend change, from Alice to Bob (7:33)
Collaborate through Git

One API change, from backend to frontend.

A change package travels with the code, through the Git repository your team already uses. Step through a real handoff.

  1. Backend developer
  2. Getman
  3. Git
  4. Frontend developer
  5. Coding agent
  1. In the Shop API, Alice renames total to totalCents and adds currency to GET /orders/{id}, then updates the saved request in Getman.

  2. Getman compares the OpenAPI 3.1 contract with the previous one. The new fields are non-breaking. Removing total is rated potentially breaking, because that response schema was inferred from examples, which is weak evidence.

  3. Changes → New change package. It records the endpoint, the contract diff, examples and the migration note “Read totalCents (integer cents) and currency; total is gone.” Its reference is GT-SHOP-001.

  4. Verify now runs the affected requests against the running API. The result is recorded in the package. Nobody types in a pass.

  5. Alice commits the code and the getman/ folder together and pushes. No Getman server is involved.

  6. Bob clicks Fetch. Getman reads the incoming commits and lists the package before he pulls.

  7. With I integrate as set to web, the package lands in Bob's Inbox with its severity and evidence.

  8. Bob gives his coding agent the reference. Through MCP it calls list_changes and get_change and reads the diff and examples.

  9. The agent updates the web client and its tests in Bob's repository, using the examples from the package.

  10. report_integration runs the requests first. verified is accepted only with a passing run against the current contract. After a pull, Alice sees Integration verified.

Everything here happens on two laptops and one Git remote. Getman has no cloud service.

This page follows one API change from the backend developer, Alice, to the web developer, Bob. Both of them work in their own clone of the same repository, and Git carries the change between them. No handoff document is needed.

Before you start

  • Git, Getman, and Node.js 20+ for the command line.
  • A repository that contains a getman/ folder. See getting started if you need to set one up.
  • Your consumer name. The web developer uses web, and the backend developer uses the name the team agreed on.

Open the team workspace from a fresh clone

Clone the repository, then open the getman folder in Getman.

  1. Clone the repository as usual.
  2. In Getman, choose Open a team workspace on the Welcome screen. You can also use Open team workspace… from the title bar menu or the command palette (⌘K).
  3. Pick the getman folder inside your clone. It is the folder that contains getman.yaml.
  4. Open Environments and type the secret values once. They are masked, stored in your system keychain, and never written to Git.

To link a project you created yourself, open Project settings, go to Team sync, and choose Choose folder. Pick a folder inside your repository.

The backend change (Alice)

  1. Change the API. Then update the matching Getman requests in the app, or let your agent edit the request files. Update examples, assertions and any new endpoints.

  2. Create the change package. Use New change package in the Changes view, the palette item New change package…, or the command:

    getman change new --workspace getman --title "Order totals in cents, with currency" \
      --summary "GET /orders/{id} returns totalCents and currency." \
      --migration "Read totalCents (integer cents) and currency. total is gone." \
      --author "Alice (backend)"

    The command prints the reference, such as GT-SHOP-001.

  3. Verify against a running API. Use Verify now in the change, or run getman change verify GT-SHOP-001 --workspace getman --env Local. Failing runs are recorded as evidence too.

  4. Publish the change when it is final. Use Publish in the change’s header, or run getman change state GT-SHOP-001 published --workspace getman.

  5. Commit the code and the getman/ files together, then push.

The web change (Bob)

  1. Click Fetch in the Git bar. The new package appears in the Inbox as Not pulled.

  2. Click Pull. Getman asks before a pull replaces requests you have changed.

  3. Read the package: the diff, the examples, the migration notes and the evidence. From a terminal, run getman change show GT-SHOP-001 --workspace getman.

  4. Update the web client and run its tests.

  5. Report the status. Use Report status in the change, or run:

    getman change report GT-SHOP-001 --workspace getman --consumer web --status verified --author "Bob (web)"

    verified is accepted only after a passing run against the current contract. Run Verify now first if you have not already.

  6. Commit and push.

After Bob pushes, and Alice clicks Fetch and Pull, the change shows Integration verified in her view.

Find the change you need

The Changes view has four views: Inbox, Completed, All changes and Timeline. Set I integrate as to your consumer name, so that the Inbox shows the changes still waiting for your team.

The Completed view lists the changes your consumer has already finished.

Git actions are explicit

Getman reads the folder and the fetched branch, and it flags incoming packages and request edits. It does not change Git on its own.

Action What it does
Fetch Runs git fetch.
Pull Runs git pull --ff-only. It never merges.
Commit… Commits only the Getman files you tick.
Push Pushes the current branch. It never forces.

Merges and conflict resolution happen in Git, as usual. If a pull is refused because of local changes, commit or discard them first.

Common questions

  • Two people created GT-SHOP-007. Give one of them the next free number, rename the file to match, and commit. See troubleshooting.
  • Bob’s tests fail after Pull. That is expected for a breaking change. Update the client, then verify again.
  • Alice cannot see Bob’s status. She needs to Fetch and Pull after Bob pushes.

For the file format and the verification rules, see change packages. To let a coding agent do these steps, see connecting a coding agent.