The access level granted based on Age Assurance data we've processed.
View raw schema
{
"type": "string",
"description": "The access level granted based on Age Assurance data we've processed.",
"knownValues": [
"unknown",
"none",
"safe",
"full"
]
}
Properties
The per-region Age Assurance configuration.
View raw schema
{
"type": "object",
"required": [
"regions"
],
"properties": {
"regions": {
"type": "array",
"items": {
"ref": "app.bsky.ageassurance.defs#configRegion",
"type": "ref"
},
"description": "The per-region Age Assurance configuration."
}
},
"description": ""
}
The Age Assurance configuration for a specific region.
Properties
The ISO 3166-1 alpha-2 country code this configuration applies to.
The ISO 3166-2 region code this configuration applies to. If omitted, the configuration applies to the entire country.
The ordered list of Age Assurance rules that apply to this region. Rules should be applied in order, and the first matching rule determines the access level granted. The rules array should always include a default rule as the last item.
View raw schema
{
"type": "object",
"required": [
"countryCode",
"rules"
],
"properties": {
"rules": {
"type": "array",
"items": {
"refs": [
"#configRegionRuleDefault",
"#configRegionRuleIfDeclaredOverAge",
"#configRegionRuleIfDeclaredUnderAge",
"#configRegionRuleIfAssuredOverAge",
"#configRegionRuleIfAssuredUnderAge",
"#configRegionRuleIfAccountNewerThan",
"#configRegionRuleIfAccountOlderThan"
],
"type": "union"
},
"description": "The ordered list of Age Assurance rules that apply to this region. Rules should be applied in order, and the first matching rule determines the access level granted. The rules array should always include a default rule as the last item."
},
"regionCode": {
"type": "string",
"description": "The ISO 3166-2 region code this configuration applies to. If omitted, the configuration applies to the entire country."
},
"countryCode": {
"type": "string",
"description": "The ISO 3166-1 alpha-2 country code this configuration applies to."
}
},
"description": "The Age Assurance configuration for a specific region."
}
Age Assurance rule that applies by default.
View raw schema
{
"type": "object",
"required": [
"access"
],
"properties": {
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies by default."
}
Age Assurance rule that applies if the account is equal-to or newer than a certain date.
Properties
The date threshold as a datetime string.
View raw schema
{
"type": "object",
"required": [
"date",
"access"
],
"properties": {
"date": {
"type": "string",
"format": "datetime",
"description": "The date threshold as a datetime string."
},
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies if the account is equal-to or newer than a certain date."
}
Age Assurance rule that applies if the account is older than a certain date.
Properties
The date threshold as a datetime string.
View raw schema
{
"type": "object",
"required": [
"date",
"access"
],
"properties": {
"date": {
"type": "string",
"format": "datetime",
"description": "The date threshold as a datetime string."
},
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies if the account is older than a certain date."
}
Age Assurance rule that applies if the user has been assured to be equal-to or over a certain age.
Properties
The age threshold as a whole integer.
View raw schema
{
"type": "object",
"required": [
"age",
"access"
],
"properties": {
"age": {
"type": "integer",
"description": "The age threshold as a whole integer."
},
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies if the user has been assured to be equal-to or over a certain age."
}
Age Assurance rule that applies if the user has been assured to be under a certain age.
Properties
The age threshold as a whole integer.
View raw schema
{
"type": "object",
"required": [
"age",
"access"
],
"properties": {
"age": {
"type": "integer",
"description": "The age threshold as a whole integer."
},
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies if the user has been assured to be under a certain age."
}
Age Assurance rule that applies if the user has declared themselves equal-to or over a certain age.
Properties
The age threshold as a whole integer.
View raw schema
{
"type": "object",
"required": [
"age",
"access"
],
"properties": {
"age": {
"type": "integer",
"description": "The age threshold as a whole integer."
},
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies if the user has declared themselves equal-to or over a certain age."
}
Age Assurance rule that applies if the user has declared themselves under a certain age.
Properties
The age threshold as a whole integer.
View raw schema
{
"type": "object",
"required": [
"age",
"access"
],
"properties": {
"age": {
"type": "integer",
"description": "The age threshold as a whole integer."
},
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
}
},
"description": "Age Assurance rule that applies if the user has declared themselves under a certain age."
}
Object used to store Age Assurance data in stash.
Properties
The access level granted based on Age Assurance data we've processed.
Known values: unknown, none, safe, full
The unique identifier for this instance of the Age Assurance flow, in UUID format.
The IP address used when completing the Age Assurance flow.
The user agent used when completing the Age Assurance flow.
The ISO 3166-1 alpha-2 country code provided when beginning the Age Assurance flow.
The date and time of this write operation.
The email used for Age Assurance.
The IP address used when initiating the Age Assurance flow.
The user agent used when initiating the Age Assurance flow.
The ISO 3166-2 region code provided when beginning the Age Assurance flow.
The status of the Age Assurance process.
Known values: unknown, pending, assured, blocked
View raw schema
{
"type": "object",
"required": [
"createdAt",
"status",
"access",
"attemptId",
"countryCode"
],
"properties": {
"email": {
"type": "string",
"description": "The email used for Age Assurance."
},
"access": {
"type": "string",
"description": "The access level granted based on Age Assurance data we've processed.",
"knownValues": [
"unknown",
"none",
"safe",
"full"
]
},
"initIp": {
"type": "string",
"description": "The IP address used when initiating the Age Assurance flow."
},
"initUa": {
"type": "string",
"description": "The user agent used when initiating the Age Assurance flow."
},
"status": {
"type": "string",
"description": "The status of the Age Assurance process.",
"knownValues": [
"unknown",
"pending",
"assured",
"blocked"
]
},
"attemptId": {
"type": "string",
"description": "The unique identifier for this instance of the Age Assurance flow, in UUID format."
},
"createdAt": {
"type": "string",
"format": "datetime",
"description": "The date and time of this write operation."
},
"completeIp": {
"type": "string",
"description": "The IP address used when completing the Age Assurance flow."
},
"completeUa": {
"type": "string",
"description": "The user agent used when completing the Age Assurance flow."
},
"regionCode": {
"type": "string",
"description": "The ISO 3166-2 region code provided when beginning the Age Assurance flow."
},
"countryCode": {
"type": "string",
"description": "The ISO 3166-1 alpha-2 country code provided when beginning the Age Assurance flow."
}
},
"description": "Object used to store Age Assurance data in stash."
}
The user's computed Age Assurance state.
Properties
The timestamp when this state was last updated.
View raw schema
{
"type": "object",
"required": [
"status",
"access"
],
"properties": {
"access": {
"ref": "app.bsky.ageassurance.defs#access",
"type": "ref"
},
"status": {
"ref": "app.bsky.ageassurance.defs#status",
"type": "ref"
},
"lastInitiatedAt": {
"type": "string",
"format": "datetime",
"description": "The timestamp when this state was last updated."
}
},
"description": "The user's computed Age Assurance state."
}
Additional metadata needed to compute Age Assurance state client-side.
Properties
The account creation timestamp.
View raw schema
{
"type": "object",
"required": [],
"properties": {
"accountCreatedAt": {
"type": "string",
"format": "datetime",
"description": "The account creation timestamp."
}
},
"description": "Additional metadata needed to compute Age Assurance state client-side."
}
The status of the Age Assurance process.
unknown pending assured blocked
View raw schema
{
"type": "string",
"description": "The status of the Age Assurance process.",
"knownValues": [
"unknown",
"pending",
"assured",
"blocked"
]
}