Every API here is available over the APIs.io API and to AI agents over MCP.
{"openapi":"3.2.0","info":{"title":"fortrabbit API","description":"","version":"BETA"},"servers":[{"url":"https:\/\/api.fortrabbit.com","description":"Production"}],"paths":{"\/v1\/apps":{"get":{"operationId":"api_apps_get_collection","tags":["App"],"responses":{"200":{"description":"App collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"App.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/App.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/App-api.read"}}}}}},"summary":"Retrieves the collection of App resources.","description":"Retrieves the collection of App resources.","parameters":[{"name":"publicId[]","in":"query","description":"Return only the resources with these public ids.","required":false,"deprecated":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true},{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]},"post":{"operationId":"api_apps_post","tags":["App"],"responses":{"201":{"description":"App resource created","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/App.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/App-api.read"}}},"links":{}},"400":{"description":"Invalid input","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}},"422":{"description":"An error occurred","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}}},"links":{}}},"summary":"Creates a App resource.","description":"Creates a App resource.","parameters":[],"requestBody":{"description":"The new App resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/App.AppCreateApiRequest"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/App.AppCreateApiRequest"}}},"required":true}}},"\/v1\/apps\/{publicId}":{"get":{"operationId":"api_apps_publicId_get","tags":["App"],"responses":{"200":{"description":"App resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/App.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/App-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a App resource.","description":"Retrieves a App resource.","parameters":[{"name":"publicId","in":"path","description":"App identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"delete":{"operationId":"api_apps_publicId_delete","tags":["App"],"responses":{"204":{"description":"App resource deleted"},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Delete an app","description":"Deletes the app together with all of its environments and their infrastructure. This cannot be undone.","parameters":[{"name":"publicId","in":"path","description":"App identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"patch":{"operationId":"api_apps_publicId_patch","tags":["App"],"responses":{"200":{"description":"App resource updated","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/App.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/App-api.read"}}},"links":{}},"400":{"description":"Invalid input","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}},"422":{"description":"An error occurred","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}}},"links":{}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Updates the App resource.","description":"Updates the App resource.","parameters":[{"name":"publicId","in":"path","description":"App identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}],"requestBody":{"description":"The updated App resource","content":{"application\/merge-patch+json":{"schema":{"$ref":"#\/components\/schemas\/App.AppUpdateApiRequest.jsonMergePatch"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/App.AppUpdateApiRequest.jsonMergePatch"}}},"required":true}}},"\/v1\/deployments":{"get":{"operationId":"api_deployments_get_collection","tags":["Deployment"],"responses":{"200":{"description":"Deployment collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"Deployment.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/Deployment.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Deployment-api.read"}}}}}},"summary":"Retrieves the collection of Deployment resources.","description":"Retrieves the collection of Deployment resources.","parameters":[{"name":"environment","in":"query","description":"Return only the deployments of this environment, e.g. en-a1b2c3.","required":false,"deprecated":false,"schema":{"type":"string"},"style":"form","explode":true},{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]}},"\/v1\/deployments\/{publicId}":{"get":{"operationId":"api_deployments_publicId_get","tags":["Deployment"],"responses":{"200":{"description":"Deployment resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Deployment.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Deployment-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a Deployment resource.","description":"Retrieves a Deployment resource.","parameters":[{"name":"publicId","in":"path","description":"Deployment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/deployments\/{publicId}\/logs":{"get":{"operationId":"api_deployments_publicIdlogs_get","tags":["Deployment"],"responses":{"200":{"description":"Deployment resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Deployment.DeploymentLogsResponse.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Deployment.DeploymentLogsResponse-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Get deployment logs","description":"Deployment logs become available shortly after a deployment finishes. While \"ready\" is false the logs are still being collected. Once \"ready\" is true the response is final; an empty \"logs\" array then means there are no logs for this deployment.","parameters":[{"name":"publicId","in":"path","description":"Deployment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/environments\/{publicId}\/deployments":{"post":{"operationId":"api_environments_publicIddeployments_post","tags":["Deployment"],"responses":{"201":{"description":"Deployment resource created","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Deployment.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Deployment-api.read"}}},"links":{}},"400":{"description":"Invalid input","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}},"422":{"description":"An error occurred","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}}},"links":{}}},"summary":"Creates a Deployment resource.","description":"Creates a Deployment resource.","parameters":[{"name":"publicId","in":"path","description":"Deployment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/domains":{"get":{"operationId":"api_domains_get_collection","tags":["Domain"],"responses":{"200":{"description":"Domain collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"Domain.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/Domain.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Domain-api.read"}}}}}},"summary":"Retrieves the collection of Domain resources.","description":"Retrieves the collection of Domain resources.","parameters":[{"name":"publicId[]","in":"query","description":"Return only the resources with these public ids.","required":false,"deprecated":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true},{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]}},"\/v1\/domains\/{publicId}":{"get":{"operationId":"api_domains_publicId_get","tags":["Domain"],"responses":{"200":{"description":"Domain resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Domain.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Domain-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a Domain resource.","description":"Retrieves a Domain resource.","parameters":[{"name":"publicId","in":"path","description":"Domain identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"delete":{"operationId":"api_domains_publicId_delete","tags":["Domain"],"responses":{"204":{"description":"Domain resource deleted"},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Delete a domain","description":"Deletes a domain. Default domains cannot be deleted.","parameters":[{"name":"publicId","in":"path","description":"Domain identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/environments":{"get":{"operationId":"api_environments_get_collection","tags":["Environment"],"responses":{"200":{"description":"Environment collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"Environment.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/Environment.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Environment-api.read"}}}}}},"summary":"Retrieves the collection of Environment resources.","description":"Retrieves the collection of Environment resources.","parameters":[{"name":"publicId[]","in":"query","description":"Return only the resources with these public ids.","required":false,"deprecated":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true},{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]},"post":{"operationId":"api_environments_post","tags":["Environment"],"responses":{"201":{"description":"Environment resource created","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Environment.jsonld-api.read_api.read.environment-variables"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Environment-api.read_api.read.environment-variables"}}},"links":{}},"400":{"description":"Invalid input","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}},"422":{"description":"An error occurred","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}}},"links":{}}},"summary":"Creates a Environment resource.","description":"Creates a Environment resource.","parameters":[],"requestBody":{"description":"The new Environment resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Environment.EnvironmentCreateApiRequest"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Environment.EnvironmentCreateApiRequest"}}},"required":true}}},"\/v1\/environments\/{publicId}":{"get":{"operationId":"api_environments_publicId_get","tags":["Environment"],"responses":{"200":{"description":"Environment resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Environment.jsonld-api.read_api.read.environment-variables_api.read.platform-variables"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Environment-api.read_api.read.environment-variables_api.read.platform-variables"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a Environment resource.","description":"Retrieves a Environment resource.","parameters":[{"name":"publicId","in":"path","description":"Environment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"delete":{"operationId":"api_environments_publicId_delete","tags":["Environment"],"responses":{"204":{"description":"Environment resource deleted"},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Delete an environment","description":"Deletes an environment and its infrastructure. The last environment in an app cannot be deleted.","parameters":[{"name":"publicId","in":"path","description":"Environment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"patch":{"operationId":"api_environments_publicId_patch","tags":["Environment"],"responses":{"200":{"description":"Environment resource updated","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Environment.jsonld-api.read_api.read.environment-variables"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Environment-api.read_api.read.environment-variables"}}},"links":{}},"400":{"description":"Invalid input","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}},"422":{"description":"An error occurred","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}}},"links":{}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Update an environment","description":"Changes only the fields supplied; omitted fields are left unchanged. Environment variables are merged, not replaced: Add or change a variable by sending its name with a string value. Remove a variable by sending its name with a null value. Variables you do not name are left unchanged; omit the field entirely to change nothing. Platform-injected variables cannot be added, changed or removed.","parameters":[{"name":"publicId","in":"path","description":"Environment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}],"requestBody":{"description":"The updated Environment resource","content":{"application\/merge-patch+json":{"schema":{"$ref":"#\/components\/schemas\/Environment.EnvironmentUpdateApiRequest.jsonMergePatch"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Environment.EnvironmentUpdateApiRequest.jsonMergePatch"}}},"required":true}}},"\/v1\/environments\/{publicId}\/restart":{"post":{"operationId":"api_environments_publicIdrestart_post","tags":["Environment"],"responses":{"202":{"description":"Environment resource created","links":{}},"400":{"description":"Invalid input","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}},"422":{"description":"An error occurred","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/ConstraintViolation"}}},"links":{}}},"summary":"Creates a Environment resource.","description":"Creates a Environment resource.","parameters":[{"name":"publicId","in":"path","description":"Environment identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/payment-methods":{"get":{"operationId":"api_payment-methods_get_collection","tags":["PaymentMethod"],"responses":{"200":{"description":"PaymentMethod collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"PaymentMethod.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/PaymentMethod.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/PaymentMethod-api.read"}}}}}},"summary":"Retrieves the collection of PaymentMethod resources.","description":"Retrieves the collection of PaymentMethod resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]}},"\/v1\/payment-methods\/{publicId}":{"get":{"operationId":"api_payment-methods_publicId_get","tags":["PaymentMethod"],"responses":{"200":{"description":"PaymentMethod resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/PaymentMethod.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/PaymentMethod-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a PaymentMethod resource.","description":"Retrieves a PaymentMethod resource.","parameters":[{"name":"publicId","in":"path","description":"PaymentMethod identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"delete":{"operationId":"api_payment-methods_publicId_delete","tags":["PaymentMethod"],"responses":{"204":{"description":"PaymentMethod resource deleted"},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Delete a payment method","description":"Deletes the payment method together with every app booked on it and all of their environments. This cannot be undone.","parameters":[{"name":"publicId","in":"path","description":"PaymentMethod identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/people":{"get":{"operationId":"api_people_get_collection","tags":["People"],"responses":{"200":{"description":"Person collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"Person.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/Person.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Person-api.read"}}}}}},"summary":"Retrieves the collection of Person resources.","description":"Retrieves the collection of Person resources.","parameters":[{"name":"publicId[]","in":"query","description":"Return only the resources with these public ids.","required":false,"deprecated":false,"schema":{"type":"array","items":{"type":"string"}},"style":"form","explode":true},{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]}},"\/v1\/people\/{publicId}":{"get":{"operationId":"api_people_publicId_get","tags":["People"],"responses":{"200":{"description":"Person resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Person.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Person-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a Person resource.","description":"Retrieves a Person resource.","parameters":[{"name":"publicId","in":"path","description":"Person identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}},"\/v1\/you":{"get":{"operationId":"api_you_get","tags":["People"],"responses":{"200":{"description":"You resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/You.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/You-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a You resource.","description":"Retrieves a You resource.","parameters":[]}},"\/v1\/teams":{"get":{"operationId":"api_teams_get_collection","tags":["Team"],"responses":{"200":{"description":"Team collection","content":{"application\/ld+json":{"schema":{"type":"object","description":"Team.jsonld-api.read collection.","allOf":[{"$ref":"#\/components\/schemas\/HydraCollectionBaseSchema"},{"type":"object","required":["member"],"properties":{"member":{"type":"array","items":{"$ref":"#\/components\/schemas\/Team.jsonld-api.read"}}}}]}},"application\/json":{"schema":{"type":"array","items":{"$ref":"#\/components\/schemas\/Team-api.read"}}}}}},"summary":"Retrieves the collection of Team resources.","description":"Retrieves the collection of Team resources.","parameters":[{"name":"page","in":"query","description":"The collection page number","required":false,"deprecated":false,"schema":{"type":"integer","default":1},"style":"form","explode":true}]}},"\/v1\/teams\/{publicId}":{"get":{"operationId":"api_teams_publicId_get","tags":["Team"],"responses":{"200":{"description":"Team resource","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Team.jsonld-api.read"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Team-api.read"}}}},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Retrieves a Team resource.","description":"Retrieves a Team resource.","parameters":[{"name":"publicId","in":"path","description":"Team identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]},"delete":{"operationId":"api_teams_publicId_delete","tags":["Team"],"responses":{"204":{"description":"Team resource deleted"},"404":{"description":"Not found","content":{"application\/ld+json":{"schema":{"$ref":"#\/components\/schemas\/Error.jsonld"}},"application\/problem+json":{"schema":{"$ref":"#\/components\/schemas\/Error"}},"application\/json":{"schema":{"$ref":"#\/components\/schemas\/Error"}}},"links":{}}},"summary":"Delete a team","description":"Deletes the team, payment methods owned solely by it, and every app booked on those payment methods. This cannot be undone.","parameters":[{"name":"publicId","in":"path","description":"Team identifier","required":true,"deprecated":false,"schema":{"type":"string"},"style":"simple","explode":false}]}}},"components":{"schemas":{"App-api.read":{"type":"object","properties":{"publicId":{"type":"string"},"name":{"type":"string"},"description":{"type":["string","null"]},"createdAt":{"type":"string","format":"date-time"},"updatedAt":{"type":"string","format":"date-time"},"paymentMethod":{"readOnly":true,"type":["string","null"]},"environments":{"readOnly":true,"type":"array","items":{"type":"string"}},"people":{"readOnly":true,"type":"array","items":{"type":"string"}},"teams":{"readOnly":true,"type":"array","items":{"type":"string"}},"region":{"readOnly":true,"type":["string","null"]},"software":{"readOnly":true,"type":["string","null"]},"trial":{"readOnly":true,"type":"boolean"}}},"App.AppCreateApiRequest":{"type":"object","properties":{"teamId":{"pattern":"^(([a-z]{2})-[0-9a-z]{6})$","type":["string","null"]},"name":{"minLength":1,"maxLength":32,"type":"string","example":"acme-shop"},"region":{"type":"string","example":"eu-w1a","description":"Region identifier, e.g. \"eu-w1a\" or \"us-e1a\"."},"softwarePresetName":{"minLength":1,"maxLength":64,"type":["string","null"],"example":"laravel","description":"Software preset slug; defaults to \"general-php\"."},"initialEnvironment":{"type":["object","null"],"properties":{"softwareVersion":{"type":["string","null"],"description":"Major version only, e.g. \"11\"."},"phpVersion":{"type":["string","null"],"description":"PHP runtime version for the initial environment, e.g. \"8.4\". Defaults to the platform default. Setting it stops the environment from being auto-updated to newer PHP versions."},"cloudDomain":{"type":["string","null"],"description":"Cloud domain label without the root, e.g. \"acme-shop\". Omit to derive one from the app name; none is created when that name is invalid, reserved or taken. Set null to create no cloud domain."},"components":{"type":"object","description":"Component plans keyed by component slug. The value is a size key (e.g. \"sm\") or \"off\" to disable an optional component. Omitted optional components default to \"off\".","additionalProperties":{"type":"string"}},"autoscaling":{"type":"boolean","default":true,"description":"Enable autoscaling for the initial environment. Optional; defaults to true."},"deployment":{"type":["object","null"],"description":"Deployment configuration. The git field is required to configure deployment; omit the whole object to skip deployment.","required":["git"],"properties":{"git":{"type":"object","required":["repository","branch"],"properties":{"repository":{"type":"string","maxLength":255},"branch":{"type":"string","maxLength":255},"directory":{"type":"string","maxLength":255,"default":"\/","description":"Deploy directory. Optional; defaults to \"\/\". Must not be null or empty when provided."}}},"buildCommands":{"type":"array","items":{"type":"string"}},"postDeployCommands":{"type":"array","items":{"type":"string"}},"startFirstDeployment":{"type":"boolean","description":"Trigger a first deployment right after the app is created."}}}},"additionalProperties":false,"description":"Initial environment configuration.","example":{"softwareVersion":"11","phpVersion":"8.4","components":{"php":"sm","storage":"xs","traffic":"xs","backups":"xs"},"autoscaling":true,"deployment":{"git":{"repository":"acme\/shop","branch":"main","directory":"\/"},"buildCommands":["composer install --no-dev"],"postDeployCommands":["php artisan migrate --force"],"startFirstDeployment":true}}},"paymentMethodId":{"pattern":"^(([a-z]{2})-[0-9a-z]{6})$","type":["string","null"]}},"required":["name","region"]},"App.AppUpdateApiRequest.jsonMergePatch":{"type":"object","properties":{"name":{"minLength":1,"maxLength":32,"type":["string","null"],"example":"acme-shop","description":"New app name. Omit to leave unchanged."},"paymen
# --- truncated at 32 KB (54 KB total) ---
# Full source: https://artifacts.apis.io/fortrabbit-com/openapi/_original/fortrabbit-com-api-openapi.json