> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Cards Overview

> Use the MoEngage Cards API to fetch, filter, and delete user-specific cards from your application.

The MoEngage Cards API allows you to fetch and delete user-specific cards from the MoEngage database. Use these endpoints to retrieve cards for a user, filter them by platform and category, check for updates since the last sync, and remove specific card campaigns.

<Info>
  If this API is not enabled for your account, contact your MoEngage Customer Success Manager (CSM) or the Support team to request enablement.
</Info>

## Endpoints

The Cards API is a collection of the following endpoints:

* [Fetch Cards](/api/cards/fetch-cards-for-user): Retrieves all active and updated cards for a specific user, supporting filtering and pagination.
* [Delete Cards](/api/cards/delete-cards-for-user): Deletes specific card campaigns for a user from the MoEngage Cards database.

## FAQs

### Fetch Cards

<AccordionGroup>
  <Accordion title="How do I fetch only the cards updated since the last sync?" icon="sparkles">
    You can use the `prev_sync_card_ids` (list of card IDs from the previous sync) and `last_updated_time` (Unix epoch timestamp of the last sync) fields in the request body. The API will return only the new or updated cards.
  </Accordion>

  <Accordion title="Can I filter cards by platform or category?" icon="sparkles">
    Yes. You can filter by platform using the `platforms` array (e.g., `[&quot;ANDROID&quot;, &quot;WEB&quot;]`) and by category using the `card_category` string field in the request body.
  </Accordion>

  <Accordion title="Which identifier should I use for the user?" icon="sparkles">
    You must provide either the `uid` (MoEngage Standard ID like Email or Mobile Number) or the `unique_id` (Platform-specific device identifier). One of these is required.
  </Accordion>

  <Accordion title="What is the difference between unique_id and uid?" icon="sparkles">
    The *unique\_id* is the unique value that identifies the user to whom the cards need to be shown. It is a platform-specific device identifier that can be generated.

    The *uid* is the unique MoEngage Standard ID (Email ID Standard or the Mobile Number Standard) that identifies the user.
  </Accordion>
</AccordionGroup>

### Delete Cards

<AccordionGroup>
  <Accordion title="Why does the Delete API require a request body?" icon="sparkles">
    The Delete Cards API requires complex filtering parameters (campaign IDs, specific platforms, and user identifiers) which are best transmitted via a JSON body, even though this deviates from the standard REST pattern for `DELETE` requests.
  </Accordion>

  <Accordion title="Can I delete cards for a specific platform only?" icon="sparkles">
    Yes, you can specify the `platforms` array in the request body (e.g., `[&quot;android&quot;]`) to delete the cards only from those specific platforms. If omitted, it deletes from all associated platforms.
  </Accordion>

  <Accordion title="What is the difference between unique_id and uid?" icon="sparkles">
    The *unique\_id* is the unique value that identifies the user to whom the cards need to be deleted. It is a platform-specific device identifier that can be generated. The *uid* is the unique MoEngage Standard ID that identifies the user.
  </Accordion>
</AccordionGroup>

## Postman Collections

We have made it easy for you to test the APIs. Click [here](https://www.postman.com/moengage-dev/api-docs/collection/dpuqrlz/moengage-cards) to view the Postman collection.
