Menu
Platform
AI
App store purchases
Credits
Database
Flags
Generated Assets
Monitoring
Notifications
Organizations
Payments
- Payments
- Payments quickstart
- Checkout policies
- Checkout sessions
- Customer subscriptions
- Entitlement grants
- Exchange rates
- Licence keys
- Licence tokens
- Merchant accounts
- Portal sessions
- Price catalogs
- Revenue
- Revenue facts
- Revenue sources
- Tax threshold statuses
- Usage events
- Usage invoices
- Usage meter prices
- Usage meters
- Usage reservations
- Usage settings
- Usage tiers
Queues
Realtime
Sandboxes
Webhooks
Getting Started
Authentication
KV Store
Deploy & Infrastructure
Reference
Begin registration on a connection provider
Begins an expiring, one-use GitHub manifest registration ceremony.
Begins an expiring, one-use GitHub manifest registration ceremony. Open registration_url to POST the bound, prefilled manifest to GitHub. github_organization selects organization ownership. The state-authorized callback is GET /v1/connections/github-manifest:callback?state=...&code=... and returns only provider metadata and an installation URL.
- Path
POST https://api.sylphx.com/v1/orgs/acme/connection_providers:beginRegistration - Scope
connections:admin - Effect
write— a successful call changes state. - Collection connection_providers
#Request
| Field | Type | What it is |
|---|---|---|
parent | string | The organization that will own the provider and custody references. Required. |
connection_provider_id | string | Explicit immutable provider identity. Required. |
signing_key | string | Unused environment-scoped public Keys target in this organization. Required. |
webhook_secret | string | Environment-scoped Secrets custody target in this organization. Required. |
github_manifest | GitHubAppManifest | Permissions, events and the declared platform webhook destination. Required. |
expected_github_app_slug | string | Slug whose literal wrapped-import path has been enrolled in custody. Renaming the App at GitHub causes the callback to refuse before import. Required. |
github_organization | string | GitHub organization that will own the App; unset selects a personal account. |
#GitHubAppManifest
| Field | Type | What it is |
|---|---|---|
name | string | Proposed GitHub display name. Required. |
url | string | HTTPS homepage, not an OAuth callback or webhook destination. Required. |
public | bool | Whether other accounts may install the App. This is GitHub's own manifest key, which clients must read and write verbatim; the JSON, SDK, CLI and Terraform names therefore stay public too. |
default_permissions | map<string, string> | GitHub read/write permissions; metadata:read is always included. Required. |
default_events | string[] | GitHub webhook events to subscribe to. Required. |
hook_attributes | GitHubManifestHookAttributes | Only declared receiving endpoints on the platform origin are accepted. Required. |
#GitHubManifestHookAttributes
| Field | Type | What it is |
|---|---|---|
url | string | https://api.sylphx.com/v1/orgs/{org}/connection_providers/{provider}/github:webhook; org and provider must match this registration's parent and provider id. Required. |
active | bool | Must be true: deliveries verify the generated secret at the receiver. Required. |
#Response
| Field | Type | What it is |
|---|---|---|
state | string | Cryptographic one-use capability; never log or persist client-side. |
callback_url | string | Actual state-authorized callback, requiring no ordinary Access bearer. |
registration_url | string | Open with GET: launches the stored manifest POST to GitHub, including state. |
manifest | string | JSON-encoded normalized intent, for inspecting the requested configuration. |
expire_time | timestamp | State expires ten minutes after begin. |
#Errors
UNAUTHENTICATED— No valid key or token was presented.PERMISSION_DENIED— The key lacks the method's permission.INVALID_FIELD— A field failed validation.INVALID_STATE— The Resource is in a state that forbids the call.RESOURCE_ALREADY_EXISTS— A Resource with this name exists.
Every error arrives in the body Errors describes.
#Examples
curl -X POST "https://api.sylphx.com/v1/orgs/acme/connection_providers:beginRegistration" \
-H "Authorization: Bearer $SYLPHX_API_KEY" \
-H "Content-Type: application/json" \
-d '{"connection_provider_id":"…","expected_github_app_slug":"…","github_manifest":{"default_events":["…"],"default_permissions":{},"hook_attributes":{"active":false,"url":"…"},"name":"…","url":"…"},"signing_key":"…","webhook_secret":"…"}'