Forgive the most recent missed contribution day for yourself (costs XP)
POST
/contributions/forgive-self
using System.Net.Http.Headers;var client = new HttpClient();var request = new HttpRequestMessage{ Method = HttpMethod.Post, RequestUri = new Uri("https://api.ethos.network/api/v2/contributions/forgive-self"), Headers = { { "X-Ethos-Api-Key", "<X-Ethos-Api-Key>" }, },};using (var response = await client.SendAsync(request)){ response.EnsureSuccessStatusCode(); var body = await response.Content.ReadAsStringAsync(); Console.WriteLine(body);}package main
import ( "fmt" "net/http" "io")
func main() {
url := "https://api.ethos.network/api/v2/contributions/forgive-self"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("X-Ethos-Api-Key", "<X-Ethos-Api-Key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close() body, _ := io.ReadAll(res.Body)
fmt.Println(res) fmt.Println(string(body))
}OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder() .url("https://api.ethos.network/api/v2/contributions/forgive-self") .post(null) .addHeader("X-Ethos-Api-Key", "<X-Ethos-Api-Key>") .build();
Response response = client.newCall(request).execute();import axios from 'axios';
const options = { method: 'POST', url: 'https://api.ethos.network/api/v2/contributions/forgive-self', headers: {'X-Ethos-Api-Key': '<X-Ethos-Api-Key>'}};
try { const { data } = await axios.request(options); console.log(data);} catch (error) { console.error(error);}const url = 'https://api.ethos.network/api/v2/contributions/forgive-self';const options = {method: 'POST', headers: {'X-Ethos-Api-Key': '<X-Ethos-Api-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}use reqwest;
#[tokio::main]pub async fn main() { let url = "https://api.ethos.network/api/v2/contributions/forgive-self";
let mut headers = reqwest::header::HeaderMap::new(); headers.insert("X-Ethos-Api-Key", "<X-Ethos-Api-Key>".parse().unwrap());
let client = reqwest::Client::new(); let response = client.post(url) .headers(headers) .send() .await;
let results = response.unwrap() .json::<serde_json::Value>() .await .unwrap();
dbg!(results);}curl --request POST \ --url https://api.ethos.network/api/v2/contributions/forgive-self \ --header 'X-Ethos-Api-Key: <X-Ethos-Api-Key>'wget --quiet \ --method POST \ --header 'X-Ethos-Api-Key: <X-Ethos-Api-Key>' \ --output-document \ - https://api.ethos.network/api/v2/contributions/forgive-selfAuthorizations
Section titled “Authorizations”Responses
Section titled “Responses”Successful response
Media typeapplication/json
object
ok
required
boolean
message
required
string
code
string
forgivenDate
string
updated
number
Example
{ "code": "XP_FROZEN"}Authorization not provided
Media typeapplication/json
Authorization not provided error (401)
The error information
object
message
required
The error message
string
code
required
The error code
string
issues
An array of issues that were responsible for the error
Array<object>
object
message
required
string
Example
{ "code": "UNAUTHORIZED", "message": "Authorization not provided", "issues": []}Insufficient access
Media typeapplication/json
Insufficient access error (403)
The error information
object
message
required
The error message
string
code
required
The error code
string
issues
An array of issues that were responsible for the error
Array<object>
object
message
required
string
Example
{ "code": "FORBIDDEN", "message": "Insufficient access", "issues": []}Internal server error
Media typeapplication/json
Internal server error error (500)
The error information
object
message
required
The error message
string
code
required
The error code
string
issues
An array of issues that were responsible for the error
Array<object>
object
message
required
string
Example
{ "code": "INTERNAL_SERVER_ERROR", "message": "Internal server error", "issues": []}