read_push
Generated automatically from the published contract sources.
Build metadata: Registered in this build. Registration describes the default dispatcher in this build. It does not guarantee that a caller has the required credential or grant, that a tool is listed for that connection, or that the required service is configured.
A script calls this action over HTTPS at POST https://turnzero.ai/api/v1/actions/read_push, with a bearer credential and the action's payload as the JSON body. It also accepts GET.
Contract description
Read an application's push configuration for one environment: the providers with their identifiers and secret names, never a value, and the registered devices by platform with the count marked gone. The answer also carries the last hour's deliveries by outcome and the month's accepted deliveries beside the plan's quantity. An optional `environment` (`development` or `production`; absent, `production`) names which environment the call reads.
Access and action metadata
{
"name": "read_push",
"resource": "push",
"tier": "observe",
"summary": "An application environment's push configuration with secret names only, its device counts by platform, the last hour's delivery outcomes, and the month's accepted deliveries beside the plan's quantity.",
"annotations": {
"readOnlyHint": true,
"destructiveHint": false,
"openWorldHint": false,
"idempotentHint": true
}
}
MCP catalog entry
{
"name": "read_push",
"tier": "observe",
"summary": "Read an application's push configuration for one environment: the providers with their identifiers and secret names, never a value, and the registered devices by platform with the count marked gone. The answer also carries the last hour's deliveries by outcome and the month's accepted deliveries beside the plan's quantity. An optional `environment` (`development` or `production`; absent, `production`) names which environment the call reads.",
"owners": [
"PSH-L0-01",
"PSH-L0-02",
"PSH-L0-04",
"PLD-L0-40"
],
"scenario": "PSH-L0-01"
}
request
| JSON pointer | Description and constraints |
|---|---|
| "" (root) | Type: object Required fields: ["application"] Additional properties: false |
| / |
The application id whose push service to read. Type: string |
| / |
Optional. The environment the call addresses, `development` or `production`; absent, `production`. Type: string Pattern: ^(development|production)$ |
response
| JSON pointer | Description and constraints |
|---|---|
| "" (root) | Type: object Required fields: ["contract_version","push"] Additional properties: false |
| / |
Required value: 1 |
| / |
Type: object Required fields: ["application","environment","apns","fcm","configured","devices","last_hour","accepted_this_month","quota"] Additional properties: false |
| / |
Type: string |
| / |
Type: string Allowed values: ["development","production"] |
| / |
Type: ["object","null"] Required fields: ["team_id","key_id","bundle_id","key_secret_name","environment"] Additional properties: false |
| / |
The ten-character Apple team identifier. Type: string |
| / |
The ten-character identifier of the APNs signing key. Type: string |
| / |
The app's bundle identifier, the notification's topic. Type: string |
| / |
The custody NAME of the stored .p8 signing key at this environment scope; never a value. Type: string |
| / |
Which of Apple's two gateways this environment's pushes go to. Type: string Allowed values: ["production","sandbox"] |
| / |
Type: ["object","null"] Required fields: ["project_id","service_account_secret_name"] Additional properties: false |
| / |
The Firebase project identifier. Type: string |
| / |
The custody NAME of the stored service-account JSON file at this environment scope; never a value. Type: string |
| / |
True where at least one provider is configured. Type: boolean |
| / |
Type: object Required fields: ["ios","android","invalid"] Additional properties: false |
| / |
Type: integer |
| / |
Type: integer |
| / |
Registrations a provider reported gone, skipped until the app registers again. Type: integer |
| / |
Type: object Required fields: ["delivered","invalid","dead","pending"] Additional properties: false |
| / |
Type: integer |
| / |
Type: integer |
| / |
Type: integer |
| / |
Rows queued or in flight now, whatever their age. Type: integer |
| / |
The deliveries accepted this UTC month, the figure the send compares with the cell. Type: integer |
| / |
The plan's served `push-messages-capacity` quantity; null for an Unset cell. Type: ["integer","null"] |
Complete payload contract
{
"request": {
"type": "object",
"required": [
"application"
],
"properties": {
"application": {
"type": "string",
"description": "The application id whose push service to read."
},
"environment": {
"type": "string",
"pattern": "^(development|production)$",
"description": "Optional. The environment the call addresses, `development` or `production`; absent, `production`."
}
},
"additionalProperties": false
},
"response": {
"type": "object",
"required": [
"contract_version",
"push"
],
"properties": {
"contract_version": {
"const": 1
},
"push": {
"type": "object",
"required": [
"application",
"environment",
"apns",
"fcm",
"configured",
"devices",
"last_hour",
"accepted_this_month",
"quota"
],
"properties": {
"application": {
"type": "string"
},
"environment": {
"type": "string",
"enum": [
"development",
"production"
]
},
"apns": {
"type": [
"object",
"null"
],
"required": [
"team_id",
"key_id",
"bundle_id",
"key_secret_name",
"environment"
],
"properties": {
"team_id": {
"type": "string",
"description": "The ten-character Apple team identifier."
},
"key_id": {
"type": "string",
"description": "The ten-character identifier of the APNs signing key."
},
"bundle_id": {
"type": "string",
"description": "The app's bundle identifier, the notification's topic."
},
"key_secret_name": {
"type": "string",
"description": "The custody NAME of the stored .p8 signing key at this environment scope; never a value."
},
"environment": {
"type": "string",
"enum": [
"production",
"sandbox"
],
"description": "Which of Apple's two gateways this environment's pushes go to."
}
},
"additionalProperties": false
},
"fcm": {
"type": [
"object",
"null"
],
"required": [
"project_id",
"service_account_secret_name"
],
"properties": {
"project_id": {
"type": "string",
"description": "The Firebase project identifier."
},
"service_account_secret_name": {
"type": "string",
"description": "The custody NAME of the stored service-account JSON file at this environment scope; never a value."
}
},
"additionalProperties": false
},
"configured": {
"type": "boolean",
"description": "True where at least one provider is configured."
},
"devices": {
"type": "object",
"required": [
"ios",
"android",
"invalid"
],
"properties": {
"ios": {
"type": "integer"
},
"android": {
"type": "integer"
},
"invalid": {
"type": "integer",
"description": "Registrations a provider reported gone, skipped until the app registers again."
}
},
"additionalProperties": false
},
"last_hour": {
"type": "object",
"required": [
"delivered",
"invalid",
"dead",
"pending"
],
"properties": {
"delivered": {
"type": "integer"
},
"invalid": {
"type": "integer"
},
"dead": {
"type": "integer"
},
"pending": {
"type": "integer",
"description": "Rows queued or in flight now, whatever their age."
}
},
"additionalProperties": false
},
"accepted_this_month": {
"type": "integer",
"description": "The deliveries accepted this UTC month, the figure the send compares with the cell."
},
"quota": {
"type": [
"integer",
"null"
],
"description": "The plan's served `push-messages-capacity` quantity; null for an Unset cell."
}
},
"additionalProperties": false
}
},
"additionalProperties": false
}
}
Shared contracts
- Refusals: every refusal, by surface, with its cause and its remedy
- schemas/wire_error.schema.json
- schemas/wire_errors.json
- schemas/action_payloads.json (includes shared shapes)
- management_api_contract.md