# Complete reward

`POST https://api.nexus.gg/v1/bounties/complete-reward/{rewardId}`

Marks an external bounty reward as fulfilled once you've delivered it outside Nexus, for example an in-game item or a code you generated yourself. Only rewards of type External can be completed this way. Payment and Sku rewards are fulfilled automatically as part of bounty progress processing, with no call to this endpoint, and requesting one here returns the same `404 Bounty Reward not found` as an unknown `rewardId`.

Completion is idempotent: once a reward's `rewardCompleted` is true, calling this again does not update the stored `rewardReferenceId`, even if you send a different value.

## Authorizations

- `X-SHARED-SECRET` (string, header, required)

## Query parameters

- `groupId` (string) - Creator group to use for this operation. If your key is scoped to a single program, that group is always used regardless of this value; otherwise falls back to your default group when omitted.

## Path parameters

- `rewardId` (string, required) - The bounty progress reward's id, from a getBountyRewards or getAllBountyRewards response, or a bounty-reward webhook payload.

## Request body (`application-x-www-form-urlencoded`)

- `referenceId` (string) - An optional reference of your own, for example a support ticket or fulfillment id. It's stored on the reward and included in this endpoint's response and in the reward-listing endpoints (getBountyRewards, getAllBountyRewards).

## Responses

### 200

Bounty Reward marked completed

#### Body (`application/json`)

- `id` (string) - The bounty progress reward's id.
- `name` (string) - The bounty reward's name.
- `externalId` (string) - Your own catalog id for this reward.
- `rewardCompleted` (boolean) - Whether this reward has been completed. Becomes true the first time this endpoint successfully completes it, and does not change on later calls.
- `rewardReferenceId` (string) - The referenceId from the first completion call. Not changed by a later call to this endpoint.

### 404

Bounty Reward not found

#### Body (`application/json`)

- `code` (string) - CodeNotInGroup: Creator group is private, and specified code is not linked to it<br/> InvalidGroup: No creator group was found with the specified groupId<br/> InvalidAuthCode: AuthCode provided is not valid<br/> ExpiredAuthCode: AuchCode provided has expired<br/> ReferralNexusNotFound: No Nexus was found to match the provided referral code<br/> BountyNotFound: No bounty was found with the specified bountyId<br/> CreatorNotFound: No creator found with the specified creatorId<br/> InvalidEventCode: No event found with the specifed event code Allowed values: InvalidGroup, CodeNotInGroup, InvalidAuthCode, ExpiredAuthCode, ReferralNexusNotFound, BountyNotFound, MemberNotFound, InvalidEventCode, UnknownError.
- `message` (string)
