/Docs

Public API: Resources

Every public-API endpoint, grouped by resource family. This index is auto-generated from the live OpenAPI document — when a new route ships in the public-API contract, it appears here on the next page render without any docs edits.

Spec version: 2026-05-17 213 endpoints across 31 resource families.

Analysis plans

  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/analysis-plan
    operationId
    getAnalysisPlan
    Summary
    Get the analysis plan for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/analysis-plan \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/analysis-plan
    operationId
    createAnalysisPlan
    Summary
    Create an analysis plan for a draft or scheduled experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/analysis-plan \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/analysis-plan
    operationId
    updateAnalysisPlan
    Summary
    Update an unsealed analysis plan
    Scopes
    experiments:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/analysis-plan \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/analysis-plan/amendments
    operationId
    listAnalysisPlanAmendments
    Summary
    List amendments to a sealed analysis plan
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/analysis-plan/amendments \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/analysis-plan/amendments
    operationId
    createAnalysisPlanAmendment
    Summary
    Amend a sealed analysis plan field
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/analysis-plan/amendments \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

API tokens

  • GET/api/orgs/{orgId}/tokens
    operationId
    listApiTokens
    Summary
    List API tokens for an organisation
    Scopes
    tokens:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/tokens \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/tokens
    operationId
    createApiToken
    Summary
    Create a new API token (returns secret once)
    Scopes
    tokens:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/tokens \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/tokens/{tokenId}
    operationId
    getApiToken
    Summary
    Get a single API token
    Scopes
    tokens:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/tokens/<tokenId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/tokens/{tokenId}
    operationId
    updateApiToken
    Summary
    Update API token metadata (name, description)
    Scopes
    tokens:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/tokens/<tokenId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/tokens/{tokenId}
    operationId
    revokeApiToken
    Summary
    Revoke an API token (soft-revoke; audit history preserved)
    Scopes
    tokens:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/tokens/<tokenId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/tokens/{tokenId}/rotate
    operationId
    rotateApiToken
    Summary
    Rotate an API token: issue a new secret, keep the same id and scopes
    Scopes
    tokens:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/tokens/<tokenId>/rotate \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Audiences

  • GET/api/orgs/{orgId}/audiences
    operationId
    listAudiences
    Summary
    List audiences in an organisation
    Scopes
    audiences:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/audiences \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/audiences
    operationId
    createAudience
    Summary
    Create an audience
    Scopes
    audiences:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/audiences \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/audiences/{audienceId}
    operationId
    getAudience
    Summary
    Get an audience by id
    Scopes
    audiences:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/audiences/<audienceId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/audiences/{audienceId}
    operationId
    updateAudience
    Summary
    Update an audience
    Scopes
    audiences:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/audiences/<audienceId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/audiences/{audienceId}
    operationId
    deleteAudience
    Summary
    Delete an audience
    Scopes
    audiences:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/audiences/<audienceId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Audit logs

  • GET/api/orgs/{orgId}/audit-logs
    operationId
    listAuditLogs
    Summary
    Query the organisation audit log
    Scopes
    audit:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/audit-logs \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/audit-log
    operationId
    getExperimentAuditLog
    Summary
    Get the visual-editor audit-log entries for an experiment
    Scopes
    audit:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/audit-log \
    2 -H "Authorization: Bearer avsb_svc_..."

Billing

  • GET/api/orgs/{orgId}/billing
    operationId
    getOrgBilling
    Summary
    Get billing summary for an organisation
    Scopes
    org:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/billing \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PUT/api/orgs/{orgId}/billing
    operationId
    updateBillingPayment
    Summary
    Update billing payment method
    Scopes
    org:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/billing \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/billing
    operationId
    changeBillingPlan
    Summary
    Change billing plan
    Scopes
    org:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/billing \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Environments

  • GET/api/orgs/{orgId}/projects/{projectId}/environments
    operationId
    listEnvironments
    Summary
    List active flag environments for a project
    Scopes
    projects:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/environments \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/environments
    operationId
    createEnvironment
    Summary
    Create a flag environment in a project
    Scopes
    projects:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/environments \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/projects/{projectId}/environments/{envId}
    operationId
    updateEnvironment
    Summary
    Update a flag environment
    Scopes
    projects:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/environments/<envId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/environments/{envId}
    operationId
    deleteEnvironment
    Summary
    Soft-delete a flag environment
    Scopes
    projects:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/environments/<envId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/environments/{envId}/publish
    operationId
    publishEnvironment
    Summary
    Publish the flag datafile for an environment
    Scopes
    projects:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/environments/<envId>/publish \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Exclusion groups

  • GET/api/orgs/{orgId}/projects/{projectId}/exclusion-groups
    operationId
    listExclusionGroups
    Summary
    List exclusion groups in a project
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/exclusion-groups
    operationId
    createExclusionGroup
    Summary
    Create an exclusion group in a project
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/exclusion-groups/{groupId}
    operationId
    getExclusionGroup
    Summary
    Get an exclusion group by id
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups/<groupId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/exclusion-groups/{groupId}
    operationId
    updateExclusionGroup
    Summary
    Update an exclusion group
    Scopes
    experiments:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups/<groupId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/exclusion-groups/{groupId}
    operationId
    deleteExclusionGroup
    Summary
    Delete an empty exclusion group
    Scopes
    experiments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups/<groupId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/exclusion-groups/{groupId}/experiments
    operationId
    attachExperimentToExclusionGroup
    Summary
    Attach an experiment to an exclusion group with a traffic slot
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups/<groupId>/experiments \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/exclusion-groups/{groupId}/experiments/{experimentId}
    operationId
    detachExperimentFromExclusionGroup
    Summary
    Detach an experiment from an exclusion group
    Scopes
    experiments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/exclusion-groups/<groupId>/experiments/<experimentId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Experiments

  • GET/api/orgs/{orgId}/projects/{projectId}/experiments
    operationId
    listExperiments
    Summary
    List experiments in a project
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments
    operationId
    createExperiment
    Summary
    Create an experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}
    operationId
    getExperiment
    Summary
    Get an experiment by id
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}
    operationId
    updateExperiment
    Summary
    Update an experiment
    Scopes
    experiments:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}
    operationId
    deleteExperiment
    Summary
    Delete an experiment
    Scopes
    experiments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/archive
    operationId
    archiveExperiment
    Summary
    Archive an experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/archive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/cancel-schedule
    operationId
    cancelScheduledExperiment
    Summary
    Cancel a scheduled experiment (optionally scoped to launch or end)
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/cancel-schedule \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/launch
    operationId
    launchExperiment
    Summary
    Launch (or schedule) an experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/launch \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/pause
    operationId
    pauseExperiment
    Summary
    Pause a running experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/pause \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/stop
    operationId
    stopExperiment
    Summary
    Stop a running experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/stop \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/unarchive
    operationId
    unarchiveExperiment
    Summary
    Move a completed experiment back to draft
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/unarchive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/save
    operationId
    saveExperimentDraft
    Summary
    Bulk-save experiment variations, triggers and project.js
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/save \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/discard-changes
    operationId
    discardExperimentChanges
    Summary
    Discard pending changes on a running experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/discard-changes \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/publish-changes
    operationId
    publishExperimentChanges
    Summary
    Publish pending changes on a running experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/publish-changes \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/lock
    operationId
    lockExperiment
    Summary
    Acquire, refresh, or release a variation edit lock
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/lock \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/edit-context
    operationId
    getEditContext
    Summary
    Get the visual-editor edit context for the current actor
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/edit-context \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/preview
    operationId
    previewExperiment
    Summary
    Generate a preview datafile for an experiment variation
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/preview \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/preview-link
    operationId
    createPreviewLink
    Summary
    Create a shareable preview link for an experiment variation
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/preview-link \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/preview-link/{linkId}/revoke
    operationId
    revokePreviewLink
    Summary
    Revoke a preview link
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/preview-link/<linkId>/revoke \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/snippet-status
    operationId
    getExperimentSnippetStatus
    Summary
    Get the last-seen snippet event timestamp for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/snippet-status \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/audiences
    operationId
    listExperimentAudiences
    Summary
    List audiences attached to an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/audiences \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/metric-bindings
    operationId
    listExperimentMetricBindings
    Summary
    List metric bindings attached to an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/metric-bindings \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/metric-bindings
    operationId
    attachExperimentMetricBinding
    Summary
    Attach a metric binding to an experiment
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/metric-bindings \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/metric-bindings/{metricBindingId}
    operationId
    updateExperimentMetricBinding
    Summary
    Update an attached metric binding's role / primary flag
    Scopes
    experiments:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/metric-bindings/<metricBindingId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/metric-bindings/{metricBindingId}
    operationId
    detachExperimentMetricBinding
    Summary
    Detach a metric binding from an experiment
    Scopes
    experiments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/metric-bindings/<metricBindingId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/visual-changes
    operationId
    listExperimentVisualChanges
    Summary
    List visual-editor changes per variation for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/visual-changes \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PUT/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/visual-changes
    operationId
    replaceExperimentVisualChanges
    Summary
    Replace the full visual-changes set for an experiment
    Scopes
    experiments:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/visual-changes \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/visual-changes/upload-image
    operationId
    uploadVisualChangeImage
    Summary
    Upload an image asset referenced by visual changes
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/visual-changes/upload-image \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/visual-editor-metrics
    operationId
    getVisualEditorMetrics
    Summary
    Get visual-editor telemetry for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/visual-editor-metrics \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/errors
    operationId
    getExperimentErrors
    Summary
    Get the error and warning log for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/errors \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/errors/export
    operationId
    exportExperimentErrors
    Summary
    Export the error log for an experiment as CSV or JSON
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/errors/export \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/errors/acknowledge
    operationId
    acknowledgeExperimentErrors
    Summary
    Acknowledge (dismiss) the active error banner for an experiment's current code
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/errors/acknowledge \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/draft-history
    operationId
    listExperimentDraftHistory
    Summary
    List draft history entries for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/draft-history \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/draft-history/{historyId}
    operationId
    getExperimentDraftHistoryEntry
    Summary
    Get a single draft history entry
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/draft-history/<historyId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • DELETE/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/draft-history/{historyId}
    operationId
    deleteExperimentDraftHistoryEntry
    Summary
    Delete a draft history entry
    Scopes
    experiments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/draft-history/<historyId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/draft-history/{historyId}/restore
    operationId
    restoreExperimentDraftHistoryEntry
    Summary
    Restore an experiment to a draft history snapshot
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/draft-history/<historyId>/restore \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/presence
    operationId
    recordVisualEditorPresence
    Summary
    Record a visual-editor presence heartbeat
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/presence \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/presence/ping
    operationId
    sendVisualEditorPing
    Summary
    Nudge another collaborator on a variation tab
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/presence/ping \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/compile
    operationId
    compileExperimentSource
    Summary
    Compile experiment variation source (SCSS/CSS/TS/JS) to deployable output
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/compile \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/schedule
    operationId
    scheduleExperiment
    Summary
    Create or update an experiment schedule
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/schedule \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Flag attributes

  • GET/api/orgs/{orgId}/projects/{projectId}/flag-attributes
    operationId
    listFlagAttributes
    Summary
    List flag attributes for a project
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-attributes \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flag-attributes
    operationId
    createFlagAttribute
    Summary
    Create a flag attribute
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-attributes \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/projects/{projectId}/flag-attributes/{attrId}
    operationId
    updateFlagAttribute
    Summary
    Update a flag attribute
    Scopes
    flags:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-attributes/<attrId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flag-attributes/{attrId}
    operationId
    deleteFlagAttribute
    Summary
    Delete a custom flag attribute
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-attributes/<attrId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Flag drafts

  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/draft-history
    operationId
    listFlagDraftHistory
    Summary
    List historical drafts for a flag
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/draft-history \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/draft-history/{historyId}
    operationId
    getFlagDraftHistoryEntry
    Summary
    Get a flag draft-history entry
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/draft-history/<historyId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/draft-history/{historyId}
    operationId
    deleteFlagDraftHistoryEntry
    Summary
    Delete a flag draft-history entry
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/draft-history/<historyId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/draft-history/environments
    operationId
    listFlagDraftHistoryEnvironments
    Summary
    List environment facets for the flag draft-history filter
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/draft-history/environments \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/draft
    operationId
    getFlagEnvironmentDraft
    Summary
    Get the stashed draft for a flag environment
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/draft \
    2 -H "Authorization: Bearer avsb_svc_..."
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/draft
    operationId
    deleteFlagEnvironmentDraft
    Summary
    Discard the stashed draft for a flag environment
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/draft \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/save
    operationId
    saveFlagEnvironmentDraft
    Summary
    Save or publish a flag environment draft
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/save \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Flag environments

  • PATCH/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}
    operationId
    updateFlagEnvironment
    Summary
    Update a flag environment config
    Scopes
    flags:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/cascade-preview
    operationId
    getFlagEnvironmentCascadePreview
    Summary
    Preview the cascade impact of toggling an environment
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/cascade-preview \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/pause
    operationId
    pauseFlagEnvironment
    Summary
    Pause a flag environment
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/pause \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/run
    operationId
    runFlagEnvironment
    Summary
    Resume a flag environment
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/run \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/schedule
    operationId
    scheduleFlagEnvironment
    Summary
    Create or update a flag-environment schedule
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/schedule \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/schedule
    operationId
    cancelFlagEnvironmentSchedule
    Summary
    Cancel a flag-environment schedule (optionally scoped to enable or disable)
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/schedule \
    2 -H "Authorization: Bearer avsb_svc_..."

Flag events

  • GET/api/orgs/{orgId}/projects/{projectId}/flag-events
    operationId
    listFlagEvents
    Summary
    List flag events for a project (deprecated alias for metrics)
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-events \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flag-events
    operationId
    createFlagEvent
    Summary
    Create a flag event (deprecated alias for metrics)
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-events \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/projects/{projectId}/flag-events/{eventId}
    operationId
    updateFlagEvent
    Summary
    Update a flag event (deprecated alias for metrics)
    Scopes
    flags:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-events/<eventId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flag-events/{eventId}
    operationId
    deleteFlagEvent
    Summary
    Delete a flag event (deprecated alias for metrics)
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flag-events/<eventId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Flag overrides

  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/overrides
    operationId
    listFlagEnvironmentOverrides
    Summary
    List per-user overrides for a flag environment
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/overrides \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PUT/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/overrides
    operationId
    replaceFlagEnvironmentOverrides
    Summary
    Replace per-user overrides for a flag environment
    Scopes
    flags:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/overrides \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Flag rule results

  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/rules/{ruleId}/results
    operationId
    getFlagRuleResults
    Summary
    Compute analysis results for a single flag rule
    Scopes
    results:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/rules/<ruleId>/results \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/rules/{ruleId}/results/compare
    operationId
    compareFlagRuleEngines
    Summary
    Compute side-by-side analysis results under every stats engine for a rule
    Scopes
    results:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/rules/<ruleId>/results/compare \
    2 -H "Authorization: Bearer avsb_svc_..."

Flag rules

  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules
    operationId
    listFlagRules
    Summary
    List rules for a flag in a specific environment (sorted by type priority)
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules
    operationId
    createFlagRule
    Summary
    Create a new rule (TARGETED_DELIVERY or AB_TEST) for a flag environment
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}
    operationId
    getFlagRule
    Summary
    Get a single flag rule with relations
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}
    operationId
    updateFlagRule
    Summary
    Update a flag rule (variations, audiences, metrics, analysis config)
    Scopes
    flags:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}
    operationId
    deleteFlagRule
    Summary
    Delete a flag rule
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}/duplicate
    operationId
    duplicateFlagRule
    Summary
    Duplicate a flag rule within the same environment (disabled by default)
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId>/duplicate \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PUT/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}/exclusion-group
    operationId
    setFlagRuleExclusionGroup
    Summary
    Attach or detach an exclusion group for a flag rule
    Scopes
    flags:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId>/exclusion-group \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}/lock
    operationId
    applyFlagRuleLockAction
    Summary
    Acquire, refresh, release, request, or take-over the rule edit lock
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId>/lock \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}/pause
    operationId
    pauseFlagRule
    Summary
    Pause a flag rule (rule state → PAUSED)
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId>/pause \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/{ruleId}/run
    operationId
    runFlagRule
    Summary
    Resume / start running a flag rule (rule state → RUNNING)
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/<ruleId>/run \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/copy
    operationId
    copyFlagRulesBetweenEnvs
    Summary
    Copy all rules for a flag from one environment to another
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/copy \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PUT/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/envs/{envId}/rules/reorder
    operationId
    reorderFlagRules
    Summary
    Reorder all flag rules within an environment (atomic)
    Scopes
    flags:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/envs/<envId>/rules/reorder \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Flags

  • GET/api/orgs/{orgId}/projects/{projectId}/flags
    operationId
    listFlags
    Summary
    List flags in a project
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flags
    operationId
    createFlag
    Summary
    Create a flag
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}
    operationId
    getFlag
    Summary
    Get a flag by id
    Scopes
    flags:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}
    operationId
    updateFlag
    Summary
    Update a flag
    Scopes
    flags:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}
    operationId
    deleteFlag
    Summary
    Delete a flag
    Scopes
    flags:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/archive
    operationId
    archiveFlag
    Summary
    Archive a flag
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/archive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/unarchive
    operationId
    unarchiveFlag
    Summary
    Unarchive a flag
    Scopes
    flags:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/unarchive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PUT/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/variations
    operationId
    updateFlagVariations
    Summary
    Replace the full variation set on a flag
    Scopes
    flags:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/variations \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/flags/{flagId}/presence
    operationId
    recordFlagPresence
    Summary
    Heartbeat collaborative-presence for a flag
    Scopes
    flags:read
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/flags/<flagId>/presence \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Integrations

  • GET/api/orgs/{orgId}/projects/{projectId}/integrations
    operationId
    listIntegrations
    Summary
    List project integrations
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/integrations \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PUT/api/orgs/{orgId}/projects/{projectId}/integrations
    operationId
    updateIntegrations
    Summary
    Replace the project integrations list
    Scopes
    integrations:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/integrations \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/integrations
    operationId
    listExperimentIntegrations
    Summary
    List integrations attached to an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/integrations \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PUT/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/integrations
    operationId
    updateExperimentIntegrations
    Summary
    Replace the integrations list for an experiment
    Scopes
    experiments:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/integrations \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Members

  • GET/api/orgs/{orgId}/members
    operationId
    listMembers
    Summary
    List members and pending invitations for an organisation
    Scopes
    members:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/members \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/members
    operationId
    inviteMember
    Summary
    Invite an existing user to an organisation
    Scopes
    members:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/members \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/members/{userId}
    operationId
    updateMemberRole
    Summary
    Change a member's role
    Scopes
    members:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/members/<userId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/members/{userId}
    operationId
    removeMember
    Summary
    Remove a member from an organisation
    Scopes
    members:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/members/<userId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Metric bindings

  • GET/api/orgs/{orgId}/projects/{projectId}/metric-bindings
    operationId
    listMetricBindings
    Summary
    List metric bindings in a project
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/metric-bindings
    operationId
    createMetricBinding
    Summary
    Create a metric binding
    Scopes
    metrics:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/metric-bindings/{metricBindingId}
    operationId
    getMetricBinding
    Summary
    Get a metric binding by id
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/<metricBindingId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/metric-bindings/{metricBindingId}
    operationId
    updateMetricBinding
    Summary
    Update a metric binding
    Scopes
    metrics:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/<metricBindingId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/metric-bindings/{metricBindingId}
    operationId
    deleteMetricBinding
    Summary
    Delete a metric binding
    Scopes
    metrics:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/<metricBindingId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/metric-bindings/{metricBindingId}/archive
    operationId
    archiveMetricBinding
    Summary
    Archive a metric binding (soft-delete)
    Scopes
    metrics:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/<metricBindingId>/archive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/metric-bindings/{metricBindingId}/unarchive
    operationId
    unarchiveMetricBinding
    Summary
    Unarchive a metric binding
    Scopes
    metrics:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/<metricBindingId>/unarchive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/metric-bindings/composite-preview
    operationId
    previewCompositeMetric
    Summary
    Preview a composite metric definition against the last 30 days of data
    Scopes
    metrics:read
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/composite-preview \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/metric-bindings/usable-as-composite-component
    operationId
    listUsableCompositeComponents
    Summary
    List metric bindings usable as a composite component
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/usable-as-composite-component \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/metric-bindings/usable-as-denominator
    operationId
    listUsableDenominators
    Summary
    List metric bindings usable as a RATE denominator
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/usable-as-denominator \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/metric-bindings/usable-as-numerator
    operationId
    listUsableNumerators
    Summary
    List metric bindings usable as a RATE numerator
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/usable-as-numerator \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/metric-bindings/winsorization-preview
    operationId
    previewWinsorization
    Summary
    Preview winsorization caps + floors against the last 30 days of data
    Scopes
    metrics:read
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metric-bindings/winsorization-preview \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/metric-bindings
    operationId
    listOrgMetricBindings
    Summary
    List metric bindings across all projects in an organisation
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/metric-bindings \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/metric-bindings/{metricBindingId}
    operationId
    getOrgMetricBinding
    Summary
    Inspect a metric binding at the organisation level
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/metric-bindings/<metricBindingId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Metrics

  • GET/api/orgs/{orgId}/projects/{projectId}/metrics
    operationId
    listMetrics
    Summary
    List metric events in a project
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/metrics
    operationId
    createMetric
    Summary
    Create a metric event
    Scopes
    metrics:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}
    operationId
    getMetric
    Summary
    Get a metric event by id
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}
    operationId
    updateMetric
    Summary
    Update a metric event
    Scopes
    metrics:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}
    operationId
    deleteMetric
    Summary
    Delete a metric event (cascade-detaches usage)
    Scopes
    metrics:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}/archive
    operationId
    archiveMetric
    Summary
    Archive a metric event (cascade-detaches usage, soft-delete)
    Scopes
    metrics:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId>/archive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}/unarchive
    operationId
    unarchiveMetric
    Summary
    Unarchive a metric event
    Scopes
    metrics:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId>/unarchive \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}/measure-preview
    operationId
    previewMetricMeasure
    Summary
    Preview a metric measure against the last 30 days of data
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId>/measure-preview \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/metrics/{metricId}/usage-detail
    operationId
    getMetricUsageDetail
    Summary
    List experiments + flag rules that reference a metric event
    Scopes
    metrics:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/metrics/<metricId>/usage-detail \
    2 -H "Authorization: Bearer avsb_svc_..."

Notifications

  • POST/api/orgs/{orgId}/notification-deliveries/{deliveryId}/replay
    operationId
    replayNotificationDelivery
    Summary
    Replay a notification delivery
    Scopes
    integrations:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/notification-deliveries/<deliveryId>/replay \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/notification-deliveries
    operationId
    listNotificationDeliveries
    Summary
    List notification deliveries (paginated)
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/notification-deliveries \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/notification-destinations/{destinationId}/rotate-url
    operationId
    rotateTeamsDestinationUrl
    Summary
    Rotate the webhook URL on a Teams notification destination
    Scopes
    integrations:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/notification-destinations/<destinationId>/rotate-url \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/notification-destinations/{destinationId}
    operationId
    getNotificationDestination
    Summary
    Get a notification destination by id
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/notification-destinations/<destinationId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/notification-destinations/{destinationId}
    operationId
    updateNotificationDestination
    Summary
    Update a notification destination
    Scopes
    integrations:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/notification-destinations/<destinationId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/notification-destinations/{destinationId}
    operationId
    deleteNotificationDestination
    Summary
    Delete a notification destination
    Scopes
    integrations:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/notification-destinations/<destinationId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/notification-destinations/{destinationId}/test
    operationId
    sendNotificationDestinationTestMessage
    Summary
    Send a test message to a notification destination
    Scopes
    integrations:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/notification-destinations/<destinationId>/test \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/notification-destinations
    operationId
    listNotificationDestinations
    Summary
    List notification destinations for an org
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/notification-destinations \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/notification-destinations
    operationId
    createNotificationDestination
    Summary
    Create a notification destination
    Scopes
    integrations:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/notification-destinations \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/notification-format-prefs
    operationId
    getNotificationFormatPrefs
    Summary
    Get org-wide notification format preferences
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/notification-format-prefs \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/notification-format-prefs
    operationId
    updateNotificationFormatPrefs
    Summary
    Update org-wide notification format preferences
    Scopes
    integrations:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/notification-format-prefs \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/notification-keywords/{keywordId}
    operationId
    updateNotificationKeyword
    Summary
    Update a notification keyword
    Scopes
    integrations:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/notification-keywords/<keywordId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/notification-keywords/{keywordId}
    operationId
    deleteNotificationKeyword
    Summary
    Delete a notification keyword (or preview impact with ?preview=true)
    Scopes
    integrations:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/notification-keywords/<keywordId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/notification-keywords
    operationId
    listNotificationKeywords
    Summary
    List notification keywords for an org
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/notification-keywords \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/notification-keywords
    operationId
    createNotificationKeyword
    Summary
    Create a notification keyword
    Scopes
    integrations:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/notification-keywords \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/notification-routes/{routeId}
    operationId
    deleteNotificationRoute
    Summary
    Delete a notification route
    Scopes
    integrations:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/notification-routes/<routeId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/notification-routes
    operationId
    listNotificationRoutes
    Summary
    List notification routes for a project
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/notification-routes \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/notification-routes
    operationId
    createNotificationRoute
    Summary
    Create a notification route
    Scopes
    integrations:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/notification-routes \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Onboarding

  • PATCH/api/orgs/{orgId}/onboarding-complete
    operationId
    completeOnboarding
    Summary
    Mark organisation onboarding as complete
    Scopes
    org:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/onboarding-complete \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Organisation

  • GET/api/orgs/{orgId}
    operationId
    getOrg
    Summary
    Get an organisation
    Scopes
    org:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}
    operationId
    updateOrg
    Summary
    Update organisation settings
    Scopes
    org:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Projects

  • GET/api/orgs/{orgId}/projects
    operationId
    listProjects
    Summary
    List projects in an organisation
    Scopes
    projects:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects
    operationId
    createProject
    Summary
    Create a project
    Scopes
    projects:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}
    operationId
    getProject
    Summary
    Get a project by id
    Scopes
    projects:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}
    operationId
    updateProject
    Summary
    Update a project
    Scopes
    projects:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}
    operationId
    deleteProject
    Summary
    Delete a project
    Scopes
    projects:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/allowed-origins
    operationId
    getAllowedOrigins
    Summary
    Get the allowed-origins list for a project
    Scopes
    projects:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/allowed-origins \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PUT/api/orgs/{orgId}/projects/{projectId}/allowed-origins
    operationId
    updateAllowedOrigins
    Summary
    Replace the allowed-origins list for a project
    Scopes
    projects:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/allowed-origins \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/datafile/publish
    operationId
    publishDatafile
    Summary
    Publish the project datafile
    Scopes
    projects:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/datafile/publish \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/snippet-status
    operationId
    getSnippetStatus
    Summary
    Check whether the snippet has been detected on the project
    Scopes
    projects:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/snippet-status \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/projects/{projectId}/dashboard
    operationId
    getDashboardSummary
    Summary
    Get the project dashboard summary
    Scopes
    projects:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/dashboard \
    2 -H "Authorization: Bearer avsb_svc_..."

Results

  • GET/api/orgs/{orgId}/results/{experimentId}
    operationId
    getExperimentResults
    Summary
    Get statistical results for an experiment
    Scopes
    results:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/results/<experimentId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/results/{experimentId}/compare
    operationId
    compareExperimentEngines
    Summary
    Compute results under all three engines side-by-side
    Scopes
    results:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/results/<experimentId>/compare \
    2 -H "Authorization: Bearer avsb_svc_..."

Roles

  • GET/api/orgs/{orgId}/roles
    operationId
    listRoles
    Summary
    List roles defined in an organisation
    Scopes
    roles:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/roles \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/roles
    operationId
    createRole
    Summary
    Create a custom role
    Scopes
    roles:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/roles \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PATCH/api/orgs/{orgId}/roles/{roleId}
    operationId
    updateRole
    Summary
    Update a role
    Scopes
    roles:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/roles/<roleId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/roles/{roleId}
    operationId
    deleteRole
    Summary
    Delete a custom role and reassign members to Viewer
    Scopes
    roles:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/roles/<roleId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/search
    operationId
    searchOrg
    Summary
    Search projects, experiments, metrics, segments, audiences, and pages
    Scopes
    org:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/search \
    2 -H "Authorization: Bearer avsb_svc_..."

Segments

  • GET/api/orgs/{orgId}/segments
    operationId
    listSegments
    Summary
    List custom segments in an organisation
    Scopes
    segments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/segments \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/segments
    operationId
    createSegment
    Summary
    Create a custom segment
    Scopes
    segments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/segments \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/segments/{segmentId}
    operationId
    getSegment
    Summary
    Get a custom segment by id
    Scopes
    segments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/segments/<segmentId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/segments/{segmentId}
    operationId
    updateSegment
    Summary
    Update a custom segment
    Scopes
    segments:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/segments/<segmentId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/segments/{segmentId}
    operationId
    deleteSegment
    Summary
    Delete a custom segment
    Scopes
    segments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/segments/<segmentId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/segments/check-key
    operationId
    checkSegmentKey
    Summary
    Check whether a segment key is already in use in an organisation
    Scopes
    segments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/segments/check-key \
    2 -H "Authorization: Bearer avsb_svc_..."

Slack

  • GET/api/orgs/{orgId}/integrations/slack/workspaces/{workspaceId}/channels
    operationId
    listSlackChannels
    Summary
    Live list of Slack channels the AvsB bot can post to
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/integrations/slack/workspaces/<workspaceId>/channels \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/integrations/slack/workspaces/{workspaceId}
    operationId
    getSlackWorkspace
    Summary
    Get a single Slack workspace connection
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/integrations/slack/workspaces/<workspaceId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • DELETE/api/orgs/{orgId}/integrations/slack/workspaces/{workspaceId}
    operationId
    disconnectSlackWorkspace
    Summary
    Disconnect a Slack workspace (revokes the bot token and deletes all SLACK destinations on it)
    Scopes
    integrations:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/integrations/slack/workspaces/<workspaceId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • GET/api/orgs/{orgId}/integrations/slack/workspaces
    operationId
    listSlackWorkspaces
    Summary
    List Slack workspace connections for an org
    Scopes
    integrations:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/integrations/slack/workspaces \
    2 -H "Authorization: Bearer avsb_svc_..."

Variations

  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/variations
    operationId
    listVariations
    Summary
    List variations for an experiment
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/variations \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/variations
    operationId
    createVariation
    Summary
    Create a variation
    Scopes
    experiments:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/variations \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • PUT/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/variations
    operationId
    bulkUpdateVariations
    Summary
    Bulk update variations for an experiment
    Scopes
    experiments:write
    bash
    1curl -X PUT https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/variations \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/variations/{variationId}
    operationId
    getVariation
    Summary
    Get a variation by id
    Scopes
    experiments:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/variations/<variationId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/variations/{variationId}
    operationId
    updateVariation
    Summary
    Update a variation
    Scopes
    experiments:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/variations/<variationId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/experiments/{experimentId}/variations/{variationId}
    operationId
    deleteVariation
    Summary
    Delete a variation
    Scopes
    experiments:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/experiments/<experimentId>/variations/<variationId> \
    2 -H "Authorization: Bearer avsb_svc_..."

Webhooks

  • GET/api/orgs/{orgId}/projects/{projectId}/webhooks
    operationId
    listWebhooks
    Summary
    List webhooks for a project
    Scopes
    webhooks:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/webhooks
    operationId
    createWebhook
    Summary
    Create a webhook
    Scopes
    webhooks:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}
    operationId
    getWebhook
    Summary
    Get a webhook by id
    Scopes
    webhooks:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • PATCH/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}
    operationId
    updateWebhook
    Summary
    Update a webhook
    Scopes
    webhooks:write
    bash
    1curl -X PATCH https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId> \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • DELETE/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}
    operationId
    deleteWebhook
    Summary
    Delete a webhook
    Scopes
    webhooks:write
    bash
    1curl -X DELETE https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId> \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}/secret
    operationId
    rotateWebhookSecret
    Summary
    Rotate the signing secret for a webhook
    Scopes
    webhooks:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId>/secret \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • POST/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}/test
    operationId
    testWebhook
    Summary
    Send a test ping to a webhook
    Scopes
    webhooks:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId>/test \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'
  • GET/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}/deliveries
    operationId
    listWebhookDeliveries
    Summary
    List recent delivery attempts for a webhook
    Scopes
    webhooks:read
    bash
    1curl -X GET https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId>/deliveries \
    2 -H "Authorization: Bearer avsb_svc_..."
  • POST/api/orgs/{orgId}/projects/{projectId}/webhooks/{webhookId}/deliveries/{deliveryId}/retry
    operationId
    retryWebhookDelivery
    Summary
    Re-queue a failed webhook delivery
    Scopes
    webhooks:write
    bash
    1curl -X POST https://app.avsb.cloud/api/orgs/org_abc/projects/<projectId>/webhooks/<webhookId>/deliveries/<deliveryId>/retry \
    2 -H "Authorization: Bearer avsb_svc_..." \
    3 -H "Content-Type: application/json" \
    4 -d '{ /* request body */ }'

Machine-readable spec

For SDK generation, Postman / Insomnia / Bruno imports, and Terraform provider scaffolding, point your tooling at the live document rather than scraping this page:

bash
1curl https://app.avsb.cloud/api/openapi.json -o openapi.json
2curl https://app.avsb.cloud/api/openapi.yaml -o openapi.yaml