This page documents all data models returned by The Bridge API.
"id" : "624c14cc0c01e70033356282" ,
"apiUrl" : "http://localhost:3000" ,
"uiUrl" : "http://localhost:8100" ,
"emailSenderName" : "My App" ,
"emailSenderEmail" : "noreply@myapp.com" ,
"webhookUrl" : "http://api.example.com/webhook" ,
"paymentsAutoRedirect" : true ,
"magicLinkEnabled" : true ,
"azureMarketplaceEnabled" : false ,
"googleSsoEnabled" : false ,
"azureAdSsoEnabled" : true ,
"linkedinSsoEnabled" : true ,
"githubSsoEnabled" : true ,
"facebookSsoEnabled" : true ,
"tenantSelfSignup" : true ,
"redirectUris" : [ "http://localhost:8080/auth/oauth-callback" ],
"defaultCallbackUri" : "http://localhost:8080/auth/oauth-callback" ,
"logo" : "https://public.nblocks.dev/assets/logos/nblocks-logo-black.svg" ,
"websiteUrl" : "http://localhost" ,
"refreshTokenTTL" : 604800
Property Type Description idstring Unique ID (read only) namestring Name of the app domainstring Unique domain name (read only) apiUrlstring URL to your API uiUrlstring URL to your frontend app webhookUrlstring Webhook events URL logostring URL to your logo websiteUrlstring URL to your website privacyPolicyUrlstring Privacy policy URL termsOfServiceUrlstring Terms of service URL emailSenderNamestring Email sender name emailSenderEmailstring Email sender address stripeEnabledboolean Stripe payments enabled paymentsAutoRedirectboolean Auto-redirect to plan selection passkeysEnabledboolean Passkey login enabled magicLinkEnabledboolean Magic-Link login enabled mfaEnabledboolean Multi-factor auth enabled googleSsoEnabledboolean Google SSO enabled azureAdSsoEnabledboolean Azure AD SSO enabled linkedinSsoEnabledboolean LinkedIn SSO enabled githubSsoEnabledboolean GitHub SSO enabled facebookSsoEnabledboolean Facebook SSO enabled onboardingFlowOnboardingFlow Onboarding configuration cloudViewsboolean Use Bridge-provided UI tenantSelfSignupboolean Allow self-service signup redirectUrisstring[] Allowed redirect URIs defaultCallbackUristring Default callback URI accessTokenTTLnumber Access token lifetime (seconds) refreshTokenTTLnumber Refresh token lifetime (seconds)
"stripeCredentialsAdded" : true ,
"azureMarketplaceCredentialsAdded" : true ,
"azureAdSsoCredentialsAdded" : false ,
"googleSsoCredentialsAdded" : true
Property Type Description stripeCredentialsAddedboolean Stripe keys exist azureMarketplaceCredentialsAddedboolean Azure Marketplace credentials exist azureAdSsoCredentialsAddedboolean Azure AD SSO credentials exist googleSsoCredentialsAddedboolean Google SSO credentials exist
"id" : "624c14cc0c01e70033356285" ,
"shouldSelectPlan" : false ,
"shouldSetupPayments" : false ,
"logo" : "https://example.com/logo.png" ,
"email" : "john@example.com" ,
"createdAt" : "2022-04-05T10:07:08.235Z"
Property Type Description idstring Unique ID (read only) planstring Subscribed plan key trialboolean Currently trialing localestring Default locale (ISO 639-1) namestring Tenant name logostring Logo URI mfaboolean MFA/2FA required paymentStatusPaymentStatus Current payment status metadataRecord Custom key-value data onboardedboolean Onboarding completed federationConnectionstring Federation connection ID signupByobject Original owner info createdAtstring Created timestamp (read only)
"shouldSelectPlan" : false ,
"shouldSetupPayments" : false ,
Property Type Description shouldSelectPlanboolean Tenant needs to select a plan shouldSetupPaymentsboolean Tenant needs to setup payments paymentsEnabledboolean Payment method has been set up providerstring Payment provider used
"shouldSelectPlan" : false ,
"shouldSetupPayments" : true ,
"id" : "6516f55b900518015dc98f3e" ,
{ "amount" : 100 , "currency" : "EUR" , "recurrenceInterval" : "month" }
"price" : { "amount" : 100 , "currency" : "EUR" , "recurrenceInterval" : "month" },
Property Type Description statusPaymentStatus Current payment status details.planPlan Subscribed plan details.pricePrice Active price details.trialboolean Currently trialing details.trialDaysLeftnumber Days until trial ends
"id" : "63cad6ac48dcba47e9322853" ,
"email" : "john.doe@example.com" ,
"username" : "john.doe@example.com" ,
"consentsToPrivacyPolicy" : false ,
"lastSeen" : "2023-01-20T18:00:12.489Z" ,
"createdAt" : "2023-01-20T18:00:12.489Z" ,
"id" : "624c14cc0c01e70033356285" ,
Property Type Description idstring Unique ID (read only) rolestring User role key emailstring Email address usernamestring Username firstNamestring First name lastNamestring Last name fullNamestring Full name (concatenated) onboardedboolean Onboarding completed consentsToPrivacyPolicyboolean Privacy policy consent enabledboolean Can login teamsstring[] Group identifiers lastSeenstring Last activity (read only) createdAtstring Created timestamp (read only) tenantTenant The tenant
Property Type Description token_typestring Token type expires_innumber Seconds before access_token expires access_tokenstring JWT access token refresh_tokenstring JWT refresh token id_tokenstring JWT OpenID Connect profile user_profileobject Decoded id_token (shorthand endpoint only)
Decoded JWT payload:
"sub" : "63d25a9e0796d40008680f9a" ,
"scope" : "TENANT_WRITE TENANT_READ USER_WRITE USER_READ AUTHENTICATED" ,
"aid" : "624c14cc0c01e70033356282" ,
"tid" : "63d25a9e0796d40008680f96" ,
Property Type Description substring User ID scopestring User privileges rolestring User role aidstring App ID tidstring Tenant ID planstring Tenant plan key
Decoded JWT payload:
"sub" : "63d25a9e0796d40008680f9a" ,
"preferred_username" : "john@example.com" ,
"email" : "john@example.com" ,
"tenant_id" : "63d25a9e0796d40008680f96" ,
"tenant_name" : "Johns Family" ,
Property Type Description substring User ID namestring Full name family_namestring Last name given_namestring First name preferred_usernamestring Username localestring Preferred locale emailstring Email address email_verifiedboolean Email verified onboardedboolean Onboarding completed tenant_idstring Tenant ID tenant_namestring Tenant name tenant_localestring Tenant locale tenant_logostring Tenant logo URI
"id" : "6516a01891eca485bfc230ba" ,
"description" : "The owner of the app" ,
"id" : "6516a0ee38183223122704e3" ,
"description" : "Privilege for all authenticated users"
Property Type Description idstring Unique ID (read only) namestring Presentable label keystring Unique key for reference descriptionstring Description text privilegesPrivilege[] Linked privileges isDefaultboolean Applied to new users by default
"id" : "6516a0ee38183223122704e3" ,
"description" : "Privilege for all authenticated users"
Property Type Description idstring Unique ID (read only) keystring Key used for access evaluation descriptionstring Description text
"id" : "6571edf9dc018000227ac449" ,
"clientId" : "client_1234" ,
"loginUrl" : "https://idp.example.com/api/saml/sso" ,
"certificate" : "-----BEGIN CERTIFICATE----- \n ... \n -----END CERTIFICATE-----" ,
"signedRequestAlgorithm" : "sha256" ,
"createdAt" : "2023-12-07T16:08:25.061Z"
Property Type Description idstring Unique ID (read only) typestring Connection type (saml) namestring Connection name clientIdstring IdP application identifier loginUrlstring SAML request URL certificatestring IdP public key certificate requestMethodstring GET or POST signedRequestboolean Signed SAML requests signedRequestAlgorithmstring sha256 or sha512 privateKeystring Request signing private key createdAtstring Created timestamp (read only)
"id" : "650c548c29b15b62e681f28a" ,
{ "amount" : 50 , "currency" : "EUR" , "recurrenceInterval" : "month" }
"createdAt" : "2023-09-21T14:34:52.248Z"
Property Type Description idstring Unique ID (read only) keystring Unique plan key namestring Plan name (visible to customers) trialboolean New subscribers start with trial trialDaysnumber Days before trial expires pricesPrice[] Available prices createdAtstring Created timestamp (read only)
"recurrenceInterval" : "month"
Property Type Description amountnumber Recurring charge amount currencystring ISO 4217 currency code recurrenceIntervalstring day, week, month, or year
"id" : "650c55b8ac7f396d770a98b1" ,
"createdAt" : "2023-09-21T14:39:52.816Z"
Property Type Description idstring Unique ID (read only) countryCodestring Two-letter ISO country code namestring Tax name (visible to customers) percentagenumber Tax percentage (0-100) createdAtstring Created timestamp (read only)
The request body accepted by the feature-flag evaluation endpoints . It is the REST mapping of the FF 2.0 { identity, attributes } model: user.id / tenant.id supply the bucketing identity , and the remaining fields become attributes your rules target. Fields in bold are auto-resolved when providing an access token.
"id" : "63d2ab029e23db0afb07a5a7" ,
"key" : "custom-user-trait"
"id" : "66238feb99227400774266f5" ,
"key" : "custom-tenant-trait"
Property Type Description user.idstring User ID user.emailstring User email user.rolestring User role user.namestring User name user.keystring Custom value tenant.idstring Tenant ID tenant.planstring Tenant plan key tenant.namestring Tenant name tenant.keystring Custom value device.keystring Device identifier custom.*string Custom key-value pairs
Returned by the evaluation endpoints . In bulk evaluation, this is the evaluation object on each array entry.
Property Type Description valueboolean | string | number | object The typed flag result. Type is inferred from the flag’s configured value type enabledboolean Legacy boolean convenience kept for backward compatibility variantIndexnumber Matched rule branch: -1 = the otherwise/default value, >= 0 = the zero-based index of the matched branch
FF 2.0 flags use a three-state model with explicit, multi-type return values. There is no public REST API for this shape — flags are configured in the Bridge dashboard ; it is documented here so the evaluation result above is meaningful.
"id" : "64c64cfb47418500082f60b5" ,
"description" : "Call-to-action copy on checkout" ,
{ "attribute" : "tenant.plan" , "operator" : "eq" , "values" : [ "PREMIUM" ] }
"returnValue" : "Pay securely"
"otherwiseValue" : "Pay now" ,
Property Type Description idstring Unique ID (read only) keystring Flag key for evaluation descriptionstring Description text statestring off (off for everyone), on (on for everyone), or on-with-rule (on for users matching rule)valueTypestring Value type the flag returns: boolean, string, number, or json. Inferred from the configured value offValuetyped Returned when state is off onValuetyped Returned when state is on (and as the base value when on-with-rule matches nothing) ruleRule Targeting rule, present when state is on-with-rule
{ "attribute" : "tenant.plan" , "operator" : "eq" , "values" : [ "PREMIUM" ] }
"returnValue" : "Pay securely"
"otherwiseValue" : "Pay now" ,
Property Type Description branchesBranch[] Evaluated first-match-wins otherwiseValuetyped Returned when no branch matches (variantIndex: -1) rolloutPctnumber 0–100; applies to the whole rule. Below 100, evaluation requires a stable identity for deterministic bucketing groupRefstring | null When set, a saved group’s branches are used and inline branches are invalid
Property Type Description conditionsCondition[] AND-ed; a branch matches when all conditions match returnValuetyped Returned when this branch matches (variantIndex = the branch’s zero-based index)
{ "attribute" : "tenant.plan" , "operator" : "eq" , "values" : [ "PREMIUM" ] }
Property Type Description attributestring Dotted-path attribute key from the evaluation context (e.g. user.role, tenant.plan, device.key, custom.*) operatorstring One of the operators below values(string | number | boolean | null)[] Comparison value(s)
Operator Description eqEqual to neqNot equal to containsContains value not_containsDoes not contain value inIn the given list not_inNot in the given list gtGreater than ltLess than betweenBetween two values (inclusive) regexMatches a regular expression existsAttribute is present not_existsAttribute is absent
Legacy (FF 1.x). Earlier flags used a enabled / targetValue / defaultValue / segments matrix with standalone Segment objects. That model is superseded by the three-state model above; the old segment-management REST endpoints are no longer part of the public surface. See Feature Flags .