# Collections
In Typesense, a group of related documents is called a collection. A collection is roughly equivalent to a table in a relational database.
# Create a collection
When a collection is created, we give it a name and describe the fields that will be indexed from the documents that are added to the collection.
Your documents can contain other fields not mentioned in the collection's schema - they will be stored but not indexed.
# Sample Response
# Definition
POST ${TYPESENSE_HOST}/collections
# Arguments
| Parameter | Required | Description |
|---|---|---|
| name | yes | Name of the collection you wish to create. |
| fields | yes | A list of fields that you wish to index for querying, filtering and faceting. For each field, you have to specify the name and type.Declaring a field as a facet A field can be declared as a facetable field by setting "facet": true.Faceted fields are indexed verbatim without any tokenization or preprocessing. For example, if you are building a product search, color and brand could be defined as facet fields. |
| default_sorting_field | yes | The name of an int32 / float field that determines the order in which the search results are ranked when a sort_by clause is not provided during searching. This field must indicate some kind of popularity. For example, in a product search application, you could define num_reviews field as the default_sorting_field.Additionally, when a word in a search query matches multiple possible words (either because of a typo or during a prefix search), this parameter is used to rank such equally matching tokens. For e.g. both "john" and "joan" are 1-typo away from "jofn". Similarly, in a prefix search, both "apple" and "apply" would match the prefix "app". |
# Supported search field types
Typesense allows you to index the following types of fields:
| string |
| int32 |
| int64 |
| float |
| bool |
You can define an array or multi-valued field by suffixing a [] at the end:
| string[] |
| int32[] |
| int64[] |
| float[] |
| bool[] |
# Retrieve a collection
Retrieve the details of a collection, given its name.
# Sample Response
# Definition
GET ${TYPESENSE_HOST}/collections/:collection
# List all collections
Returns a summary of all your collections. The collections are returned sorted by creation date, with the most recent collections appearing first.
# Sample Response
# Definition
GET ${TYPESENSE_HOST}/collections
# Drop a collection
Permanently drops a collection. This action cannot be undone. For large collections, this might have an impact on read latencies.
# Sample Response
# Definition
DELETE ${TYPESENSE_HOST}/collections/:collection