---
title: "POST /v1alpha1/apps/{appId}/badges"
method: POST
path: "/v1alpha1/apps/{appId}/badges"
tags: ["BadgeService"]
---

# POST /v1alpha1/apps/{appId}/badges

`POST /v1alpha1/apps/{appId}/badges`

## Request

- Base URL: `http://localhost:4000`
- URL: `http://localhost:4000/v1alpha1/apps/{appId}/badges`
- Auth: HTTP bearer and API key in header `x-id-api-key`

Create a new Badge.

## Path parameters

- `appId` string, required

## Request body

- IssueBadgeRequest
  - `appId` string: App Id.
  - `a2a` IssueA2ABadgeRequest
    - `wellKnownUrl` string: The A2A well_known_url.
    - `schemaBase64` string: Or the MCP Schema in a base64 encoded format.
  - `mcp` IssueMcpBadgeRequest
    - `name` string: The MCP badge name.
    - `url` string: The MCP badge URL.
    - `schemaBase64` string: Or the MCP Schema in a base64 encoded format.
  - `oasf` IssueOASFBadgeRequest
    - `schemaBase64` string: The OASF schema in a base64 encoded format

## Response `200`

OK

- Badge
  - `verifiableCredential` VerifiableCredential: DataModel represents the W3C Verifiable Credential Data Model defined [here] [here]: https://www.w3.org/TR/vc-data-model/
    - `context` string[]: https://www.w3.org/TR/vc-data-model/#contexts
    - `type` string[]: https://www.w3.org/TR/vc-data-model/#dfn-type
    - `issuer` string: https://www.w3.org/TR/vc-data-model/#issuer
    - `credentialSubject` BadgeClaims: BadgeClaims represents the content of a Badge VC defined [here] [here]: https://spec.identity.agntcy.org/docs/vc/intro/
      - `id` string: The ID as defined [here] [here]: https://www.w3.org/TR/vc-data-model/#credential-subject
      - `badge` string: The content of the badge
    - `id` string: https://www.w3.org/TR/vc-data-model/#identifiers
    - `issuanceDate` string: https://www.w3.org/TR/vc-data-model/#issuance-date
    - `expirationDate` string: https://www.w3.org/TR/vc-data-model/#expiration
    - `credentialSchema` CredentialSchema[]: https://www.w3.org/TR/vc-data-model-2.0/#data-schemas
      - `type` string: Type specifies the type of the file
      - `id` string: The URL identifying the schema file
    - `credentialStatus` CredentialStatus[]: https://www.w3.org/TR/vc-data-model-2.0/#status
      - `id` string: The URL identifying the schema file
      - `type` string: Type specifies the type of the file
      - `createdAt` string, date-time: The creation date and time of the status
      - `purpose` 'CREDENTIAL_STATUS_PURPOSE_UNSPECIFIED' | 'CREDENTIAL_STATUS_PURPOSE_REVOCATION', enum: The value of the purpose for the status entry
    - `proof` Proof: A data integrity proof provides information about the proof mechanism, parameters required to verify that proof, and the proof value itself.
      - `type` string: The type of the proof
      - `proofPurpose` string: The proof purpose
      - `proofValue` string: The proof value
  - `appId` string

## Other responses

- `default`: Default error response

---

[API](https://skmtc.dev/agntcy/apis/agntcy-identity-service-api.md) - [All operations](https://skmtc.dev/agntcy/apis/agntcy-identity-service-api/llms.txt) - [OpenAPI document](https://skmtc.dev/agntcy/apis/agntcy-identity-service-api/revisions/1dc8f8328648?raw)
