Create a new Pattern by cloning an existing one.
Access control
The Permission level required to clone a Pattern depends on:
- Whether the Pattern is
public
- Who created the Pattern
The details are outlined in the table below:
Public Patterns | Non-Public Patterns | |
---|---|---|
Your own | 0 or higher | 3 or higher |
Other user’s | 0 or higher | 5 or higher |
Endpoints
Creating a new Person is possible via these endpoints:
Method | Path | Authentication |
---|---|---|
POST | /patterns/:id/clone/jwt | JSON Web Token |
POST | /patterns/:id/clone/key | API Key & Secret |
Request URL
The URL should contain the ID of the Pattern you wish to remove.
It replaces the :id
placeholder in the endpoints listed above.
Response status codes
Possible status codes for these endpoints are:
Status code | Description |
---|---|
200 | success |
400 | the request was malformed |
401 | the request lacks authentication |
403 | authentication failed |
500 | server error |
NOTE
If the status code is not
200
the error
property
in the response body should indicate the nature of the problem.Response body
Value | Type | Description |
---|---|---|
result | String | Either success or error |
error | String | Will give info on the nature of the error. Only set if an error occurred. |
pattern.id | Number | The ID of the Pattern |
pattern.createdAt | String | Date string indicating the moment the pattern was created |
pattern.data | Object | Any additional data that was stored with Pattern data |
pattern.design | String | The name of the design of which this Pattern is an instance |
pattern.img | String | The URL to the image stored with this Pattern |
pattern.name | String | The name of the Pattern |
pattern.notes | String | The notes stored with the Pattern |
pattern.personId | Number | The ID of the Person for whom the Pattern was created |
pattern.public | Boolean | Indicates whether the Pattern is publicly accessible or not |
pattern.settings | Object | The settings used to (re-)create the Pattern |
pattern.userId | Number | The ID of the user who created the Pattern |
pattern.updatedAt | String | Date string indicating the last time the pattern was updated |
Example request
Javascript
const clone = axios.post(
'https://backend.freesewing.org/patterns/10/clone/jwt',
null,
{
headers: {
Authorization: `Bearer ${token}`
}
}
)
Example response
JSON
200
{
"result": "success",
"pattern": {
"id": 19,
"createdAt": "2022-11-19T16:29:33.346Z",
"data": {
"some": "value"
},
"design": "aaron",
"img": "https://cdn.sanity.io/images/hl5bw8cj/production/a1565c8c6c70cfe7ea0fdf5c65501cd885adbe78-200x187.png",
"name": "Just a test",
"notes": "These are my notes",
"personId": 17,
"public": true,
"settings": {
"sa": 5
},
"userId": 10,
"updatedAt": "2022-11-19T16:29:33.346Z"
}
}