Fetch a connect request
const url = 'https://example.com/v1/connections/requests/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/v1/connections/requests/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0 \ --header 'Authorization: Bearer <token>'A member’s request is the member’s alone; the company’s is a tenant admin’s. Anyone else gets the 404 of a request that doesn’t exist.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”The connect request id (a UUID).
Responses
Section titled “Responses”The request.
A connect: the owner goes to connectUrl, consents at the app, and comes back. A run that needs a connection it lacks waits on one.
object
The app’s entry id.
Who owns a connection: one member (kind: member, with their userId), or the company (kind: company, the tenant’s own account).
object
The member. Present when kind is member.
The permissions asked for: the ones needed, and the ones already granted.
What each asks for, in plain words.
The connection it connects again; the same account is required.
The run that waits for it.
The tool’s name for the connection, when a run waits.
Who started it last: <kind>:<id>. Only they may finish it.
Why it failed: account-mismatch, app-refused, store-write-failed.
The permissions the app granted less than asked.
A GitHub App’s, while it’s pending: the app’s installations the person’s GitHub account reaches, when the finish found several and none was picked. They pick one and start again with installationId, or install the app on another account with newInstallation.
A GitHub App installation the person can reach.
object
The account it’s on: its login, or the enterprise’s slug.
object
The account’s stable id at the app.
What people see: an email address, a login.
The connection it made.
Where the owner starts.
Example
{ "owner": { "kind": "member" }, "state": "pending"}requestId is not a UUID (bad-input).
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}Missing / malformed / expired / revoked bearer token.
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}No request with that id, or not the caller’s (connection-request-not-found).
object
object
Stable machine-readable discriminant. Values match domain error codes (see docs/API-ROUTE-CONVENTIONS.md §4.3).
Optional, kind-specific.
object
Server-assigned request id; also echoed via X-Request-Id header.
Examplegenerated
{ "error": { "code": "example", "message": "example", "details": {}, "requestId": "example" }}