# social.coves.community.post.getStatus

> Published by [coves.social](https://lexicon.garden/identity/did:web:coves.social)

✓ This is the authoritative definition for this NSID.

## Links

- [View on Lexicon Garden](https://lexicon.garden/lexicon/did:web:coves.social/social.coves.community.post.getStatus)
- [Documentation](https://lexicon.garden/lexicon/did:web:coves.social/social.coves.community.post.getStatus/docs)
- [Examples](https://lexicon.garden/lexicon/did:web:coves.social/social.coves.community.post.getStatus/examples)

## Definitions

### `social.coves.community.post.getStatus`

**Type**: `query`

Get one community's admission decision about one post. Intentionally UNAUTHENTICATED: the caller with the strongest need is an author on another server whose post is pending on this host, and they have no account here to authenticate with. It is also the only way a rejection is reachable at all - a submission refused before it was ever accepted writes no community record, so there is no repository record and no firehose event carrying it, and without this endpoint an author whose post vanished could never learn that it was refused or why. The accepted cost is that anyone who can name a post AT-URI learns its status in a community. Both parameters are required: a post carries independent decisions from several communities, so there is no single status of a post.

#### Parameters

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `community` | `string` (did) | Yes | DID of the community whose decision is being asked about |
| `post` | `string` (at-uri) | Yes | AT-URI of the post, in the author's repository |

#### Output

**Encoding**: `application/json`

| Property | Type | Required | Description |
|----------|------|----------|-------------|
| `acceptanceUri` | `string` (at-uri) | No | AT-URI of the live community acceptance record, so the caller can read the signed attestation rather than trusting this AppView's summary of it. Present only while an acceptance stands. |
| `decisionAt` | `string` (datetime) | No | When the refusal above was decided |
| `decisionCode` | `string` | No | Why the post was refused. Present only for rejected and removed. The vocabulary is open and spans both the codes a community publishes in a removal record and the admission-time codes that never reach a repository. |
| `status` | `string` | Yes | The community's decision state. Reported verbatim rather than collapsed: an author who edited an accepted post needs pending_reacceptance to be distinguishable from a post that was never accepted, because the two have completely different next steps. |

#### Errors

- **InvalidRequest**: A missing or malformed post or community parameter
- **NotFound**: This community has no decision about this post

## Raw Schema

```json
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Get one community's admission decision about one post. Intentionally UNAUTHENTICATED: the caller with the strongest need is an author on another server whose post is pending on this host, and they have no account here to authenticate with. It is also the only way a rejection is reachable at all - a submission refused before it was ever accepted writes no community record, so there is no repository record and no firehose event carrying it, and without this endpoint an author whose post vanished could never learn that it was refused or why. The accepted cost is that anyone who can name a post AT-URI learns its status in a community. Both parameters are required: a post carries independent decisions from several communities, so there is no single status of a post.",
      "errors": [
        {
          "description": "A missing or malformed post or community parameter",
          "name": "InvalidRequest"
        },
        {
          "description": "This community has no decision about this post",
          "name": "NotFound"
        }
      ],
      "output": {
        "encoding": "application/json",
        "schema": {
          "properties": {
            "acceptanceUri": {
              "description": "AT-URI of the live community acceptance record, so the caller can read the signed attestation rather than trusting this AppView's summary of it. Present only while an acceptance stands.",
              "format": "at-uri",
              "type": "string"
            },
            "decisionAt": {
              "description": "When the refusal above was decided",
              "format": "datetime",
              "type": "string"
            },
            "decisionCode": {
              "description": "Why the post was refused. Present only for rejected and removed. The vocabulary is open and spans both the codes a community publishes in a removal record and the admission-time codes that never reach a repository.",
              "type": "string"
            },
            "status": {
              "description": "The community's decision state. Reported verbatim rather than collapsed: an author who edited an accepted post needs pending_reacceptance to be distinguishable from a post that was never accepted, because the two have completely different next steps.",
              "knownValues": [
                "pending",
                "accepted",
                "pending_reacceptance",
                "rejected",
                "removed"
              ],
              "type": "string"
            }
          },
          "required": [
            "status"
          ],
          "type": "object"
        }
      },
      "parameters": {
        "properties": {
          "community": {
            "description": "DID of the community whose decision is being asked about",
            "format": "did",
            "type": "string"
          },
          "post": {
            "description": "AT-URI of the post, in the author's repository",
            "format": "at-uri",
            "type": "string"
          }
        },
        "required": [
          "post",
          "community"
        ],
        "type": "params"
      },
      "type": "query"
    }
  },
  "id": "social.coves.community.post.getStatus",
  "lexicon": 1
}
```
