{"method":"GET","path":"https://api.revcent.com/v2/sites","summary":"Get Sites","description":"Returns a list of sites created with your account. View markdown documentation at https://revcent.com/documentation/markdown/mcp/operation/GetSites.md for an in-depth overview of this operation.","operationId":"GetSites","parameters":[{"description":"A limit on the number of objects to be returned. Limit can range between 1 and 25, and the default is 25.","in":"query","name":"limit","required":true,"schema":{"type":"integer","format":"int32","minimum":1,"maximum":25},"style":"form"},{"description":"Used for pagination, i.e. to skip to specific page of results.","in":"query","name":"page","required":true,"schema":{"type":"integer","format":"int32"},"style":"form"}],"requestBody":{"content":{"application/x-www-form-urlencoded":{"encoding":{},"schema":{"additionalProperties":false,"properties":{},"type":"object"}}},"required":false},"responses":{"200":{"content":{"application/json":{"schema":{"description":"","properties":{"api_call_id":{"type":"string","description":"A 20 character API call ID.","minLength":20,"maxLength":20},"api_call_unix":{"description":"Unix timestamp of when the API call was initiated.","type":"integer","format":"unix-time"},"code":{"description":"API call response code.","type":"integer","format":"int32","enum":[1]},"current_count":{"description":"The current number of items in the results.","type":"integer"},"current_page":{"description":"The current page for the items in the results.","type":"integer"},"results":{"items":{"type":"object","description":"A site.","additionalProperties":false,"properties":{"created_date_unix":{"description":"The unix timestamp of when the item was created.","type":"integer","format":"unix-time"},"id":{"type":"string","description":"A 20 character site ID.","minLength":20,"maxLength":20},"name":{"description":"The site name.","type":"string"},"description":{"description":"The site description.","type":"string"},"campaign":{"type":"object","additionalProperties":false,"description":"The campaign associated with the site. The campaign will be used for all sale API requests for the site.","properties":{"id":{"type":"string","title":"Campaign ID","description":"A 20 character campaign ID.","minLength":20,"maxLength":20},"name":{"description":"The campaign name.","type":"string"}}},"paypal_account":{"type":"object","additionalProperties":false,"description":"The PayPal account associated with the site. The PayPal account will be used to process PayPal payments for the site on sale API requests.","properties":{"id":{"type":"string","description":"A 20 character PayPal account ID.","minLength":20,"maxLength":20},"name":{"description":"The PayPal account name.","type":"string"}}},"payment_profile":{"type":"object","additionalProperties":false,"description":"The payment profile associated with the site. The payment profile will be used to process credit card payments for the site on sale API requests.","properties":{"id":{"type":"string","title":"Payment Profile ID","description":"A 20 character payment profile ID.","minLength":20,"maxLength":20},"name":{"description":"The payment profile name.","type":"string"}}},"product_group":{"type":"object","additionalProperties":false,"description":"The product group associated with the site. Products within the product group will be automatically added to the sites' JSON catalog, including product syncing on changes.","properties":{"id":{"type":"string","description":"A 20 character product group ID.","minLength":20,"maxLength":20},"name":{"description":"The product group name.","type":"string"}}},"tracking_domain":{"type":"object","additionalProperties":false,"description":"The tracking domain attached to the site. You can route traffic to the live/main deployment by associating a tracking domain with the RevCent Site via the AddTrackingDomainToSite operation.","properties":{"id":{"type":"string","description":"A 20 character tracking domain ID.","minLength":20,"maxLength":20},"name":{"description":"The tracking domain name.","type":"string"},"domain":{"description":"The domain.","type":"string"}}},"github_repo":{"description":"The GitHub repo URL.","type":"string"},"collaborators":{"type":"array","description":"An array of collaborators, each a valid GitHub username, which have access to the GitHub repository upon accepting the invite.","items":{"type":"string","description":"An individual GitHub username."}},"deployment":{"type":"object","additionalProperties":false,"description":"Deployment details associated with the RevCent Site. Includes the github SHA's, branches, and status.","properties":{"status":{"description":"Indicates whether the site is actively creating, updating, routing, deleting, or recovering the sites' infrastructure. Unless this value is ready, any MCP/API operations to modify the site will return a 'Deployment status is not ready' error. Values:<br><br>ready: Idle; API may accept edit/delete<br>provisioning: Initial repository/environments are being created<br>updating: Build, deployment, routing, or other mutation is active<br>deleting: Teardown is active<br>recovery_required: Safe automatic recovery is not possible","type":"string","enum":["ready","provisioning","updating","deleting","recovery_required"]},"health":{"description":"Indicates whether the sites' dev and live deployments are healthy, degraded after a failed change, unavailable because deployment has not succeeded, or not yet known. Values:<br><br>healthy: Both environments have successful current deployments<br>degraded: A prior deployment remains, but the latest deployment/change failed<br>unknown: Initial state<br>unavailable: One or both environments have never deployed successfully","type":"string","enum":["healthy","degraded","unavailable","unknown"]},"branches":{"type":"object","additionalProperties":false,"description":"Details for each of the GitHub branches, main and dev, for the site. Each branch is deployed separately and may be in a different state than the other branches. The main branch is the live deployment where custom domains are pointed, while the dev branch is the development deployment where [sitesubdomain].revcent.site is pointed.","properties":{"main":{"type":"object","additionalProperties":false,"description":"Details regarding the sites' main/live branch deployment.","properties":{"status":{"description":"The deployment lifecycle state for the main branch. It shows whether the main/live deployment is building, validating artifacts, deploying infrastructure and assets, successfully deployed, failed, or being deleted. It describes deployment only. Public routing is tracked separately in the routing object. Values:<br><br>building: The GitHub builder workflow is running.<br>artifact_verifying: Builder output is being validated and promoted.<br>deployment_queued: An approved artifact is waiting to deploy.<br>stack_deploying: CloudFormation is creating or updating the environment stack.<br>assets_mirroring: Static assets and the catalog are being copied to the runtime bucket.<br>deployed: The environment stack and current approved artifact are deployed; routing may still be inactive.<br>build_failed: Builder workflow or build dispatch failed.<br>deployment_failed: Artifact verification, CloudFormation, asset mirroring, catalog, or other deployment work failed.<br>deleting: The environment is being torn down.<br>deleted: The environments' stack-owned resources have been removed.","type":"string","enum":["deployed","building","artifact_verifying","deployment_queued","stack_deploying","assets_mirroring","build_failed","deployment_failed","deleting"]},"commit":{"type":"object","additionalProperties":false,"description":"Details regarding various deployment stages of the sites' main branch commits. Useful for keeping track of what commit is currently deployed, and what commit may be in process to be deployed.","properties":{"current":{"type":"object","additionalProperties":false,"description":"Details regarding the main branch commit currently deployed.","properties":{"date":{"description":"The commit date in ISO8601 format.","type":"string","format":"date-time"},"sha":{"description":"The GitHub SHA of the commit.","type":"string"}}},"in_process":{"type":"object","additionalProperties":false,"description":"Details regarding the main branch commit in process/building to be deployed and ultimately replace current.","properties":{"date":{"description":"The commit date in ISO8601 format.","type":"string","format":"date-time"},"sha":{"description":"The GitHub SHA of the commit.","type":"string"}}},"in_queue":{"type":"object","additionalProperties":false,"description":"Details regarding the main branch commit in queue, i.e. awaiting to be processed once the in_process commit is complete.","properties":{"date":{"description":"The commit date in ISO8601 format.","type":"string","format":"date-time"},"sha":{"description":"The GitHub SHA of the commit.","type":"string"}}}}},"routing":{"type":"object","additionalProperties":false,"description":"Details regarding the main deployment public routing. This is separate from the deployment status, as the deployment may be complete but the routing may not yet be active. Routing for the main deployment only occurs if the site has a tracking domain attached.","properties":{"status":{"description":"The public routing status of the main branch. Indicates whether the main branch is actively routing traffic to the live deployment, or if it is not yet configured, updating, failed, or being deleted. Values:<br><br>active: The main deployment is publicly accessible if a_record_ip is added to the tracking domains' DNS.<br>not_configured: The main deployment is not yet configured for public routing.<br>updating: The main deployment is in the process of updating the public routing.<br>failed: The main deployment has failed to update the public routing.<br>deleting: The main deployment is in the process of deleting the public routing.","type":"string","enum":["active","not_configured","updating","failed","deleting"]},"a_record_ip":{"description":"The A record IP address for the main deployment routing. Add this to the tracking domains' dns to direct traffic to the main/live deployment using the custom domain. Subdomains are allowed as main/live deployment are routed using wildcard hostname.","type":"string"}}}}},"dev":{"type":"object","additionalProperties":false,"description":"Details regarding the sites' dev branch deployment.","properties":{"status":{"description":"The deployment lifecycle state for the dev branch. It shows whether the dev deployment is building, validating artifacts, deploying infrastructure and assets, successfully deployed, failed, or being deleted. It describes deployment only. Public routing is tracked separately in the routing object. Values:<br><br>building: The GitHub builder workflow is running.<br>artifact_verifying: Builder output is being validated and promoted.<br>deployment_queued: An approved artifact is waiting to deploy.<br>stack_deploying: CloudFormation is creating or updating the environment stack.<br>assets_mirroring: Static assets and the catalog are being copied to the runtime bucket.<br>deployed: The environment stack and current approved artifact are deployed; routing may still be inactive.<br>build_failed: Builder workflow or build dispatch failed.<br>deployment_failed: Artifact verification, CloudFormation, asset mirroring, catalog, or other deployment work failed.<br>deleting: The environment is being torn down.<br>deleted: The environments' stack-owned resources have been removed.","type":"string","enum":["deployed","building","artifact_verifying","deployment_queued","stack_deploying","assets_mirroring","build_failed","deployment_failed","deleting"]},"commit":{"type":"object","additionalProperties":false,"description":"Details regarding various deployment stages of the sites' dev branch commits. Useful for keeping track of what commit is currently deployed, and what commit may be in process to be deployed.","properties":{"current":{"type":"object","additionalProperties":false,"description":"Details regarding the dev branch commit currently deployed.","properties":{"date":{"description":"The commit date in ISO8601 format.","type":"string","format":"date-time"},"sha":{"description":"The GitHub SHA of the commit.","type":"string"}}},"in_process":{"type":"object","additionalProperties":false,"description":"Details regarding the dev branch commit in process/building to be deployed and ultimately replace current.","properties":{"date":{"description":"The commit date in ISO8601 format.","type":"string","format":"date-time"},"sha":{"description":"The GitHub SHA of the commit.","type":"string"}}},"in_queue":{"type":"object","additionalProperties":false,"description":"Details regarding the dev branch commit in queue, i.e. awaiting to be processed once the in_process commit is complete.","properties":{"date":{"description":"The commit date in ISO8601 format.","type":"string","format":"date-time"},"sha":{"description":"The GitHub SHA of the commit.","type":"string"}}}}},"routing":{"type":"object","additionalProperties":false,"description":"Details regarding the dev deployments' public routing. This is separate from the deployment status, as the deployment may be complete but the routing may not yet be active.","properties":{"status":{"description":"The public routing status of the dev deployment. Indicates whether the dev deployment is publicly accessible, or if it is not yet configured, updating, failed, or being deleted. Values:<br><br>active: The dev deployment is publicly accessible using the custom URL provided.<br>not_configured: The dev deployment is not yet configured for public routing.<br>updating: The dev deployment is in the process of updating the public routing.<br>failed: The dev deployment has failed to update the public routing.<br>deleting: The dev deployment is in the process of deleting the public routing.","type":"string","enum":["active","not_configured","updating","failed","deleting"]},"url":{"description":"The public URL for the dev deployment.","type":"string"}}}}}}},"catalog":{"type":"object","additionalProperties":false,"description":"Details regarding the sites product catalog.","properties":{"last_generated":{"description":"The ISO8601 date when the product catalog was last generated.","type":"string","format":"date-time"},"status":{"description":"The current state of the sites' generated product catalog. It indicates whether the catalog is being published, available in the site runtime bucket, deferred until runtime infrastructure exists, or failed during generation or upload.","type":"string","enum":["ready","publishing","deferred","failed"]},"product_count":{"description":"The current number of products in the sites' last generated product catalog.","type":"integer"}}}}},"updated_date_unix":{"description":"The unix timestamp of when the item was last updated.","type":"integer","format":"unix-time"}}},"type":"array"},"total_count":{"description":"The total number of items found given the date_start and date_end query parameters.","type":"integer"},"total_pages":{"description":"The total number of pages given the date_start, date_end and limit query parameters.","type":"integer"}},"type":"object","additionalProperties":false}}},"description":"Successful response."},"default":{"content":{"application/json":{"schema":{"description":"","properties":{"api_call_id":{"type":"string","description":"A 20 character API call ID.","minLength":20,"maxLength":20},"api_call_unix":{"description":"Unix timestamp of when the API call was initiated.","type":"integer","format":"unix-time"},"code":{"description":"This value indicates that there is an error. Will always be 0.","type":"integer","enum":[0]},"error_code":{"description":"The specific error code.","type":"string"},"message":{"description":"A human readable description of the error.","type":"string"},"result":{"description":"A description of the API call result.","type":"string"}},"title":"APIStandardErrors","type":"object","additionalProperties":false}}},"description":"Error response."}}}