# API Endpoints When you create a ContentType you will have a certain number of API endpoints available to interact with it. As an example let's consider the `Post` ContentType for the next steps. ## `Post` ContentType | Fields | Type | Description | | :----- | :----- | ------------------ | | title | string | Post's title | | cover | media | Post's cover image | | seo | group | Post's seo group | ## `Seo` Group | Fields | Type | Description | | :------ | :----- | -------------- | | name | string | Meta's name | | content | text | Meta's content | ## Endpoints
| Method | Path | Description | | :----- | :------------------------------- | :------------------ | | GET | [/posts](#get-posts) | Get a list of posts | | GET | [/posts/count](#get-posts-count) | Count posts | | POST | [/posts](#post-posts) | Create a post | | GET | [/posts/:id](#get-posts-id) | Get a specific post | | PUT | [/posts/:id](#put-posts-id) | Update a post | | DELETE | [/posts/:id](#delete-posts-id) | Delete a post |
--- ## GET `/posts` This endpoint returns the list of posts matching your filters. Youc an read more about filtering [here](./filters.md). **Example request** ```js GET http://localhost:1337/posts ``` **Example response** ```json [ { "id": "1", "title": "Post 1", "cover": { "id": "1", "url": "/uploads/3d89ba92f762433bbb75bbbfd9c13974.png" //... } // This is a group "seo": [ { "id": "1", "name": "description", "content": "This is a press post about Strapi" }, { "id": "2", "name": "keywords", "content": "post, article, news, press" } ] } ] ``` ## GET `/posts/count` **Example response** ``` 1 ``` ## POST `/posts` **Example request** ```js POST http://localhost:1337/posts ``` ```json { "title": "Post 2", "cover": 1, "seo": [ { "name": "title", "content": "Post 2" } ] } ``` **Example response** ```json { "id": "1", "title": "Post 1", "cover": { "id": "1", "url": "/uploads/3d89ba92f762433bbb75bbbfd9c13974.png" //... } // This is a group "seo": [ { "id": 3, "name": "title", "content": "Post 2" } ] } ``` ## GET `/posts/:id` ## PUT `/posts/:id` ## DELETE `/posts/:id`