Skip to content

Session Settings

This endpoint returns session settings such as code length and challenge.

API key

You must add the x-api-key: your-api-key from the admin panel settings to the headers

Endpoint

GET https://api.kod.mobi/session/settings

Request

If you have a valid session, you should pass it to the request as session_id query parameter to get the actual settings.

Query params

Param Type Description Required
session_id ulid a valid session id false

Response

SessionSettings

Param Type Description
language string User language
project SessionSettingsProject Project settings
code SessionSettingsCode Code settings
challenge SessionSettingsChallenge Payout address(lower case)

SessionSettingsProject

Param Type Description
name string Project name

SessionSettingsCode

Param Type Description
length int(4 or 6) Code length
digits boolean Code has digits
letters boolean Code has letters

SessionSettingsChallenge

Param Type Description
enabled boolean The challenge enabled
api_key string | null Site key of chosen challenge provider
provider ChallengeProvider Challenge provider

Example

Session ID is an optional parameter, if you don't have it you can skip it

curl --location 'https://api.kod.mobi/session/settings?session_id=<replace>' \
    --header 'x-api-key: <replace me>'
const headers = new Headers();
headers.append('x-api-key', '<replace me>');

const requestOptions: RequestInit = {
  method: 'GET',
  headers,
  redirect: 'follow',
};

fetch(
  'https://api.kod.mobi/session/settings?session_id=<replace me>',
  requestOptions,
)
  .then((response) => response.json())
  .then((result) => console.log(result))
  .catch((error) => console.error(error));
1
2
3
4
5
6
7
8
9
<?php

$client = new \GuzzleHttp\Client();
$headers = [
  'x-api-key' => '<replace me>'
];
$request = new Request('GET', 'https://api.kod.mobi/session/settings?session_id=<replace me>', $headers);
$res = $client->sendAsync($request)->wait();
echo $res->getBody();
package main

import (
    "fmt"
    "io"
    "net/http"
)

func main() { 
    client := &http.Client{}
    req, err := http.NewRequest("GET", "https://api.kod.mobi/session/settings?session_id=<replace me>", nil)

    if err != nil {
        panic(err)
    }
    req.Header.Add("x-api-key", "<replace me>")

    res, err := client.Do(req)
    if err != nil {
        fmt.Println(err)
        return
    }
    defer res.Body.Close()

    body, err := io.ReadAll(res.Body)
    if err != nil {
        panic(err)
    }
    fmt.Println(string(body))
}
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let client = reqwest::Client::builder()
        .build()?;

    let mut headers = reqwest::header::HeaderMap::new();
    headers.insert("x-api-key", "<replace me>".into());

    let request = client.request(reqwest::Method::GET, "https://api.kod.mobi/session/settings?session_id=<replace me>")
        .headers(headers);

    let response = request.send().await?;
    let body = response.text().await?;

    println!("{}", body);

    Ok(())
}

Example output

{
    "language": "en",
    "project": {
        "name": "My project"
    },
    "code": {
        "length": 4,
        "digits": true,
        "letters": false
    },
    "challenge": {
        "enabled": false,
        "api_key": null
    }
}