AB Tasty Environments API

The Environments API from AB Tasty — 3 operation(s) for environments.

Operations 1

POST /{environmentId}/flags AB Tasty Post Environment Flags #

Documentation

Specifications

Code Examples

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-campaign-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-campaign-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-flag-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-flags-response-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-activation-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-flag-metadata-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-campaign-response-normal-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-campaign-response-simple-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-campaign-response-full-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-batch-activation-request-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-batch-activation-item-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-campaign-variation-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/ab-tasty/refs/heads/main/json-schema/decision-api-single-campaign-request-schema.json

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ab-tasty-environments-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ab-tasty-environments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: AB Tasty Decision Environments API
  version: 2.0.0
  description: The AB Tasty Decision API is a server-side service that evaluates a visitors context against your active experiments, personalizations, and feature flags, then returns a deterministic decision which campaigns the user qualifies for, the selected variation, and any variables or content to render.
  contact:
    name: Flagship Support
    url: https://www.flagship.io
servers:
- url: https://decision.flagship.io/v2
  description: Production server
security:
- ApiKeyAuth: []
tags:
- name: Environments
paths:
  /{environmentId}/flags:
    post:
      tags:
      - Environments
      summary: AB Tasty Post Environment Flags
      description: 'Returns the list of flags with values, campaign, and variation associated.

        Has the same behavior as /campaigns endpoint but with a different response format.'
      operationId: postEnvironmentidFlags
      parameters:
      - $ref: '#/components/parameters/EnvironmentId'
      - name: exposeAllKeys
        in: query
        description: If true, all flag keys (even flag keys with null values) will be returned
        required: false
        schema:
          type: boolean
          default: true
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CampaignRequest'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FlagsResponse'
              example:
                feature_new_checkout:
                  value: true
                  metadata:
                    campaignId: campaign_abc
                    campaignName: New Checkout Experiment
                    slug: null
                    type: ab
                    variationGroupId: vg_123
                    variationGroupName: Variation Group A
                    variationId: var_456
                    variationName: Treatment
                    reference: false
                button_color:
                  value: blue
                  metadata:
                    campaignId: campaign_def
                    campaignName: Button Color Test
                    slug: button-test
                    type: ab
                    variationGroupId: vg_789
                    variationGroupName: Color Variants
                    variationId: var_012
                    variationName: Blue Variant
                    reference: false
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '429':
          $ref: '#/components/responses/RateLimitError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    FlagMetadata:
      type: object
      properties:
        campaignId:
          type: string
          description: Campaign ID
          example: campaign_abc
        campaignName:
          type: string
          description: Campaign name
          example: New Checkout Experiment
        slug:
          type: string
          nullable: true
          description: Campaign slug (if configured)
          example: checkout-exp
        type:
          type: string
          description: Campaign type
          example: ab
        variationGroupId:
          type: string
          description: Variation group ID
          example: vg_123
        variationGroupName:
          type: string
          description: Variation group name
          example: Variation Group A
        variationId:
          type: string
          description: Variation ID
          example: var_456
        variationName:
          type: string
          description: Variation name
          example: Treatment
        reference:
          type: boolean
          description: Indicates if the variation is a reference variation
          example: false
    CampaignRequest:
      type: object
      required:
      - visitor_id
      properties:
        visitor_id:
          type: string
          description: Unique identifier for the application user or website visitor
          example: user123
        anonymous_id:
          type: string
          description: Identifier for anonymous visitors (e.g., session ID)
          example: session_xyz
        context:
          type: object
          description: JSON object of key-value pairs describing the user and device context
          additionalProperties: true
          example:
            device: mobile
            platform: ios
            subscription_level: premium
        visitor_consent:
          type: boolean
          description: Determines if visitor has consented to GDPR rules
          default: true
        trigger_hit:
          type: boolean
          description: Determines whether a CAMPAIGN hit should be automatically sent
          default: true
        decision_group:
          type: string
          nullable: true
          description: Groups visitors to receive the same variation assignment
          example: VIP_users
    Error:
      type: object
      properties:
        message:
          type: string
          description: Error message
        code:
          type: string
          description: Error code
    Flag:
      type: object
      properties:
        value:
          oneOf:
          - type: object
          - type: string
          - type: number
          - type: boolean
          description: Value of the flag
        metadata:
          $ref: '#/components/schemas/FlagMetadata'
    FlagsResponse:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/Flag'
      description: Object with flag keys as properties
  responses:
    UnauthorizedError:
      description: Authentication information is missing or invalid
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Invalid API key
            code: UNAUTHORIZED
    RateLimitError:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            message: Rate limit exceeded. Maximum 200 req/s with burst of 600 req/s
            code: RATE_LIMIT_EXCEEDED
  parameters:
    EnvironmentId:
      name: environmentId
      in: path
      required: true
      description: Identifies your account and environment (preprod or prod)
      schema:
        type: string
      example: env_abc123
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: API key for authentication. Can be found in Flagship Platform under Parameters / Environment & Security