components: schemas: Config: additionalProperties: false description: SNI configuration model properties: database: allOf: - $ref: '#/components/schemas/DatabaseConfig' default: authentication_source: admin database: sni host: mongo password: '' port: 27017 username: sni description: Database configuration document. title: Database discord: allOf: - $ref: '#/components/schemas/DiscordConfig' default: auth_channel_id: 0 enabled: false log_channel_id: 0 server_id: 0 token: '' description: Discord configuration document. title: Discord esi: allOf: - $ref: '#/components/schemas/ESIConfig' default: client_id: '' client_secret: '' description: ESI configuration document. title: Esi general: allOf: - $ref: '#/components/schemas/GeneralConfig' default: debug: false host: 0.0.0.0 logging_level: info port: 80 root_url: https://foo.bar scheduler_thread_count: 5 description: General configuration document. title: General jwt: allOf: - $ref: '#/components/schemas/JWTConfig' default: algorithm: HS256 secret: '' description: JWT configuration document. title: Jwt redis: allOf: - $ref: '#/components/schemas/RedisConfig' default: database: 0 host: redis port: 6379 description: Redis configuration document. title: Redis sentry: allOf: - $ref: '#/components/schemas/SentryConfig' default: dsn: https://examplePublicKey@o0.ingest.sentry.io/0 enabled: false traces_sample_rate: 0 description: Sentry configuration document. title: Sentry teamspeak: allOf: - $ref: '#/components/schemas/TeamspeakConfig' default: auth_group_name: SNI TS AUTH bot_name: SeAT Navy Issue enabled: false host: '' password: '' port: 10011 server_id: 0 username: sni description: Teamspeak configuration document. title: Teamspeak title: Config type: object DatabaseConfig: description: Database configuration model properties: authentication_source: default: admin description: The database in which the user belongs. title: Authentication Source type: string database: default: sni description: Database name. title: Database type: string host: default: mongo description: Database hostname. title: Host type: string password: default: '' description: Password. format: password title: Password type: string writeOnly: true port: default: 27017 description: Database port. maximum: 65535.0 minimum: 0.0 title: Port type: integer username: default: sni description: Username. title: Username type: string title: DatabaseConfig type: object DiscordConfig: description: Discord configuration model properties: auth_channel_id: default: 0 description: Authentication channel ID. This is where users will start authentication challenges. Only required if ``discord.enable`` is set to ``True``. title: Auth Channel Id type: integer enabled: default: false description: Wether to activate the Discord connector. title: Enabled type: boolean log_channel_id: default: 0 description: Logging channel ID. This is where the Discorb bot will log events. Only required if ``discord.enable`` is set to ``True``. title: Log Channel Id type: integer server_id: default: 0 description: Discord server (or guild) ID. title: Server Id type: integer token: default: '' description: Discord bot token. Only required if ``discord.enable`` is set to ``True``. format: password title: Token type: string writeOnly: true title: DiscordConfig type: object ESIConfig: description: ESI configuration model properties: client_id: default: '' description: ESI client ID. format: password title: Client Id type: string writeOnly: true client_secret: default: '' description: ESI client secret. format: password title: Client Secret type: string writeOnly: true title: ESIConfig type: object EsiRequestIn: description: Data to be forwarded to the ESI properties: all_pages: default: false title: All Pages type: boolean id_annotations: default: false title: Id Annotations type: boolean on_behalf_of: title: On Behalf Of type: integer params: default: {} title: Params type: object title: EsiRequestIn type: object EsiResponse: description: A model for ESI responses properties: data: title: Data headers: default: {} title: Headers type: object id_annotations: default: {} title: Id Annotations type: object status_code: title: Status Code type: integer required: - status_code title: EsiResponse type: object EsiScope: description: Enumeration of the ESI scopes enum: - esi-alliances.read_contacts.v1 - esi-assets.read_assets.v1 - esi-assets.read_corporation_assets.v1 - esi-bookmarks.read_character_bookmarks.v1 - esi-bookmarks.read_corporation_bookmarks.v1 - esi-calendar.read_calendar_events.v1 - esi-calendar.respond_calendar_events.v1 - esi-characters.read_agents_research.v1 - esi-characters.read_blueprints.v1 - esi-characters.read_chat_channels.v1 - esi-characters.read_contacts.v1 - esi-characters.read_corporation_roles.v1 - esi-characters.read_fatigue.v1 - esi-characters.read_fw_stats.v1 - esi-characters.read_loyalty.v1 - esi-characters.read_medals.v1 - esi-characters.read_notifications.v1 - esi-characters.read_opportunities.v1 - esi-characters.read_standings.v1 - esi-characters.read_titles.v1 - esi-characters.write_contacts.v1 - esi-characterstats.read.v1 - esi-clones.read_clones.v1 - esi-clones.read_implants.v1 - esi-contracts.read_character_contracts.v1 - esi-contracts.read_corporation_contracts.v1 - esi-corporations.read_blueprints.v1 - esi-corporations.read_contacts.v1 - esi-corporations.read_container_logs.v1 - esi-corporations.read_corporation_membership.v1 - esi-corporations.read_divisions.v1 - esi-corporations.read_facilities.v1 - esi-corporations.read_fw_stats.v1 - esi-corporations.read_medals.v1 - esi-corporations.read_standings.v1 - esi-corporations.read_starbases.v1 - esi-corporations.read_structures.v1 - esi-corporations.read_titles.v1 - esi-corporations.track_members.v1 - esi-fittings.read_fittings.v1 - esi-fittings.write_fittings.v1 - esi-fleets.read_fleet.v1 - esi-fleets.write_fleet.v1 - esi-industry.read_character_jobs.v1 - esi-industry.read_character_mining.v1 - esi-industry.read_corporation_jobs.v1 - esi-industry.read_corporation_mining.v1 - esi-killmails.read_corporation_killmails.v1 - esi-killmails.read_killmails.v1 - esi-location.read_location.v1 - esi-location.read_online.v1 - esi-location.read_ship_type.v1 - esi-mail.organize_mail.v1 - esi-mail.read_mail.v1 - esi-mail.send_mail.v1 - esi-markets.read_character_orders.v1 - esi-markets.read_corporation_orders.v1 - esi-markets.structure_markets.v1 - esi-planets.manage_planets.v1 - esi-planets.read_customs_offices.v1 - esi-search.search_structures.v1 - esi-skills.read_skillqueue.v1 - esi-skills.read_skills.v1 - esi-ui.open_window.v1 - esi-ui.write_waypoint.v1 - esi-universe.read_structures.v1 - esi-wallet.read_character_wallet.v1 - esi-wallet.read_corporation_wallet.v1 - esi-wallet.read_corporation_wallets.v1 - publicData title: EsiScope type: string GeneralConfig: description: General configuration model properties: debug: default: false description: Wether SNI should run in debug mode. In this mode, logging is more verbose, and potentially exposes secrets. Do not use in a production environment. title: Debug type: boolean host: anyOf: - format: ipv4 type: string - format: ipv6 type: string default: 0.0.0.0 description: IP address at which SNI should listen for incoming connections. title: Host logging_level: $ref: '#/components/schemas/LoggingLevel' port: default: 80 description: Port at which SNI should listen for incoming connections. maximum: 65535.0 minimum: 0.0 title: Port type: integer root_url: default: https://foo.bar description: URL at which this SNI instance is located. The ESI callback should then be ``/callback/esi``. format: uri maxLength: 2083 minLength: 1 title: Root Url type: string scheduler_thread_count: default: 5 description: Number of threads available to the scheduler. minimum: 1.0 title: Scheduler Thread Count type: integer title: GeneralConfig type: object GetAllianceOut: description: Get an alliance data properties: alliance_id: title: Alliance Id type: integer alliance_name: title: Alliance Name type: string authorized_to_login: title: Authorized To Login type: boolean ceo: $ref: '#/components/schemas/GetUserShortOut' cumulated_mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Cumulated Mandatory Esi Scopes type: array executor_corporation: $ref: '#/components/schemas/GetCorporationShortOut' mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Mandatory Esi Scopes type: array ticker: title: Ticker type: string updated_on: format: date-time title: Updated On type: string required: - alliance_id - alliance_name - ceo - cumulated_mandatory_esi_scopes - executor_corporation - mandatory_esi_scopes - ticker - updated_on title: GetAllianceOut type: object GetCharacterLocationOut: description: Describes a character location properties: online: title: Online type: boolean ship_name: title: Ship Name type: string ship_type_id: title: Ship Type Id type: integer ship_type_name: title: Ship Type Name type: string solar_system_id: title: Solar System Id type: integer solar_system_name: title: Solar System Name type: string station_id: title: Station Id type: integer station_name: title: Station Name type: string structure_id: title: Structure Id type: integer structure_name: title: Structure Name type: string timestamp: format: date-time title: Timestamp type: string user: $ref: '#/components/schemas/GetUserShortOut' required: - user - online - ship_name - ship_type_id - ship_type_name - solar_system_id - solar_system_name - timestamp title: GetCharacterLocationOut type: object GetCharacterMailShortOut: description: Represents a short description (header) of an email properties: from_character: $ref: '#/components/schemas/GetUserShortOut' mail_id: title: Mail Id type: integer recipients: items: $ref: '#/components/schemas/MailRecipient' title: Recipients type: array subject: title: Subject type: string timestamp: format: date-time title: Timestamp type: string required: - from_character - mail_id - recipients - subject - timestamp title: GetCharacterMailShortOut type: object GetCharacterSkillPointsOut: description: Represents a character's skill points properties: timestamp: format: date-time title: Timestamp type: string total_sp: title: Total Sp type: integer unallocated_sp: title: Unallocated Sp type: integer required: - timestamp - total_sp - unallocated_sp title: GetCharacterSkillPointsOut type: object GetCharacterWalletBalanceOut: description: Represents a character's wallet balance properties: balance: title: Balance type: number timestamp: format: date-time title: Timestamp type: string required: - balance - timestamp title: GetCharacterWalletBalanceOut type: object GetCoalitionOut: description: Model for `GET /coalition/{coalition_id}` responses. properties: authorized_to_login: title: Authorized To Login type: boolean coalition_id: title: Coalition Id type: string coalition_name: title: Coalition Name type: string created_on: format: date-time title: Created On type: string mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Mandatory Esi Scopes type: array member_alliances: items: $ref: '#/components/schemas/sni__api__routers__coalition__GetAllianceShortOut' title: Member Alliances type: array member_corporations: items: $ref: '#/components/schemas/GetCorporationShortOut' title: Member Corporations type: array ticker: title: Ticker type: string updated_on: format: date-time title: Updated On type: string required: - coalition_id - created_on - mandatory_esi_scopes - member_alliances - member_corporations - coalition_name - ticker - updated_on title: GetCoalitionOut type: object GetCoalitionShortOut: description: Model for an element of a `GET /coalition` response. properties: coalition_id: title: Coalition Id type: string coalition_name: title: Coalition Name type: string required: - coalition_id - coalition_name title: GetCoalitionShortOut type: object GetCorporationOut: description: Corporation data properties: alliance: $ref: '#/components/schemas/sni__api__routers__corporation__GetAllianceShortOut' authorized_to_login: title: Authorized To Login type: boolean ceo: $ref: '#/components/schemas/GetUserShortOut' corporation_id: title: Corporation Id type: integer corporation_name: title: Corporation Name type: string cumulated_mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Cumulated Mandatory Esi Scopes type: array mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Mandatory Esi Scopes type: array ticker: title: Ticker type: string updated_on: format: date-time title: Updated On type: string required: - ceo - corporation_id - corporation_name - cumulated_mandatory_esi_scopes - mandatory_esi_scopes - ticker - updated_on title: GetCorporationOut type: object GetCorporationShortOut: description: Short corporation description properties: corporation_id: title: Corporation Id type: integer corporation_name: title: Corporation Name type: string required: - corporation_id - corporation_name title: GetCorporationShortOut type: object GetCrashReportOut: description: Response model for response for ``GET /crash/{crash_report_id}``. properties: id: title: Id type: string request: $ref: '#/components/schemas/GetCrashReportRequestOut' timestamp: format: date-time title: Timestamp type: string token: $ref: '#/components/schemas/GetCrashReportTokenOut' trace: items: type: string title: Trace type: array required: - id - request - timestamp - trace title: GetCrashReportOut type: object GetCrashReportRequestOut: description: Embedded model for reponses for ``GET /crash/{crash_report_id}``. properties: headers: title: Headers type: object method: title: Method type: string params: title: Params url: title: Url type: string required: - method - url title: GetCrashReportRequestOut type: object GetCrashReportShortOut: description: Model for an element of a ``GET /crash`` response properties: id: title: Id type: string timestamp: format: date-time title: Timestamp type: string url: title: Url type: string user: $ref: '#/components/schemas/GetUserShortOut' required: - id - timestamp - url title: GetCrashReportShortOut type: object GetCrashReportTokenOut: description: Embedded model for reponses for ``GET /crash/{crash_report_id}``. properties: created_on: format: date-time title: Created On type: string expires_on: format: date-time title: Expires On type: string owner: $ref: '#/components/schemas/GetUserOut' token_type: title: Token Type type: string uuid: title: Uuid type: string required: - created_on - owner - token_type - uuid title: GetCrashReportTokenOut type: object GetGroupOut: description: Model for `GET /group/{group_id}` responses. properties: authorized_to_login: title: Authorized To Login type: boolean created_on: format: date-time title: Created On type: string description: title: Description type: string group_id: title: Group Id type: string group_name: title: Group Name type: string is_autogroup: title: Is Autogroup type: boolean members: items: $ref: '#/components/schemas/GetUserShortOut' title: Members type: array owner: $ref: '#/components/schemas/GetUserShortOut' updated_on: format: date-time title: Updated On type: string required: - created_on - description - group_id - group_name - is_autogroup - members - updated_on title: GetGroupOut type: object GetGroupShortOut: description: Model for an element of `GET /group` responses properties: group_id: title: Group Id type: string group_name: title: Group Name type: string required: - group_id - group_name title: GetGroupShortOut type: object GetJobOut: description: Represents a job properties: coalesce: title: Coalesce type: boolean executor: title: Executor type: string function: title: Function type: string job_id: title: Job Id type: string max_instances: title: Max Instances type: integer misfire_grace_time: title: Misfire Grace Time type: integer name: title: Name type: string next_run_time: format: date-time title: Next Run Time type: string trigger: title: Trigger type: string required: - coalesce - executor - function - job_id - name title: GetJobOut type: object GetTokenOut: description: Model for ``GET /token`` responses. properties: callback: format: uri maxLength: 65536 minLength: 1 title: Callback type: string comments: title: Comments type: string created_on: format: date-time title: Created On type: string expires_on: format: date-time title: Expires On type: string owner: $ref: '#/components/schemas/GetUserOut' parent: title: Parent type: string token_type: $ref: '#/components/schemas/TokenType' uuid: title: Uuid type: string required: - created_on - owner - token_type - uuid title: GetTokenOut type: object GetTrackingOut: description: Represents a corporation tracking response. properties: invalid_refresh_token: default: [] items: $ref: '#/components/schemas/GetUserShortOut' title: Invalid Refresh Token type: array no_refresh_token: default: [] items: $ref: '#/components/schemas/GetUserShortOut' title: No Refresh Token type: array valid_refresh_token: default: [] items: $ref: '#/components/schemas/GetUserShortOut' title: Valid Refresh Token type: array title: GetTrackingOut type: object GetUserOut: description: Model for ``GET /user/{character_name}`` responses properties: alliance: title: Alliance type: integer authorized_to_login: title: Authorized To Login type: boolean available_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Available Esi Scopes type: array character_id: title: Character Id type: integer character_name: title: Character Name type: string clearance_level: title: Clearance Level type: integer coalitions: items: type: string title: Coalitions type: array corporation: title: Corporation type: string created_on: format: date-time title: Created On type: string cumulated_mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Cumulated Mandatory Esi Scopes type: array is_ceo_of_alliance: title: Is Ceo Of Alliance type: boolean is_ceo_of_corporation: title: Is Ceo Of Corporation type: boolean tickered_name: title: Tickered Name type: string updated_on: format: date-time title: Updated On type: string required: - available_esi_scopes - character_id - character_name - clearance_level - coalitions - created_on - cumulated_mandatory_esi_scopes - is_ceo_of_alliance - is_ceo_of_corporation - tickered_name - updated_on title: GetUserOut type: object GetUserShortOut: description: Model for an element of ``GET /user`` response properties: character_id: title: Character Id type: integer character_name: title: Character Name type: string required: - character_id - character_name title: GetUserShortOut type: object HTTPValidationError: properties: detail: items: $ref: '#/components/schemas/ValidationError' title: Detail type: array title: HTTPValidationError type: object JWTAlgorithm: description: Acceptable JWT algorithms, see `here `_. enum: - HS256 - HS384 - HS512 title: JWTAlgorithm type: string JWTConfig: description: JWT configuration model properties: algorithm: $ref: '#/components/schemas/JWTAlgorithm' secret: default: '' description: JWT secret. Generate one with ``openssl rand -hex 32``. format: password title: Secret type: string writeOnly: true title: JWTConfig type: object LoggingLevel: description: Acceptable logging levels enum: - critical - debug - error - info - warning title: LoggingLevel type: string MailRecipient: description: Represents a recipient of the email properties: recipient_id: title: Recipient Id type: integer recipient_name: title: Recipient Name type: string required: - recipient_id - recipient_name title: MailRecipient type: object PostCoalitionIn: description: Model for `POST /coalition` responses. properties: coalition_name: title: Coalition Name type: string ticker: title: Ticker type: string required: - coalition_name - ticker title: PostCoalitionIn type: object PostCorporationGuestOut: description: Model for ``POST /corporation/{corporation_id}/guest`` reponses. properties: state_code: title: State Code type: string required: - state_code title: PostCorporationGuestOut type: object PostGroupIn: description: Model for `POST /group` responses. properties: description: default: '' title: Description type: string group_name: title: Group Name type: string required: - group_name title: PostGroupIn type: object PostTokenDynIn: description: Model for ``POST /token/dyn`` requests. properties: callback: format: uri maxLength: 65536 minLength: 1 title: Callback type: string comments: title: Comments type: string required: - callback title: PostTokenDynIn type: object PostTokenDynOut: description: Model for ``POST /token/dyn`` reponses. properties: tkn: title: Tkn type: string required: - tkn title: PostTokenDynOut type: object PostTokenPerIn: description: Model for ``POST /token/per`` requests. properties: callback: format: uri maxLength: 65536 minLength: 1 title: Callback type: string comments: title: Comments type: string required: - callback title: PostTokenPerIn type: object PostTokenPerOut: description: Model for ``POST /token/per`` reponses. properties: tkn: title: Tkn type: string required: - tkn title: PostTokenPerOut type: object PostTokenUseFromDynIn: description: Model for ``POST /token/use/from/dyn`` requests. properties: scopes: default: - publicData items: $ref: '#/components/schemas/EsiScope' title: Scopes type: array state_code: title: State Code type: string title: PostTokenUseFromDynIn type: object PostTokenUseFromDynOut: description: Model for ``POST /token/use/from/dyn`` reponses. properties: login_url: title: Login Url type: string state_code: title: State Code type: string required: - login_url - state_code title: PostTokenUseFromDynOut type: object PostUseFromPerOut: description: Model for ``POST /token/use/from/per`` reponses. properties: user_token: title: User Token type: string required: - user_token title: PostUseFromPerOut type: object PutAllianceIn: description: Model for ``PUT /alliance/{alliance_id}`` requests properties: authorized_to_login: title: Authorized To Login type: boolean mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Mandatory Esi Scopes type: array title: PutAllianceIn type: object PutCoalitionIn: description: Model for `PUT /coalition/{coalition_id}` responses. properties: add_member_alliances: items: type: integer title: Add Member Alliances type: array add_member_corporations: items: type: integer title: Add Member Corporations type: array authorized_to_login: title: Authorized To Login type: boolean mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Mandatory Esi Scopes type: array member_alliances: items: type: integer title: Member Alliances type: array member_corporations: items: type: integer title: Member Corporations type: array remove_member_alliances: items: type: integer title: Remove Member Alliances type: array remove_member_corporations: items: type: integer title: Remove Member Corporations type: array ticker: title: Ticker type: string title: PutCoalitionIn type: object PutCorporationIn: description: Model for ``PUT /corporation/{corporation_id}`` requests properties: authorized_to_login: title: Authorized To Login type: boolean mandatory_esi_scopes: items: $ref: '#/components/schemas/EsiScope' title: Mandatory Esi Scopes type: array title: PutCorporationIn type: object PutGroupIn: description: Model for `POST /group` responses. properties: add_members: items: type: string title: Add Members type: array authorized_to_login: title: Authorized To Login type: boolean description: title: Description type: string members: items: type: string title: Members type: array owner: title: Owner type: string remove_members: items: type: string title: Remove Members type: array title: PutGroupIn type: object PutUserIn: description: Model for ``PUT /user/{character_id}`` requests properties: authorized_to_login: title: Authorized To Login type: boolean clearance_level: title: Clearance Level type: integer title: PutUserIn type: object RedisConfig: description: Redis configuration model properties: database: default: 0 description: Redis database to use. title: Database type: integer host: default: redis description: Redis hostname. title: Host type: string port: default: 6379 description: Redis port. maximum: 65535.0 minimum: 0.0 title: Port type: integer title: RedisConfig type: object SentryConfig: description: "Sentry configuration model.\n\nSee also:\n `Sentry homepage\ \ `\n `Sentry documentation for Python ASGI\ \ `_" properties: dsn: default: https://examplePublicKey@o0.ingest.sentry.io/0 description: Optional Sentry DSN (https://sentry.io/welcome/). format: uri maxLength: 2083 minLength: 1 title: Dsn type: string enabled: default: false description: Wether to activate the Sentry middleware. title: Enabled type: boolean traces_sample_rate: default: 0 description: Trace sample rate. maximum: 1.0 minimum: 0.0 title: Traces Sample Rate type: number title: SentryConfig type: object TeamspeakConfig: description: Teamspeak configuration model properties: auth_group_name: default: SNI TS AUTH description: Name of the auth group. Authenticated Teamspeak users are automatically added to this group. Only required if ``teamspeak.enable`` is set to ``True``. title: Auth Group Name type: string bot_name: default: SeAT Navy Issue description: Name of the Teamspeak bot. Only required if ``teamspeak.enable`` is set to ``True``. title: Bot Name type: string enabled: default: false description: Wether to activate the Teamspeak connector. title: Enabled type: boolean host: default: '' description: Name, hostname, or IP address of the Teamspeak server. Only required if ``teamspeak.enable`` is set to ``True``. title: Host type: string password: default: '' description: Query server password. Only required if ``teamspeak.enable`` is set to ``True``. format: password title: Password type: string writeOnly: true port: default: 10011 description: Port of the query server associated to the Teamspeak server. Only required if ``teamspeak.enable`` is set to ``True``. maximum: 65535.0 minimum: 0.0 title: Port type: integer server_id: default: 0 description: Teamspeak server ID. Only required if ``teamspeak.enable`` is set to ``True``. title: Server Id type: integer username: default: sni description: Query server username. Only required if ``teamspeak.enable`` is set to ``True``. title: Username type: string title: TeamspeakConfig type: object TokenType: description: Enumeration containing the various token types. enum: - dyn - per - use title: TokenType type: string ValidationError: properties: loc: items: type: string title: Location type: array msg: title: Message type: string type: title: Error Type type: string required: - loc - msg - type title: ValidationError type: object sni__api__routers__coalition__GetAllianceShortOut: description: Short alliance description properties: alliance_id: title: Alliance Id type: integer alliance_name: title: Alliance Name type: string required: - alliance_id - alliance_name title: GetAllianceShortOut type: object sni__api__routers__corporation__GetAllianceShortOut: description: Short alliance description properties: alliance_id: title: Alliance Id type: integer alliance_name: title: Alliance Name type: string required: - alliance_id - alliance_name title: GetAllianceShortOut type: object sni__api__routers__discord__PostAuthStartOut: description: Model for `POST /discord/auth/start` responses. properties: code: title: Code type: string expiration_datetime: format: date-time title: Expiration Datetime type: string user: $ref: '#/components/schemas/GetUserShortOut' required: - code - expiration_datetime - user title: PostAuthStartOut type: object sni__api__routers__teamspeak__PostAuthStartOut: description: Model for `POST /teamspeak/auth/start` responses. properties: challenge_nickname: title: Challenge Nickname type: string expiration_datetime: format: date-time title: Expiration Datetime type: string user: $ref: '#/components/schemas/GetUserShortOut' required: - expiration_datetime - challenge_nickname - user title: PostAuthStartOut type: object info: title: FastAPI version: 0.1.0 openapi: 3.0.2 paths: /alliance: get: description: 'Gets the list of alliances registered in this instance. Requires a clearance level of 0 or more.' operationId: get_alliances_alliance_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/sni__api__routers__corporation__GetAllianceShortOut' title: Response Get Alliances Alliance Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get the list of alliances tags: - Alliance management /alliance/{alliance_id}: get: description: Gets data about an alliance operationId: get_alliance_alliance__alliance_id__get parameters: - in: path name: alliance_id required: true schema: title: Alliance Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get data about an alliance tags: - Alliance management post: description: 'Manually fetches an alliance from the ESI. Requires a clearance level of 8 or more.' operationId: post_alliance_alliance__alliance_id__post parameters: - in: path name: alliance_id required: true schema: title: Alliance Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetAllianceOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Manually fetch an alliance from the ESI tags: - Alliance management put: description: 'Modify an alliance registered on SNI. Note that it does not modify it on an ESI level. Requires a clearance level of 4 or more.' operationId: put_alliance_alliance__alliance_id__put parameters: - in: path name: alliance_id required: true schema: title: Alliance Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PutAllianceIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetAllianceOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Modify an alliance registered on SNI tags: - Alliance management /alliance/{alliance_id}/tracking: get: description: 'Reports which member (of a given alliance) have a valid refresh token attacked to them, and which do not. Requires a clearance level of 3 and having authority over this alliance.' operationId: get_alliance_tracking_alliance__alliance_id__tracking_get parameters: - in: path name: alliance_id required: true schema: title: Alliance Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetTrackingOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Alliance tracking tags: - Alliance management /callback/esi: get: description: "ESI callback. You should not manually call this.\n\nUpon receiving\ \ a notification from EVE SSO, SNI redirects the client to the\nappropriate\ \ frontend callback, with the state code and user token in URL\nparameters.\n\ \nReference:\n `OAuth 2.0 for Web Based Applications `_" operationId: get_callback_esi_callback_esi_get parameters: - in: query name: code required: true schema: title: Code type: string - in: query name: state required: true schema: title: State type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: ESI callback tags: - Callbacks /coalition: get: description: Lists all the coalition names. Requires a clearance level of 0 or more. operationId: get_coalition_coalition_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCoalitionShortOut' title: Response Get Coalition Coalition Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: List all coalition names tags: - Coalition management post: description: Creates a coalition. Requires a clearance level of 9 or more. operationId: post_coalitions_coalition_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PostCoalitionIn' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/GetCoalitionOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Create a coalition tags: - Coalition management /coalition/{coalition_id}: delete: description: Deletes a coalition. Requires a clearance level of 9 or more. operationId: delete_coalition_coalition__coalition_id__delete parameters: - in: path name: coalition_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Delete a coalition tags: - Coalition management get: description: 'Returns details about a given coalition. Requires a clearance level of 0 or more.' operationId: get_coalition_name_coalition__coalition_id__get parameters: - in: path name: coalition_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCoalitionOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get basic informations about a coalition tags: - Coalition management put: description: 'Updates a coalition. All fields in the request body are optional. The `add_member_alliances` and `remove_member_alliances` fields can be used together, but the `member_alliances` cannot be used in conjunction with `add_member_alliances` and `remove_member_alliances`. Similarly for `add_member_corporations`, `remove_member_corporations`, and `member_corporations`. Requires a clearance level of 6 or more.' operationId: put_coalition_coalition__coalition_id__put parameters: - in: path name: coalition_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PutCoalitionIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCoalitionOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Update a coalition tags: - Coalition management /coalition/{coalition_id}/tracking: get: description: 'Reports which member (of a given coalition) have a valid refresh token attacked to them, and which do not. Requires a clearance level of 5 or more.' operationId: get_coalition_tracking_coalition__coalition_id__tracking_get parameters: - in: path name: coalition_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetTrackingOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Coalition tracking tags: - Coalition management /corporation: get: description: 'Gets the list of corporations registered in this instance. Requires a clearance level of 0 or more.' operationId: get_corporations_corporation_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCorporationShortOut' title: Response Get Corporations Corporation Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get the list of corporations tags: - Corporation management /corporation/{corporation_id}: get: description: 'Get informations about a corporation. Note that this corporation must be registered on SNI' operationId: get_corporation_corporation__corporation_id__get parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCorporationOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get informations about a corporation tags: - Corporation management post: description: 'Manually fetches a corporation from the ESI. Requires a clearance level of 8 or more.' operationId: post_corporation_corporation__corporation_id__post parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCorporationOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Manually fetch a corporation from the ESI tags: - Corporation management put: description: 'Modify a corporation registered on SNI. Note that it does not modify it on an ESI level. Requires a clearance level of 2 or more.' operationId: put_corporation_corporation__corporation_id__put parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PutCorporationIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCorporationOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Modify a corporation registered on SNI tags: - Corporation management /corporation/{corporation_id}/guest: get: description: Returns the list of guests in this corporation. operationId: get_corporation_guests_corporation__corporation_id__guest_get parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetUserShortOut' title: Response Get Corporation Guests Corporation Corporation Id Guest Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Corporation guests tags: - Corporation management post: description: 'Creates a state code for a new guest to this corporation. The user then has to login with this state code to be considered a guest.' operationId: post_corporation_guest_corporation__corporation_id__guest_post parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/PostCorporationGuestOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Creates a state code for a new guest to this corporation tags: - Corporation management /corporation/{corporation_id}/guest/{character_id}: delete: description: Deletes a corporation guest operationId: delete_corporation_guest_corporation__corporation_id__guest__character_id__delete parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Deletes a corporation guest tags: - Corporation management /corporation/{corporation_id}/tracking: get: description: 'Reports which member (of a given corporation) have a valid refresh token attacked to them, and which do not. Requires a clearance level of 1 and having authority over this corporation.' operationId: get_corporation_tracking_corporation__corporation_id__tracking_get parameters: - in: path name: corporation_id required: true schema: title: Corporation Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetTrackingOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Corporation tracking tags: - Corporation management /crash: get: description: 'Get the list of the 50 most recent crash reports, sorted from most to least recent. Requires a clearance level of 10.' operationId: get_crash_reports_crash_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCrashReportShortOut' title: Response Get Crash Reports Crash Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get the list of the 50 most recent crash reports tags: - Crash reports /crash/{crash_report_id}: delete: description: Deletes a crash report. Requires a clearance level of 10. operationId: delete_crash_report_crash__crash_report_id__delete parameters: - in: path name: crash_report_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Delete a crash report tags: - Crash reports get: description: Gets a crash report from its id. Requires a clearance level of 10. operationId: get_crash_report_crash__crash_report_id__get parameters: - in: path name: crash_report_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCrashReportOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get a crash report tags: - Crash reports /discord/auth/start: post: description: 'Starts a new authentication challenge for the owner of the token. A random code is returned (see `PostAuthStartOut` for more details), and the user has 1 minute to post it as `!auth ` in the dedicated authentication chanel.' operationId: port_auth_start_discord_auth_start_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/sni__api__routers__discord__PostAuthStartOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Starts a Discord authentication challenge tags: - Discord /esi/history/characters/{character_id}/location: get: description: 'Get the location history of a character. Requires having clearance to access the ESI scopes ``esi-location.read_location.v1``, ``esi-location.read_online.v1``, and ``esi-location.read_ship_type.v1``, of the character. The results are sorted by most to least recent, and paginated by pages of 50 items. The page count in returned in the ``X-Pages`` header.' operationId: get_history_character_location_esi_history_characters__character_id__location_get parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: page required: false schema: default: 1 exclusiveMinimum: 0.0 title: Page type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCharacterLocationOut' title: Response Get History Character Location Esi History Characters Character Id Location Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get character location history tags: - ESI /esi/history/characters/{character_id}/location/now: post: description: 'Get and save the current location of a character. Requires having clearance to access the ESI scopes ``esi-location.read_location.v1``, ``esi-location.read_online.v1``, and ``esi-location.read_ship_type.v1``, of the character.' operationId: post_history_character_location_now_esi_history_characters__character_id__location_now_post parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetCharacterLocationOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get character's current location tags: - ESI /esi/history/characters/{character_id}/mail: get: description: "Get the email history of a character. Requires having clearance\ \ to access\nthe ESI scope ``esi-mail.read_mail.v1`` of the character. The\ \ results are\nsorted by most to least recent, and paginated by pages of 50\ \ items. The\npage count in returned in the ``X-Pages`` header.\n\nTodo:\n\ \ Only show email sent by the specified user..." operationId: get_history_character_mails_esi_history_characters__character_id__mail_get parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: page required: false schema: default: 1 exclusiveMinimum: 0.0 title: Page type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCharacterMailShortOut' title: Response Get History Character Mails Esi History Characters Character Id Mail Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get character email history tags: - ESI /esi/history/characters/{character_id}/skillpoints: get: description: 'Get the skill points history of a character. Requires having clearance to access the ESI scope ``esi-skills.read_skills.v1`` of the character. The results are sorted by most to least recent, and paginated by pages of 50 items. The page count in returned in the ``X-Pages`` header.' operationId: get_history_character_skillpoints_esi_history_characters__character_id__skillpoints_get parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: page required: false schema: default: 1 exclusiveMinimum: 0.0 title: Page type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCharacterSkillPointsOut' title: Response Get History Character Skillpoints Esi History Characters Character Id Skillpoints Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get character skill points history tags: - ESI /esi/history/characters/{character_id}/wallet: get: description: 'Get the wallet balance history of a character. Requires having clearance to access the ESI scope ``esi-wallet.read_character_wallet.v1`` of the character. The results are sorted by most to least recent, and paginated by pages of 50 items. The page count in returned in the ``X-Pages`` header.' operationId: get_history_character_wallet_esi_history_characters__character_id__wallet_get parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: page required: false schema: default: 1 exclusiveMinimum: 0.0 title: Page type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetCharacterWalletBalanceOut' title: Response Get History Character Wallet Esi History Characters Character Id Wallet Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get character wallet balance history tags: - ESI /esi/{esi_path}: get: description: 'Forwards a `GET` request to the ESI. The required clearance level depends on the user making the request and the user specified on the `on_behalf_of` field. See also `EsiRequestIn`.' operationId: get_esi_esi__esi_path__get parameters: - in: path name: esi_path required: true schema: title: Esi Path type: string - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: allOf: - $ref: '#/components/schemas/EsiRequestIn' default: all_pages: false id_annotations: false params: {} title: Data responses: '200': content: application/json: schema: $ref: '#/components/schemas/EsiResponse' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Proxy path to the ESI tags: - ESI - ESI /group: get: description: Lists all the group names. Requires a clearance level of 0 or more. operationId: get_group_group_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetGroupShortOut' title: Response Get Group Group Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: List all group names tags: - Group management post: description: Creates a group. Requires a clearance level of 9 or more. operationId: post_groups_group_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PostGroupIn' required: true responses: '201': content: application/json: schema: $ref: '#/components/schemas/GetGroupOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Create a group tags: - Group management /group/{group_id}: delete: description: Deletes a group. Requires a clearance level of 9 or more. operationId: delete_group_group__group_id__delete parameters: - in: path name: group_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Delete a group tags: - Group management get: description: 'Returns details about a given group. Requires a clearance level of 0 or more.' operationId: get_group_name_group__group_id__get parameters: - in: path name: group_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetGroupOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get basic informations about a group tags: - Group management put: description: 'Updates a group. All fields in the request body are optional. The `add_members` and `remove_members` fields can be used together, but the `members` cannot be used in conjunction with `add_members` and `remove_members`. Requires a clearance level of 9 or more of for the user to be the owner of the group.' operationId: put_group_group__group_id__put parameters: - in: path name: group_id required: true schema: title: BSON object id - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PutGroupIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetGroupOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Update a group tags: - Group management /system/configuration: get: description: 'Gets the configuration of the SNI instance. Secrets are redacted. Requires a clearance of 10.' operationId: get_configuration_system_configuration_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/Config' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Gets active configuration tags: - System administration /system/job: get: description: Gets the currently scheduled job list. Requires a clearance level of 10. operationId: get_jobs_system_job_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetJobOut' title: Response Get Jobs System Job Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Gets the currently scheduled job list tags: - System administration /system/job/{callable_name}: post: description: Submits a job to the scheduler. Requires a clearance level of 10. operationId: post_job_system_job__callable_name__post parameters: - in: path name: callable_name required: true schema: title: Callable Name type: string - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetJobOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Submits a job to the scheduler tags: - System administration /teamspeak/auth/complete: post: description: 'Completes an authentication challenge for the owner of the token. See the `POST /teamspeak/auth/start` documentation.' operationId: post_auth_complete_teamspeak_auth_complete_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '201': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Completes a teamspeak authentication challenge tags: - Teamspeak /teamspeak/auth/start: post: description: 'Starts a new authentication challenge for the owner of the token. A random nickname is returned (see `PostAuthStartOut` for more details), and the user has 1 minute to update its teamspeak nickname to it, and then call `POST /teamspeak/auth/complete`.' operationId: port_auth_start_teamspeak_auth_start_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/sni__api__routers__teamspeak__PostAuthStartOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Starts a teamspeak authentication challenge tags: - Teamspeak /token: delete: description: Manually deletes a token (of any type). Requires a clearance level of 10. operationId: delete_token_token_delete parameters: - in: query name: uuid required: true schema: format: uuid4 title: Uuid type: string - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Manually delete a token tags: - Authentication & tokens get: description: 'Returns informations about the token currently being used. Requires a clearance level of 0 or more.' operationId: get_token_token_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetTokenOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get basic informations about the current token tags: - Authentication & tokens /token/dyn: post: description: 'Creates a new dynamic app token. Must be called with a permanent app token, and the owner must have a clearance level of 10.' operationId: post_token_dyn_token_dyn_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PostTokenDynIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/PostTokenDynOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Create a new dynamic app token tags: - Authentication & tokens /token/per: post: description: 'Creates a new permanent app token. Must be called with a permanent app token, and the owner must have a clearance level of 10.' operationId: post_token_per_token_per_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PostTokenPerIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/PostTokenPerOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Create a new permanent app token tags: - Authentication & tokens /token/use/from/dyn: post: description: 'Authenticates an application dynamic token and returns a `state code` and an URL at which the user can authenticate to the EVE SSO. Once that is done, SNI issues a GET request to the app predefined callback, with that state code and the user token. Requires the owner of the token to have a clearance level of 0 or more.' operationId: post_token_use_from_dyn_token_use_from_dyn_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PostTokenUseFromDynIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/PostTokenUseFromDynOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Create a new user token with a dynamic app token tags: - Authentication & tokens /token/use/from/per: post: description: 'Authenticates an application permanent token and returns a user token tied to the owner of that app token.' operationId: post_token_use_from_per_token_use_from_per_post parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/PostUseFromPerOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Create a new user token with a permanent app token tags: - Authentication & tokens /user: get: description: 'Returns the list of all user names. Requires a clearance level of 0 or more.' operationId: get_user_user_get parameters: - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/GetUserShortOut' title: Response Get User User Get type: array description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get the user list tags: - User management /user/{character_id}: delete: description: Deletes a user. Requires a clearance level of 9 or more. operationId: delete_user_user__character_id__delete parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: {} description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Delete a user tags: - User management get: description: Returns details about a character. Requires a clearance level of 0 or more. operationId: get_user_name_user__character_id__get parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetUserOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Get basic informations about a user tags: - User management put: description: 'Manually updates non ESI data about a character. The required clearance level depends on the modification.' operationId: put_user_name_user__character_id__put parameters: - in: path name: character_id required: true schema: title: Character Id type: integer - in: header name: authorization required: false schema: title: Authorization type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/PutUserIn' required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/GetUserOut' description: Successful Response '422': content: application/json: schema: $ref: '#/components/schemas/HTTPValidationError' description: Validation Error summary: Update a user tags: - User management