Προmɛːtʰéu̯s · Ações GPT
Hacker News API
API for accessing Hacker News data including items, users, and real-time updates.
GET /topstories.jsonTop StoriesRetrieve top stories from Hacker News.
GET /newstories.jsonNew StoriesRetrieve latest stories from Hacker News.
GET /beststories.jsonBest StoriesRetrieve best stories from Hacker News.
GET /item/{itemId}.jsonItem InformationRetrieve information about a specific item by its ID.
GET /user/{userId}.jsonUser InformationRetrieve information about a specific user by their ID.
Esquema API original
{
"openapi": "3.0.0",
"info": {
"title": "Hacker News API",
"version": "1.0.0",
"description": "API for accessing Hacker News data including items, users, and real-time updates."
},
"servers": [
{
"url": "https://hacker-news.firebaseio.com/v0"
}
],
"paths": {
"/topstories.json": {
"get": {
"summary": "Top Stories",
"description": "Retrieve top stories from Hacker News.",
"operationId": "getTopStories",
"responses": {
"200": {
"description": "An array of item IDs for top stories.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "integer"
}
}
}
}
}
}
}
},
"/newstories.json": {
"get": {
"summary": "New Stories",
"description": "Retrieve latest stories from Hacker News.",
"operationId": "getNewStories",
"responses": {
"200": {
"description": "An array of item IDs for new stories.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "integer"
}
}
}
}
}
}
}
},
"/beststories.json": {
"get": {
"summary": "Best Stories",
"description": "Retrieve best stories from Hacker News.",
"operationId": "getBestStories",
"responses": {
"200": {
"description": "An array of item IDs for best stories.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "integer"
}
}
}
}
}
}
}
},
"/item/{itemId}.json": {
"get": {
"summary": "Item Information",
"description": "Retrieve information about a specific item by its ID.",
"operationId": "getItemById",
"parameters": [
{
"name": "itemId",
"in": "path",
"required": true,
"description": "The ID of the item",
"schema": {
"type": "integer"
}
}
],
"responses": {
"200": {
"description": "Detailed information about the item.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Item"
}
}
}
}
},
"x-examples": {
"example1": {
"summary": "Example request for an item",
"value": {
"itemId": 8863
}
}
}
}
},
"/user/{userId}.json": {
"get": {
"summary": "User Information",
"description": "Retrieve information about a specific user by their ID.",
"operationId": "getUserById",
"parameters": [
{
"name": "userId",
"in": "path",
"required": true,
"description": "The ID of the user",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Detailed information about the user.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"Item": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "The item's unique ID."
},
"deleted": {
"type": "boolean",
"description": "True if the item is deleted."
},
"type": {
"type": "string",
"description": "The type of item (e.g., story, comment)."
},
"by": {
"type": "string",
"description": "The username of the item's author."
},
"time": {
"type": "integer",
"description": "Creation time of the item, in Unix Time."
},
"text": {
"type": "string",
"description": "The text of the item, if available."
},
"dead": {
"type": "boolean",
"description": "True if the item is marked as dead."
},
"parent": {
"type": "integer",
"description": "The parent item's ID, for comments or replies."
},
"poll": {
"type": "integer",
"description": "The poll ID, if the item is a poll."
},
"kids": {
"type": "array",
"items": {
"type": "integer"
},
"description": "Array of comment IDs, if the item has comments."
},
"url": {
"type": "string",
"description": "The URL of the story, if applicable."
},
"score": {
"type": "integer",
"description": "The score of the story or poll."
},
"title": {
"type": "string",
"description": "The title of the story, poll, or other items."
},
"parts": {
"type": "array",
"items": {
"type": "integer"
},
"description": "Parts of the poll, if the item is a poll."
},
"descendants": {
"type": "integer",
"description": "The number of direct and indirect child comments."
}
}
},
"User": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The user's unique ID."
},
"delay": {
"type": "integer",
"description": "Delay in minutes before the user's comments are visible."
},
"created": {
"type": "integer",
"description": "Account creation time in Unix Time."
},
"karma": {
"type": "integer",
"description": "The user's karma score."
},
"about": {
"type": "string",
"description": "Brief profile description of the user."
},
"submitted": {
"type": "array",
"items": {
"type": "integer"
},
"description": "List of IDs for submissions made by the user."
}
}
}
}
}
}GitHub API for Custom GPT with Image Support
This API facilitates advanced interactions with GitHub, including enhanced support for image content associated with user profiles, repositories, issues, and pull requests.
GET /users/{username}Get user profile information, including avatar image URL.GET /users/{username}/reposList repositories for a user.GET /repos/{owner}/{repo}/issuesList all issues for a repository, including any image URLs in issue bodies.POST /repos/{owner}/{repo}/issuesCreate an issue, potentially including image URLs in the body.GET /repos/{owner}/{repo}/pullsList all pull requests for a repository, including any image URLs in pull request bodies.GET /repos/{owner}/{repo}/commitsList recent commits in a repository.GET /repos/{owner}/{repo}/contents/{path}Get the contents of a file or directory in a repository.
Esquema API original
{
"openapi": "3.1.0",
"info": {
"title": "GitHub API for Custom GPT with Image Support",
"version": "1.0",
"description": "This API facilitates advanced interactions with GitHub, including enhanced support for image content associated with user profiles, repositories, issues, and pull requests."
},
"servers": [
{
"url": "https://api.github.com"
}
],
"components": {
"securitySchemes": {
"BearerAuth": {
"type": "http",
"scheme": "bearer",
"bearerFormat": "JWT",
"description": "Bearer token for authorized access to GitHub API."
}
},
"schemas": {
"UserProfile": {
"type": "object",
"properties": {
"login": {
"type": "string",
"description": "Username of the user."
},
"id": {
"type": "integer",
"description": "User ID."
},
"avatar_url": {
"type": "string",
"format": "uri",
"description": "URL of the user's avatar image."
},
"html_url": {
"type": "string",
"format": "uri",
"description": "URL of the user's GitHub profile."
},
"followers_count": {
"type": "integer",
"description": "Total number of followers."
},
"following_count": {
"type": "integer",
"description": "Total number of users the user is following."
},
"public_repos": {
"type": "integer",
"description": "Total number of public repositories."
}
}
},
"Repository": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Repository ID."
},
"name": {
"type": "string",
"description": "Name of the repository."
},
"full_name": {
"type": "string",
"description": "Full name of the repository, including owner."
},
"private": {
"type": "boolean",
"description": "Indicates if the repository is private."
},
"html_url": {
"type": "string",
"format": "uri",
"description": "URL of the repository."
},
"description": {
"type": "string",
"description": "Repository description."
},
"stargazers_count": {
"type": "integer",
"description": "Total number of stars."
},
"watchers_count": {
"type": "integer",
"description": "Total number of watchers."
},
"language": {
"type": "string",
"description": "Primary language of the repository."
},
"forks_count": {
"type": "integer",
"description": "Total number of forks."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "Timestamp of repository creation."
}
}
},
"Issue": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique identifier for the issue."
},
"title": {
"type": "string",
"description": "Title of the issue."
},
"body": {
"type": "string",
"description": "Detailed description of the issue, may include Markdown with embedded images."
},
"state": {
"type": "string",
"description": "State of the issue (open, closed)."
}
}
},
"Commit": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Unique identifier for the commit."
},
"message": {
"type": "string",
"description": "Commit message."
},
"author": {
"$ref": "#/components/schemas/UserProfile"
},
"url": {
"type": "string",
"format": "uri",
"description": "URL of the commit."
}
}
},
"PullRequest": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique identifier for the pull request."
},
"title": {
"type": "string",
"description": "Title of the pull request."
},
"body": {
"type": "string",
"description": "Detailed description of the pull request, may include Markdown with embedded images."
},
"state": {
"type": "string",
"description": "State of the pull request (open, closed)."
}
}
},
"DirectoryContent": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"dir"
],
"description": "Indicates this is a directory."
},
"name": {
"type": "string",
"description": "Name of the directory."
},
"path": {
"type": "string",
"description": "Full path to the directory within the repository."
},
"download_url": {
"type": "string",
"format": "uri",
"description": "URL to download the directory (as an archive)."
},
"contents_url": {
"type": "string",
"format": "uri",
"description": "API URL to retrieve the contents of the directory."
}
}
},
"FileContent": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"file"
],
"description": "Indicates this is a file."
},
"encoding": {
"type": "string",
"description": "Encoding of the file content, e.g., base64."
},
"size": {
"type": "integer",
"description": "Size of the file in bytes."
},
"name": {
"type": "string",
"description": "Name of the file."
},
"path": {
"type": "string",
"description": "Full path to the file within the repository."
},
"content": {
"type": "string",
"description": "The content of the file."
},
"download_url": {
"type": "string",
"format": "uri",
"description": "URL to download the file."
}
}
}
}
},
"security": [
{
"BearerAuth": []
}
],
"paths": {
"/users/{username}": {
"get": {
"summary": "Get user profile information, including avatar image URL.",
"operationId": "getUserProfile",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "GitHub username"
}
],
"responses": {
"200": {
"description": "Profile information of the user, including avatar image URL.",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/UserProfile"
}
}
}
}
}
}
},
"/users/{username}/repos": {
"get": {
"summary": "List repositories for a user.",
"operationId": "listUserRepos",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "GitHub username"
}
],
"responses": {
"200": {
"description": "List of repositories for the user.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Repository"
}
}
}
}
}
}
}
},
"/repos/{owner}/{repo}/issues": {
"get": {
"summary": "List all issues for a repository, including any image URLs in issue bodies.",
"operationId": "listRepoIssues",
"parameters": [
{
"name": "owner",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The username of the owner of the repository."
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The name of the repository."
}
],
"responses": {
"200": {
"description": "An array of issues.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Issue"
}
}
}
}
}
}
},
"post": {
"summary": "Create an issue, potentially including image URLs in the body.",
"operationId": "createRepoIssue",
"parameters": [
{
"name": "owner",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The username of the owner of the repository."
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The name of the repository."
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Issue"
}
}
}
},
"responses": {
"201": {
"description": "Issue created."
}
}
}
},
"/repos/{owner}/{repo}/pulls": {
"get": {
"summary": "List all pull requests for a repository, including any image URLs in pull request bodies.",
"operationId": "listRepoPullRequests",
"parameters": [
{
"name": "owner",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The username of the owner of the repository."
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The name of the repository."
}
],
"responses": {
"200": {
"description": "An array of pull requests.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PullRequest"
}
}
}
}
}
}
}
},
"/repos/{owner}/{repo}/commits": {
"get": {
"summary": "List recent commits in a repository.",
"operationId": "listRepoCommits",
"parameters": [
{
"name": "owner",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The username of the owner of the repository."
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The name of the repository."
}
],
"responses": {
"200": {
"description": "An array of commits.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Commit"
}
}
}
}
}
}
}
},
"/repos/{owner}/{repo}/contents/{path}": {
"get": {
"summary": "Get the contents of a file or directory in a repository.",
"operationId": "getRepoContents",
"parameters": [
{
"name": "owner",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The username of the owner of the repository."
},
{
"name": "repo",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The name of the repository."
},
{
"name": "path",
"in": "path",
"required": true,
"schema": {
"type": "string"
},
"description": "The file or directory path within the repository."
}
],
"responses": {
"200": {
"description": "The content of the file or directory.",
"content": {
"application/json": {
"schema": {
"oneOf": [
{
"$ref": "#/components/schemas/DirectoryContent"
},
{
"$ref": "#/components/schemas/FileContent"
}
]
}
}
}
}
}
}
}
}
}Enhanced DEV.to API
Extends the DEV.to platform capabilities, offering advanced access to articles, comments, user profiles, podcast episodes, reading lists, tags, listings, videos, and more. Designed for improved user engagement, content discovery, and community interaction.
GET /articlesRetrieve latest articlesGET /articles/{id}Get a specific article by IDGET /podcast_episodesRetrieve podcast episodesGET /tagsRetrieve a list of tagsGET /comments/article/{article_id}Retrieve comments for a given articleGET /users/{id}Retrieve a single user by ID or usernameGET /users/{username}/articlesRetrieve all articles by a specific userGET /users/{username}/podcast_episodesRetrieve all podcast episodes by a specific userGET /users/{username}/commentsRetrieve all comments made by a specific userGET /users/{username}/readinglistRetrieve reading list of a specific userGET /users/{username}/tagsRetrieve all tags followed by a specific userGET /users/{username}/videosRetrieve all video articles uploaded by a specific userGET /readinglistRetrieve the authenticated user's reading listGET /follows/tagsRetrieve a list of the tags followed by the authenticated userGET /articles/meRetrieve the authenticated user's published articlesGET /articles/me/publishedRetrieve the authenticated user's published articlesGET /articles/me/unpublishedRetrieve the authenticated user's unpublished articlesGET /articles/me/allRetrieve all articles by the authenticated userGET /users/meRetrieve information about the authenticated userPOST /admin/usersInvites a user to the Forem InstanceGET /videosRetrieve a list of articles with videosGET /profile_images/{username}Retrieve a user or organization profile image
Esquema API original
{
"openapi": "3.0.0",
"info": {
"title": "Enhanced DEV.to API",
"version": "2.0",
"description": "Extends the DEV.to platform capabilities, offering advanced access to articles, comments, user profiles, podcast episodes, reading lists, tags, listings, videos, and more. Designed for improved user engagement, content discovery, and community interaction.\n"
},
"servers": [
{
"url": "https://dev.to/api"
}
],
"paths": {
"/articles": {
"get": {
"summary": "Retrieve latest articles",
"operationId": "getLatestArticles",
"responses": {
"200": {
"description": "An array of articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/articles/{id}": {
"get": {
"summary": "Get a specific article by ID",
"operationId": "getArticleById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"200": {
"description": "Detailed article information",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
},
"/podcast_episodes": {
"get": {
"summary": "Retrieve podcast episodes",
"operationId": "getPodcastEpisodes",
"responses": {
"200": {
"description": "An array of podcast episodes",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PodcastEpisode"
}
}
}
}
}
}
}
},
"/tags": {
"get": {
"summary": "Retrieve a list of tags",
"operationId": "getAllTags",
"responses": {
"200": {
"description": "A list of tags ordered by popularity",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Tag"
}
}
}
}
}
}
}
},
"/comments/article/{article_id}": {
"get": {
"summary": "Retrieve comments for a given article",
"operationId": "getCommentsByArticleId",
"parameters": [
{
"name": "article_id",
"in": "path",
"required": true,
"schema": {
"type": "integer"
}
}
],
"responses": {
"200": {
"description": "An array of comments",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Comment"
}
}
}
}
}
}
}
},
"/users/{id}": {
"get": {
"summary": "Retrieve a single user by ID or username",
"operationId": "getUserById",
"parameters": [
{
"name": "id",
"in": "path",
"required": true,
"schema": {
"oneOf": [
{
"type": "integer"
},
{
"type": "string"
}
]
}
}
],
"responses": {
"200": {
"description": "User information",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
}
}
}
},
"/users/{username}/articles": {
"get": {
"summary": "Retrieve all articles by a specific user",
"operationId": "getUserArticlesByUsername",
"parameters": [
{
"in": "path",
"name": "username",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "An array of articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/users/{username}/podcast_episodes": {
"get": {
"summary": "Retrieve all podcast episodes by a specific user",
"operationId": "getUserPodcastEpisodesByUsername",
"parameters": [
{
"in": "path",
"name": "username",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "An array of podcast episodes",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/PodcastEpisode"
}
}
}
}
}
}
}
},
"/users/{username}/comments": {
"get": {
"summary": "Retrieve all comments made by a specific user",
"operationId": "getUserCommentsByUsername",
"parameters": [
{
"in": "path",
"name": "username",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "An array of comments",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Comment"
}
}
}
}
}
}
}
},
"/users/{username}/readinglist": {
"get": {
"summary": "Retrieve reading list of a specific user",
"operationId": "getUserReadingListByUsername",
"parameters": [
{
"in": "path",
"name": "username",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "An array of reading list items",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"article": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
}
}
},
"/users/{username}/tags": {
"get": {
"summary": "Retrieve all tags followed by a specific user",
"operationId": "getUserTagsByUsername",
"parameters": [
{
"in": "path",
"name": "username",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "An array of tags",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Tag"
}
}
}
}
}
}
}
},
"/users/{username}/videos": {
"get": {
"summary": "Retrieve all video articles uploaded by a specific user",
"operationId": "getUserVideosByUsername",
"parameters": [
{
"in": "path",
"name": "username",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "An array of video articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/readinglist": {
"get": {
"summary": "Retrieve the authenticated user's reading list",
"operationId": "getUserReadingList",
"responses": {
"200": {
"description": "The reading list with an overview of the article",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/follows/tags": {
"get": {
"summary": "Retrieve a list of the tags followed by the authenticated user",
"operationId": "getFollowedTags",
"responses": {
"200": {
"description": "A list of followed tags",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Tag"
}
}
}
}
}
}
}
},
"/articles/me": {
"get": {
"summary": "Retrieve the authenticated user's published articles",
"operationId": "getUserPublishedArticles",
"responses": {
"200": {
"description": "A list of published articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/articles/me/published": {
"get": {
"summary": "Retrieve the authenticated user's published articles",
"operationId": "getUserPublishedArticlesSpecific",
"responses": {
"200": {
"description": "A list of published articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/articles/me/unpublished": {
"get": {
"summary": "Retrieve the authenticated user's unpublished articles",
"operationId": "getUserUnpublishedArticles",
"responses": {
"200": {
"description": "A list of unpublished articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/articles/me/all": {
"get": {
"summary": "Retrieve all articles by the authenticated user",
"operationId": "getUserAllArticles",
"responses": {
"200": {
"description": "A list of all articles, both published and unpublished",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/users/me": {
"get": {
"summary": "Retrieve information about the authenticated user",
"operationId": "getAuthenticatedUser",
"responses": {
"200": {
"description": "Information about the authenticated user",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/User"
}
}
}
}
}
}
},
"/admin/users": {
"post": {
"summary": "Invites a user to the Forem Instance",
"operationId": "inviteUser",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email"
},
"name": {
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "The invitation was created"
}
}
}
},
"/videos": {
"get": {
"summary": "Retrieve a list of articles with videos",
"operationId": "getVideoArticles",
"responses": {
"200": {
"description": "A list of video articles",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Article"
}
}
}
}
}
}
}
},
"/profile_images/{username}": {
"get": {
"summary": "Retrieve a user or organization profile image",
"operationId": "getProfileImage",
"parameters": [
{
"name": "username",
"in": "path",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Profile image information",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"type_of": {
"type": "string"
},
"image_of": {
"type": "string"
},
"profile_image": {
"type": "string"
},
"profile_image_90": {
"type": "string"
}
}
}
}
}
}
}
}
}
},
"components": {
"securitySchemes": {
"ApiKeyAuth": {
"type": "apiKey",
"in": "header",
"name": "API-Key"
}
},
"schemas": {
"Article": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"body_markdown": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"comments_count": {
"type": "integer"
},
"published_at": {
"type": "string",
"format": "date-time"
},
"user": {
"$ref": "#/components/schemas/User"
}
}
},
"User": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"username": {
"type": "string"
},
"name": {
"type": "string"
},
"twitter_username": {
"type": "string"
},
"github_username": {
"type": "string"
},
"website_url": {
"type": "string"
},
"profile_image": {
"type": "string",
"format": "uri"
}
}
},
"PodcastEpisode": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"title": {
"type": "string"
},
"podcast": {
"$ref": "#/components/schemas/Podcast"
},
"published_at": {
"type": "string",
"format": "date-time"
}
}
},
"Podcast": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"slug": {
"type": "string"
}
}
},
"Tag": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
},
"bg_color_hex": {
"type": "string"
},
"text_color_hex": {
"type": "string"
}
}
},
"Comment": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"body_html": {
"type": "string"
},
"user": {
"$ref": "#/components/schemas/User"
},
"created_at": {
"type": "string",
"format": "date-time"
}
}
},
"Listing": {
"type": "object",
"properties": {
"id": {
"type": "integer"
},
"category": {
"type": "string"
},
"title": {
"type": "string"
},
"body_markdown": {
"type": "string"
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"user": {
"$ref": "#/components/schemas/User"
}
}
}
}
}
}Stack Exchange API for Custom GPT Integration
This API schema enables extensive interaction with the Stack Exchange network, including querying questions, answers, users, and tags.
GET /questionsRetrieve a list of questionsGET /answersRetrieve answers for questions
Esquema API original
{
"openapi": "3.1.0",
"info": {
"title": "Stack Exchange API for Custom GPT Integration",
"version": "1.0.0",
"description": "This API schema enables extensive interaction with the Stack Exchange network, including querying questions, answers, users, and tags."
},
"servers": [
{
"url": "https://api.stackexchange.com/2.3"
}
],
"paths": {
"/questions": {
"get": {
"summary": "Retrieve a list of questions",
"operationId": "getQuestions",
"parameters": [
{
"name": "order",
"in": "query",
"required": false,
"description": "Order of returned items (asc or desc)",
"schema": {
"type": "string"
}
},
{
"name": "sort",
"in": "query",
"required": false,
"description": "Sorting criterion (activity, votes, creation, hot)",
"schema": {
"type": "string"
}
},
{
"name": "tagged",
"in": "query",
"required": false,
"description": "Filter questions by tags",
"schema": {
"type": "string"
}
},
{
"name": "site",
"in": "query",
"required": true,
"description": "Stack Exchange site to query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Successful response with a list of questions",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Question"
}
}
}
}
}
}
}
},
"/answers": {
"get": {
"summary": "Retrieve answers for questions",
"operationId": "getAnswers",
"parameters": [
{
"name": "order",
"in": "query",
"required": false,
"description": "Order of returned items (asc or desc)",
"schema": {
"type": "string"
}
},
{
"name": "sort",
"in": "query",
"required": false,
"description": "Sorting criterion (activity, votes, creation)",
"schema": {
"type": "string"
}
},
{
"name": "site",
"in": "query",
"required": true,
"description": "Stack Exchange site to query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "Successful response with a list of answers",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Answer"
}
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"Question": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique identifier for the question"
},
"title": {
"type": "string",
"description": "Title of the question"
},
"body": {
"type": "string",
"description": "Body of the question"
},
"tags": {
"type": "array",
"items": {
"type": "string"
},
"description": "Tags associated with the question"
},
"creation_date": {
"type": "integer",
"description": "Unix timestamp of when the question was created"
},
"last_activity_date": {
"type": "integer",
"description": "Unix timestamp of the question's last activity"
},
"score": {
"type": "integer",
"description": "Score of the question"
},
"answer_count": {
"type": "integer",
"description": "Number of answers the question has received"
},
"owner": {
"$ref": "#/components/schemas/User"
},
"is_answered": {
"type": "boolean",
"description": "Indicates whether the question has an accepted answer"
}
}
},
"Answer": {
"type": "object",
"properties": {
"id": {
"type": "integer",
"description": "Unique identifier for the answer"
},
"question_id": {
"type": "integer",
"description": "Identifier of the associated question"
},
"body": {
"type": "string",
"description": "Body of the answer"
},
"creation_date": {
"type": "integer",
"description": "Unix timestamp of when the answer was created"
},
"last_activity_date": {
"type": "integer",
"description": "Unix timestamp of the answer's last activity"
},
"score": {
"type": "integer",
"description": "Score of the answer"
},
"owner": {
"$ref": "#/components/schemas/User"
}
}
},
"User": {
"type": "object",
"properties": {
"user_id": {
"type": "integer",
"description": "Unique identifier for the user"
},
"display_name": {
"type": "string",
"description": "Display name of the user"
},
"profile_image": {
"type": "string",
"description": "URL to the user's profile image"
},
"reputation": {
"type": "integer",
"description": "User's reputation score"
},
"accept_rate": {
"type": "integer",
"description": "Percentage of the user's questions that have accepted answers"
}
}
}
}
}
}