← Project Management API
Stories
Singular: Story — Base URL: https://pm-api.ayoune.app — Access: CRUD
Try it now
beta
Response (live)
Requests are proxied through the consumer-app to *.ayoune.app. Tokens stay in your browser and are forwarded per call.
Example response (recorded) sample
A real, previously recorded GET /:id response of this endpoint — not the live call above. Sensitive fields are masked.
{
"payload": {
"points": {
"total": 0,
"risk": 0,
"workload": 0,
"complexity": 0,
"others": 0
},
"_id": "6a619873f0cde3e4594559ab",
"fullStory": "",
"want": "",
"soThat": "",
"description": "",
"method": "dod",
"estimatedTime": 0,
"estimatedGrossTime": 0,
"count": 0,
"countOpen": 0,
"countClosed": 0,
"progress": 0,
"tags": [],
"createdBy": "6045f4d25704710012485569",
"acceptanceCriteria": [],
"createdAt": "2026-07-23T04:28:35.053Z",
"updatedAt": "2026-07-23T04:28:35.053Z"
},
"meta": {
"links": [
{
"rel": "self",
"href": "https://pm-api.ayoune.app/stories/6a619873f0cde3e4594559ab",
"method": "get",
"title": "GET",
"types": [
"application/json",
"application/yaml",
"text/csv"
]
}
],
"relations": [
{
"rel": "Consumers",
"title": "MODEL_CONSUMER",
"href": "https://api.ayoune.app/crm/consumers",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "crm.consumers"
},
{
"rel": "Projects",
"title": "MODEL_PROJECT",
"href": "https://api.ayoune.app/pm/projects",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "pm.projects"
},
{
"rel": "Sprints",
"title": "MODEL_SPRINT",
"href": "https://api.ayoune.app/pm/sprints",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "pm.sprints"
},
{
"rel": "Milestones",
"title": "MODEL_MILESTONE",
"href": "https://api.ayoune.app/pm/milestones",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "pm.milestones"
},
{
"rel": "Components",
"title": "MODEL_COMPONENT",
"href": "https://api.ayoune.app/pm/components",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "pm.components"
},
{
"rel": "Epics",
"title": "MODEL_EPIC",
"href": "https://api.ayoune.app/pm/epics",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "pm.epics"
},
{
"rel": "ProjectRoles",
"title": "MODEL_PROJECTROLE",
"href": "https://api.ayoune.app/pm/projectroles",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "pm.projectroles"
},
{
"rel": "Repositories",
"title": "MODEL_REPOSITORY",
"href": "https://api.ayoune.app/devops/repositories",
"method": "get",
"types": [
"application/json",
"application/yaml",
"text/csv"
],
"right": "devops.repositories"
}
],
"debugId": "6a619874f0cde3e459455a17",
"errors": [],
"actions": [
{
"rel": "self",
"action": "COPY",
"title": "MODEL_STORY",
"href": "https://api.ayoune.app/pm/stories/6a619873f0cde3e4594559ab/copy",
"method": "post",
"types": [
"application/json",
"application/yaml",
"text/csv"
]
},
{
"rel": "self",
"action": "DELETE",
"title": "MODEL_STORY",
"href": "https://api.ayoune.app/pm/stories/6a619873f0cde3e4594559ab/copy",
"method": "post",
"types": [
"application/json",
"application/yaml",
"text/csv"
]
}
],
"version": {
"host": "2026.34.0",
"core": "2026.257.1"
},
"rateLimit": {
"limit": "2500",
"remaining": "2224",
"reset": "1784784467",
"resetDate": "Thu Jul 23 2026"
},
"responseTime": 22.564289,
"code": 200,
"status": "success",
"error": false
}
}
Endpoints
| Method | Path | Description | Right |
|---|---|---|---|
| GET | /stories |
List with filters/pagination | pm.stories.view |
| GET | /stories/:id |
Single record | pm.stories.view |
| POST | /stories |
Create new record | pm.stories.new |
| PUT | /stories |
Update record | pm.stories.edit |
| DELETE | /stories/:id |
Delete record | pm.stories.delete |
SDK
import { aYOUne } from '@tolinax/ayoune';
const ay = new aYOUne('pat_your_token');
// List all
const list = await ay.pm.stories.find().limit(10).exec();
// Single record
const one = await ay.pm.stories.findById('OBJECT_ID').exec();
// Create
const created = await ay.pm.stories.create({ name: 'Foo' });