action trashnothing_unlike_story {
label: "Unlike a story"
provider: trashnothing
method: PUT
path: "/stories/{story_id}/unlike"
encoding: json
input: {
type: "object"
properties: {
device_pixel_ratio: {
type: "number"
}
story_id: {
type: "string"
}
}
required: ["story_id"]
additionalProperties: false
}
output: {
type: "object"
description: "A user story"
properties: {
content: {
type: "string"
}
date: {
type: "string"
format: "date-time"
description: "The UTC date and time when the post was published."
}
like_count: {
type: "integer"
description: "The number of people who have liked this story."
}
photos: {
type: "array"
description: "Details about the photos associated with this story (may be null if there are no photos)."
items: {
type: "object"
properties: {
blurhash: {
type: "string"
description: "A blurhash of the photo that can be used as a placeholder while the photo is loading (see: https://github.com/woltapp/blurhash). May be null if no blurhash is available and the length of the blurhash can vary based on the photo.\n"
}
images: {
type: "array"
description: "All the versions of this photo ordered from smallest to largest. This list is guaranteed to include the photos specified by the above thumbnail and url properties."
items: {
type: "object"
properties: {
height: {
type: "integer"
}
url: {
type: "string"
}
width: {
type: "integer"
}
}
}
}
photo_id: {
type: "string"
}
thumbnail: {
type: "string"
description: "A URL to a thumbnail of this photo. The size of the thumbnail depends on the device_pixel_ratio parameter and it is not guaranteed to be square."
}
url: {
type: "string"
description: "A URL to a large version of this photo (but not necessarily the largest size available)."
}
}
}
}
share_url: {
type: "string"
description: "A URL that can be used to share the story (may be null if the story is not public)."
}
story_id: {
type: "string"
}
title: {
type: "string"
}
user: {
type: "object"
properties: {
about_me: {
type: "string"
description: "A short bio a user has written about themselves to help other members get to know them better. May be null if the user has not written anything about themselves.\n"
}
country: {
type: "string"
description: "A 2 letter country code for the country that has been automatically detected for the user (see https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2 ). May be null if no country has been set.\n"
}
feedback: {
type: "object"
properties: {
percent_positive: {
type: "number"
description: "The percent of feedback that this user has received in the last year that was positive. May be null if a user has not received enough feedback to calculate a percentage.\n"
}
restriction: {
type: "string"
description: "If the current user can leave positive or negative feedback on this user then restriction is null.
Otherwise, restriction is set to a string that explains why feedback is currently restricted and what type of feedback is restricted. The string will be one of the following: no-recent-messages, negative-score, moderator, [days]-day-wait-for-negative
- **no-recent-messages**: The current user has not received any messages from this user in the last 30 days.
- **negative-score**: The current user has a negative feedback and will not be able to leave feedback until their score is >= 0.
- **moderator**: The user is a moderator and leaving feedback on moderators is not currently supported.
- **[days]-day-wait-for-negative**: Positive feedback is not restricted but the current user must wait\n some number of days before they will be able to leave negative feedback on this user. This string can \n change depending on the number of days. For example, when the current user must wait one day, the\n string will be '1-day-wait-for-negative'. A wait is necessary because a lot of negative feedback results\n from communication issues that are resolved with more time.\n"
}
score: {
type: "integer"
description: "The feedback score of this user. Higher scores are better. Scores are calculated by substracting the total number of negative feedback from the total number of positive feedback that a user has received. May be null if a user has not received enough feedback to calculate a score.\n"
}
}
}
firstname: {
type: "string"
description: "The first name of the user (may be null)."
}
lastname: {
type: "string"
description: "The last name of the user (may be null)."
}
member_since: {
type: "string"
description: "The date and time when the user first became publicly active on a group (the date may be older than when the user signed up)."
}
profile_image: {
type: "string"
description: "A URL to a profile image for the user. Profile images sizes vary based on the source (Google, Facebook, Gravatar, etc) and some can be as small as 64px by 64px. Will be null for api key requests and requests where the oauth user doesn't belong to any of the same groups as this user.\n"
}
reply_time: {
type: "integer"
description: "An estimate of how many seconds it takes this user to reply to messages. May be null when there is not enough data to calculate an estimate.\n"
}
user_id: {
type: "string"
}
username: {
type: "string"
description: "A username that can be displayed for the user (the username is NOT guaranteed to be unique). Will be null for api key requests and requests where the oauth user doesn't belong to any of the same groups as this user.\n"
}
}
}
user_liked: {
type: "boolean"
description: "Whether or not the current user has liked this story or not."
}
}
}
}