API Reference
Complete list of all public ZopNight API endpoints with request/response documentation, grouped by domain.
Complete list of all public API endpoints. Click any endpoint to view detailed documentation with request/response examples.
Base URL: https://zopnight.com/api
Authentication
/auth/loginAuthenticate and receive tokens
/auth/signupCreate a new user account
/auth/refreshRefresh access token
/auth/logoutInvalidate session
/auth/email/verifyRequest email verification OTP
/auth/email/otp/validateValidate OTP code
/auth/password/forgetInitiate password reset
/auth/password/resetComplete password reset
/auth/saml/initiateBegin SAML SSO flow
/auth/v2/organisationCreate organization
Cloud Accounts
/cloud-accountsList cloud accounts
/cloud-accountsConnect cloud account
/cloud-accounts/{accountID}Get cloud account
/cloud-accounts/{accountID}Update cloud account
/cloud-accounts/{accountID}Delete cloud account
/connect/gcp/oauth-urlGet GCP OAuth URL
/connect/gcp/oauth-exchangeExchange GCP OAuth code
/connect/gcp/oauth-finalizeFinalize GCP OAuth
/cloud-accounts/{accountID}/clustersList clusters in a cloud account
/cloud-accounts/{accountID}/clusters/{region}/{clusterName}/accessRegister a cluster for kubeconfig access
/cloud-accounts/{accountID}/clusters/{region}/{clusterName}/accessDeregister a cluster
Resources
/resourcesList resources with filtering
/resources/countCount resources matching filters
/resources/{resourceID}Get resource detail
/resources/by-idsGet resources by IDs
/resources/by-uidsGet resources by cloud UIDs (query)
/resources/by-uidsGet resources by cloud UIDs (body)
/resources/discovery-summaryPer-provider discovery rollup
/resources/access-checkVerify cloud credentials still have list/describe access
/resources/last-syncedMost recent discovery timestamp per provider/account
/resources/filter-fieldsGet available filter options
/resources/refreshTrigger discovery refresh
/resources/refresh/statusCheck refresh status
Schedules
/schedulesList schedules
/schedulesCreate schedule
/schedules/{scheduleID}Get schedule
/schedules/{scheduleID}Update schedule
/schedules/{scheduleID}Delete schedule
/schedules/{scheduleID}/resources/{resourceID}Attach resource
/schedules/{scheduleID}/resources/{resourceID}Detach resource
/schedules/{scheduleID}/groups/{groupID}Attach group
/schedules/{scheduleID}/groups/{groupID}Detach group
Resource Groups
/resource-groupsList resource groups
/resource-groupsCreate resource group
/resource-groups/{groupID}Get resource group
/resource-groups/{groupID}Update resource group
/resource-groups/{groupID}Delete resource group
/resource-groups/{groupID}/schedulesGet group schedules
/resource-groups/{groupID}/resources/{resourceID}Add member
/resource-groups/{groupID}/resources/{resourceID}/sequenceUpdate execution order
/resource-groups/{groupID}/resources/{resourceID}Remove member
Overrides
/overridesList overrides
/overridesCreate override
/overrides/{overrideID}Get override
/overrides/{overrideID}Delete override
/resource-groups/{groupID}/overridesList group overrides
/resource-groups/{groupID}/overridesCreate group override
Actions & Execution
/actionsSubmit manual action
/actions/bulkSubmit bulk action
/actions/{actionID}Get action status
/actions/bulk/{bulkActionID}Get bulk action status
/actions/bulk/latestGet the most recent bulk action
/state-historyGet state history
Reports & Analytics
/reports/summaryDashboard summary
/reports/trendsCost trends
/reports/cost-historyLong-range cost history
/reports/metricsAggregate utilization metrics
/reports/costs/resourcesResource costs
/reports/costs/breakdownCost breakdown by dimensions (Sankey)
/reports/providers/summaryProvider summary
/reports/resources/summaryResource summary
/reports/resources/metricsPer-resource utilization metrics
/reports/resources/activityPer-resource activity timeline
/reports/snapshotsMonthly snapshots
/reports/anomaliesList anomaly records
/reports/exportExport a report as CSV/JSON
Showback (Cost Attribution)
/reports/teamsCost per team
/reports/teams/{teamID}Team breakdown
/reports/teams/{teamID}/resourcesPer-resource cost for a team
/reports/teams/trendsTeam cost trends
/reports/tagsTag keys with attributed cost
/reports/tags/{tagKey}Tag values for a key
/reports/tags/{tagKey}/values/{tagValue}/resourcesResources by tag
/reports/tags/trendsTag cost trends
Budgets
/budgets/summaryBudget summary
/budgetsList budgets
/budgetsCreate budget
/budgets/{budgetID}Update budget
/budgets/{budgetID}Delete budget
/eventsList scheduler events
/eventsRecord scheduler event
/currency-exchange-rateCurrent foreign-exchange rates used by reports
Billing
/billing/sync-statusOrg-wide billing sync status
/billing/verifyTrigger an org-wide billing sync
/cloud-accounts/{accountID}/billing/verifyStart a per-account verification
/cloud-accounts/{accountID}/billing/verify/{verifyID}Poll a verification job
Recommendations
/recommendations/resourcesList resources with recommendation summaries
/recommendations/rulesList rules with recommendation summaries
/recommendationsList individual recommendations
/recommendations/summaryRecommendation summary
/recommendations/summary/providersProvider breakdown
/recommendations/filter-fieldsGet available filter fields
/recommendations/resources/{resourceUID}Resource recommendations (deprecated)
/recommendations/{recID}/detailRecommendation detail
/recommendations/{recommendationID}Update recommendation
/recommendations/refreshRefresh recommendations
Auto-Tagging
/autotaggingList auto-tag suggestions
/autotagging/countCount auto-tag suggestions by status
/autotagging/{resourceUID}Accept or reject a suggestion
/autotagging/acceptAccept auto-tag (legacy, deprecated 2026-07-01)
/autotagging/rejectReject auto-tag (legacy, deprecated 2026-07-01)
VM Autoscaling
/autoscaler-policiesList autoscaler policies
/autoscaler-policiesCreate policy
/autoscaler-policies/countCount policies by status
/autoscaler-policies/filtersDistinct filter values
/autoscaler-policies/smart-defaultsSmart defaults for a target
/autoscaler-policies/required-permissionsIAM permissions to provision infra
/autoscaler-policies/create-infrastructureProvision autoscaler infrastructure
/autoscaler-policies/infrastructure-statusProvisioning status for a cloud account
/autoscaler-policies/{policyID}Get policy
/autoscaler-policies/{policyID}Update policy
/autoscaler-policies/{policyID}Delete policy
/autoscaler-policies/{policyID}/applyApply latest recommendation
/autoscaler-policies/{policyID}/pausePause evaluation
/autoscaler-policies/{policyID}/resumeResume evaluation
/autoscaler-policies/{policyID}/removeSoft-delete the policy
/autoscaler-policies/{policyID}/eventsPer-policy event log
Event Readiness
/event-readinessList plans
/event-readinessCreate a plan
/event-readiness/calculatePreview scaled capacity
/event-readiness/calculate-dbPreview database tier change
/event-readiness/preview-readinessPreview a full plan without saving
/event-readiness/countCount plans
/event-readiness/filtersFilter values
/event-readiness/{eventID}Get a plan
/event-readiness/{eventID}Update a plan
/event-readiness/{eventID}Delete a plan
/event-readiness/{eventID}/db-impactEstimated DB impact
/event-readiness/{eventID}/cost-estimateEstimated extra cost
/event-readiness/{eventID}/readiness-checkRe-validate the plan
/event-readiness/{eventID}/scheduleDispatch the plan to executor
/event-readiness/{eventID}/cancelCancel an active plan
/event-readiness/{eventID}/logsPlan audit log
Dashboards
/dashboardsList dashboards (system presets + user-created)
/dashboardsCreate a dashboard
/dashboards/{dashboardID}Get a dashboard
/dashboards/{dashboardID}Update a dashboard
/dashboards/{dashboardID}Delete a dashboard
/dashboards/defaultSet the org default dashboard
Notifications
/notificationsList notifications (legacy)
/notificationsCreate notification (legacy)
/notifications/{notificationID}Update notification (legacy)
/notifications/{notificationID}Delete notification (legacy)
/notifications/channelsList notification channels
/notifications/channelsCreate notification channel
/notifications/channels/{channelID}Update notification channel
/notifications/channels/{channelID}Delete notification channel
/notifications/subscriptionsList subscriptions
/notifications/subscriptionsCreate subscription
/notifications/subscriptions/{subID}Update subscription
/notifications/subscriptions/{subID}Delete subscription
/notifications/subscriptions/bulkBulk create/update subscriptions
/notifications/event-typesList event types
/notifications/email-preferencesGet email preferences
/notifications/email-preferences/{eventKey}Update email preference
/notifications/share/recommendation/{recID}Share recommendation
/notifications/channels/{channelID}/testTest channel delivery
Users & Teams
/usersList users
/usersInvite user
/users/{email}Update user
/users/{email}Remove user
/teamsList teams
/teamsCreate team
/teams/{teamID}Get team
/teams/{teamID}Update team
/teams/{teamID}Delete team
/teams/{teamID}/membersList team members
/teams/{teamID}/membersAdd team member
/teams/{teamID}/members/{email}Remove team member
/teams/{teamID}/resourcesList team resources
/teams/{teamID}/resourcesAssign resource to team
/teams/{teamID}/resources/{resourceUID}Unassign resource
Roles & Permissions
/rolesList roles
/rolesCreate role
/roles/{roleID}Get role
/roles/{roleID}Update role
/roles/{roleID}Delete role
/policiesList policies
/assignmentsList role assignments
/assignmentsCreate assignment
/assignments/{assignmentID}Update assignment
/assignments/{assignmentID}Delete assignment
/permissionsGet current user permissions
/users/{email}/permissionsGet user permissions
/users/{email}/permissions/verifyVerify permission
Organizations
/organisationsList organizations
/organisationsCreate organization
/organisationGet current organization
/organisationUpdate organization
/organisationDelete organization
Audit Logs
/audit-logsList audit logs
/audit-logs/exportExport audit logs as CSV
Deployment Spaces
/spacesList deployment spaces. (config)
/spacesRegister an existing cluster as a space. (config)
/spaces/{spaceID}Get a space. (config)
/spaces/{spaceID}/statusToggle a space active/inactive. (config)
/spaces/{spaceID}Delete a space. (config)
/space-discovery/{spaceID}/namespacesList namespaces on a space’s cluster. (deployer)
/space-discovery/{spaceID}/namespacesCreate a namespace on a space’s cluster. (deployer)
/cloud-accounts/{accountID}/clustersList clusters discovered on a cloud account. (config)
/cloud-accounts/{accountID}/clusters/{region}/{clusterName}/accessRegister cluster access for kubeconfig minting. (config)
/cloud-accounts/{accountID}/clusters/{region}/{clusterName}/accessDeregister cluster access. (config)
Provisioning
/provisioning-jobsCreate a provisioning job. (provisioner)
/provisioning-jobsList provisioning jobs. (provisioner)
/provisioning-jobs/{jobID}Get a job. (provisioner)
/provisioning-jobs/{jobID}Update lightweight job fields. (provisioner)
/provisioning-jobs/{jobID}Delete a job. (provisioner)
/provisioning-jobs/{jobID}/retryRetry a failed job. (provisioner)
/provisioning-jobs/{jobID}/databasesCreate a database on the parent datastore. (provisioner)
/provisioning-jobs/{jobID}/databasesList databases. (provisioner)
/provisioning-jobs/{jobID}/databases/{dbID}Get a database. (provisioner)
/provisioning-jobs/{jobID}/databases/{dbID}Delete a database. (provisioner)
/provisioning-jobs/{jobID}/connectionsCreate a job-scoped connection. (provisioner)
/provisioning-jobs/{jobID}/connectionsList job-scoped connections. (provisioner)
/provisioning-jobs/{jobID}/connections/{connID}Get a job-scoped connection. (provisioner)
/provisioning-jobs/{jobID}/connections/{connID}Delete a job-scoped connection. (provisioner)
/provisioning-jobs/{jobID}/databases/{dbID}/connectionsCreate a database-scoped connection. (provisioner)
/provisioning-jobs/{jobID}/databases/{dbID}/connectionsList database-scoped connections. (provisioner)
/provisioning-jobs/{jobID}/databases/{dbID}/connections/{connID}Get a database-scoped connection. (provisioner)
/provisioning-jobs/{jobID}/databases/{dbID}/connections/{connID}Delete a database-scoped connection. (provisioner)
/provisioning-jobs/install-componentInstall a catalog component. (provisioner)
/catalog/componentsList available catalog components. (provisioner)
Remediation Jobs
/remediation-jobsStart a remediation workflow for a recommendation. (provisioner)
/remediation-jobs/{id}/cancelCancel a running remediation. (provisioner)
/remediation-jobs/{jobID}/steps-by-id/{stepID}/approveApprove an approval-gated step (by stable step ID). (provisioner)
/remediation-jobs/{jobID}/steps-by-id/{stepID}/rejectReject an approval-gated step (by stable step ID). (provisioner)
/remediation-jobs/{id}/steps/{stepName}/approveApprove an approval-gated step (by step name, legacy). (provisioner)
/remediation-jobs/{id}/steps/{stepName}/rejectReject an approval-gated step (by step name, legacy). (provisioner)
/remediation-jobs/{id}/auditStep-level audit timeline. (provisioner)
Deployments
/deploymentsList deployments. (config)
/deploymentsCreate a deployment. (config)
/deployments/{id}Get a deployment. (config)
/deployments/{id}Delete a deployment (invokes deployer Teardown gRPC before soft-delete). (config)
/deployments/{id}/configsUpdate configs (creates a revision on next deploy). (config)
/deployments/{id}/canvas-positionPersist canvas (x, y) coordinate. (config)
/deployments/{id}/analyzeRe-run deploy-readiness checks. (deployer)
/deployments/{id}/revisionsCreate a revision. (deployer)
/deployments/{id}/revisionsList revisions. (deployer)
/deployments/{id}/revisions/{revID}Get a revision. (deployer)
/deployments/{id}/rollbackRoll back to a prior revision. (deployer)
/deployments/{id}/eventsDeployment event timeline. (deployer)
/deployments/{id}/loadbalancerLoadBalancer status. (deployer)
/environments/{envID}/deploymentsList deployments in env. (config)
/environments/{envID}/deploymentsCreate deployment in env. (config)
Builds
/analyzeAnalyze a repo for deploy readiness (wizard pre-create). (deployer)
/repositoriesList connected repositories. (deployer)
/branchesList branches in a repository. (deployer)
Projects & Environments
/projectsCreate a project. (config)
/projectsList projects. (config)
/projects/statsBatch project stats (env count, status buckets). (config)
/projects/{projectID}Get a project. (config)
/projects/{projectID}Update a project. (config)
/projects/{projectID}Delete a project. (config)
/projects/{projectID}/environmentsCreate environment. (config)
/projects/{projectID}/environmentsList environments. (config)
/projects/{projectID}/environments/{envID}Get env (nested). (config)
/projects/{projectID}/environments/{envID}Update env. (config)
/projects/{projectID}/environments/{envID}Delete env. (config)
/environments/{envID}Get env (flat lookup). (config)
/environments/{envID}/statsEnv stats (live cluster query). (deployer)
/environments/{envID}/cluster-discoveryLive cluster discovery (ingress + cert-manager). (deployer)
Service Connections
/environments/{envID}/deployments/connectionsCreate a service connection. (deployer)
/environments/{envID}/deployments/connectionsList service connections in env. (deployer)
/environments/{envID}/deployments/connections/{connectionID}Get a service connection. (deployer)
/environments/{envID}/deployments/connections/{connectionID}Soft-delete a service connection. (deployer)
Integrations
/integrationsList integrations
/integrationsCreate an integration
/integrations/{id}Get an integration
/integrations/{id}Update an integration
/integrations/{id}Delete an integration
/integrations/github/installBegin GitHub App install flow
/integrations/github/callbackGitHub install/OAuth callback
Webhooks
/webhooks/githubGitHub event delivery (HMAC-authenticated; idempotent via delivery_id UUID v5). (deployer)
/build-callbacks/{revisionID}Build runner reports image readiness (JWT-authenticated in body, secret = BUILD_CALLBACK_SECRET). (deployer)