/* Options:
Date: 2026-06-12 23:52:07
Version: 10.05
Tip: To override a DTO option, remove "//" prefix before updating
BaseUrl: https://testapi.bokamera.se
//GlobalNamespace:
//MakePartial: True
//MakeVirtual: True
//MakeInternal: False
//MakeDataContractsExtensible: False
//AddNullableAnnotations: True
//AddReturnMarker: True
//AddDescriptionAsComments: True
//AddDataContractAttributes: False
//AddIndexesToDataMembers: False
//AddGeneratedCodeAttributes: False
//AddResponseStatus: False
//AddImplicitVersion:
//InitializeCollections: False
//ExportValueTypes: False
IncludeTypes: CreateApiKey.*
//ExcludeTypes:
//AddNamespaces:
//AddDefaultXmlNamespace: http://schemas.servicestack.net/types
*/
using System;
using System.IO;
using System.Collections;
using System.Collections.Generic;
using System.Runtime.Serialization;
using ServiceStack;
using ServiceStack.DataAnnotations;
using System.Globalization;
using ServiceStack.Data;
using System.Net;
using System.Net.Http.Headers;
using BokaMera.API.ServiceModel.Interfaces;
using BokaMera.API.ServiceModel.Dtos;
namespace BokaMera.API.ServiceModel.Dtos
{
public partial class ApiKeyResponse
{
///
///The company the API key belongs to
///
[ApiMember(Description="The company the API key belongs to")]
public virtual Guid CompanyId { get; set; }
///
///The API key value to send in the x-api-key header
///
[ApiMember(Description="The API key value to send in the x-api-key header")]
public virtual Guid ApiKey { get; set; }
///
///Whether the key is active
///
[ApiMember(Description="Whether the key is active")]
public virtual bool Active { get; set; }
///
///When the key was created
///
[ApiMember(Description="When the key was created")]
public virtual DateTime CreatedDate { get; set; }
///
///When the key expires, if ever
///
[ApiMember(Description="When the key expires, if ever")]
public virtual DateTime? ExpiryDate { get; set; }
///
///Contact email registered for the key
///
[ApiMember(Description="Contact email registered for the key")]
public virtual string ContactEmail { get; set; }
///
///Free text notes for the key
///
[ApiMember(Description="Free text notes for the key")]
public virtual string Notes { get; set; }
///
///Comma separated list of IP addresses the key is restricted to, if any
///
[ApiMember(Description="Comma separated list of IP addresses the key is restricted to, if any")]
public virtual string AllowedIpAddresses { get; set; }
}
[Route("/apikeys", "POST")]
[ApiResponse(Description="Returned if the current user is not authenticated", StatusCode=401)]
[ApiResponse(Description="Returned if the current user does not have the required role", StatusCode=403)]
public partial class CreateApiKey
: IReturn, ICompany
{
///
///The company to create the API key for. Defaults to the logged in user's company. Only a SuperAdmin may specify a company other than their own; for other roles this value is ignored.
///
[ApiMember(Description="The company to create the API key for. Defaults to the logged in user's company. Only a SuperAdmin may specify a company other than their own; for other roles this value is ignored.")]
public virtual Guid? CompanyId { get; set; }
///
///Optional contact email to register for the key. Defaults to the logged in user's email.
///
[ApiMember(Description="Optional contact email to register for the key. Defaults to the logged in user's email.")]
public virtual string ContactEmail { get; set; }
///
///Optional free text note for the key.
///
[ApiMember(Description="Optional free text note for the key.")]
public virtual string Notes { get; set; }
}
}
namespace BokaMera.API.ServiceModel.Interfaces
{
public partial interface ICompany
{
Guid? CompanyId { get; set; }
}
}