# Content API

Source: https://swapcard.dev/faqs/content-api


Answers to common questions about the Content API: pagination, custom fields, image URLs and exhibitor groups.

## Pagination

### What is the maximum page size?
The maximum `pageSize` is 200. We recommend a `pageSize` of 100.

See [Limitations](/content-api/limitations) for the other limits that apply to the Content API.

### What is a cursor, and how do I use it?
A cursor points to a position in a list of results. When a query returns a list, you get a start cursor (`startCursor`), which marks the beginning of the current results, and an end cursor (`endCursor`), which marks the end. Use the end cursor to fetch the results that come after it.

For example, to get the first 3 results after the second person:

1. Run the query with `first: 2`.
2. Run the query again with `first: 3`, and `after` set to the end cursor returned by the first query.

## Mutations

### How do I send several values for a multiple select custom field?
Add one entry to `customFields` for each selected value. Every entry uses the same `groupId` and the `SET_VALUE` action.

```json
{
  "customFields": [
    {
      "value": "test",
      "action": "SET_VALUE",
      "groupId": "RmllbGREZWZcwMw=="
    },
    {
      "value": "test1",
      "action": "SET_VALUE",
      "groupId": "RmllbGREZWZcwMw=="
    },
    {
      "value": "test2",
      "action": "SET_VALUE",
      "groupId": "RmllbGREZWZcwMw=="
    },
    {
      "value": "test3",
      "action": "SET_VALUE",
      "groupId": "RmllbGREZWZcwMw=="
    },
    {
      "value": "test4",
      "action": "SET_VALUE",
      "groupId": "RmllbGREZWZcwMw=="
    }
  ]
}
```

For more examples, see [Custom fields](/content-api/examples/custom-fields).

### Can I use a Google Drive link as an `imageUrl`?
No. The URL must be publicly available and point directly to the image content. A Google Drive link loads a whole web page, not the image.

## Exhibitors

### How do I assign different groups to exhibitors?
Use the `updateExhibitor` mutation.

For example, if you have three types of exhibitors and created a group for each one in Swapcard (`Exhibitor Premium`, `Exhibitor Enhance` and `Exhibitor`), call `updateExhibitor` for each exhibitor to assign the matching group. See [Exhibitors](/content-api/examples/exhibitors) for `updateExhibitor` examples.
