@axivoy/api 1.55.0 → 1.61.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/generated/schema.d.ts +937 -118
- package/package.json +1 -1
|
@@ -4678,7 +4678,7 @@ export interface paths {
|
|
|
4678
4678
|
put?: never;
|
|
4679
4679
|
/**
|
|
4680
4680
|
* Driver live status
|
|
4681
|
-
* @description For each driver: is the truck moving or stopped (from GPS) and what the driver's log says (Driving, On duty, Off duty, Sleeper, Yard move, Personal conveyance, ELD app offline), with drive, shift and week hours left, the clock left now and when he is ready again while resting, an active violation flag and any disagreement between truck and log. For a driver on a load with a Live ETA: road time, clock left at arrival and the margin against the next stop's appointment, and, where the tenant has split sleeper suggestions on and he is at risk of being late, whether a split sleeper would get him there on time (a suggestion; the driver decides when he rests). No coordinates.
|
|
4681
|
+
* @description For each driver: is the truck moving or stopped (from GPS) and what the driver's log says (Driving, On duty, Off duty, Sleeper, Yard move, Personal conveyance, ELD app offline), with drive, shift and week hours left, the clock left now and when he is ready again while resting, an active violation flag and any disagreement between truck and log. For a driver on a load with a Live ETA: road time, clock left at arrival and the margin against the next stop's appointment, and, where the tenant has split sleeper suggestions on and he is at risk of being late, whether a split sleeper would get him there on time (a suggestion; the driver decides when he rests). The trip outlook says whether he makes every stop left on the load, and which stop is projected late or out of his hours first; while a stop is late, the ways to make every stop: a longer rest until a suggested time (with the range that works), a full reset during a long wait at a stop, or, where the tenant has split sleeper suggestions on and his hours check out, a split sleeper across the trip with its steps (a suggestion; the driver decides when he rests). No coordinates.
|
|
4682
4682
|
*
|
|
4683
4683
|
* Kind: `read`. Errors use the envelope `{error: {code, reason, message, fields}}`.
|
|
4684
4684
|
*/
|
|
@@ -15887,6 +15887,50 @@ export interface paths {
|
|
|
15887
15887
|
patch?: never;
|
|
15888
15888
|
trace?: never;
|
|
15889
15889
|
};
|
|
15890
|
+
"/ops/system.integrations.business_verification.get": {
|
|
15891
|
+
parameters: {
|
|
15892
|
+
query?: never;
|
|
15893
|
+
header?: never;
|
|
15894
|
+
path?: never;
|
|
15895
|
+
cookie?: never;
|
|
15896
|
+
};
|
|
15897
|
+
get?: never;
|
|
15898
|
+
put?: never;
|
|
15899
|
+
/**
|
|
15900
|
+
* Business verification
|
|
15901
|
+
* @description The legal business details phone carriers check before the company can text: status (draft, in review, verified, needs changes), legal name, business type, industry, website, address, the authorized contact, whether an EIN is on file, which filings use it, and the carrier's reason when it needs changes. Never returns the EIN.
|
|
15902
|
+
*
|
|
15903
|
+
* Kind: `read`. Errors use the envelope `{error: {code, reason, message, fields}}`.
|
|
15904
|
+
*/
|
|
15905
|
+
post: operations["ops.system.integrations.business_verification.get"];
|
|
15906
|
+
delete?: never;
|
|
15907
|
+
options?: never;
|
|
15908
|
+
head?: never;
|
|
15909
|
+
patch?: never;
|
|
15910
|
+
trace?: never;
|
|
15911
|
+
};
|
|
15912
|
+
"/ops/system.integrations.communications.email_status.get": {
|
|
15913
|
+
parameters: {
|
|
15914
|
+
query?: never;
|
|
15915
|
+
header?: never;
|
|
15916
|
+
path?: never;
|
|
15917
|
+
cookie?: never;
|
|
15918
|
+
};
|
|
15919
|
+
get?: never;
|
|
15920
|
+
put?: never;
|
|
15921
|
+
/**
|
|
15922
|
+
* Email sending status
|
|
15923
|
+
* @description Whether Axivoy sends email for the company: available, on or off, the from address and whether it is the platform default, and whether delivery is live or held for review in test mode.
|
|
15924
|
+
*
|
|
15925
|
+
* Kind: `read`. Errors use the envelope `{error: {code, reason, message, fields}}`.
|
|
15926
|
+
*/
|
|
15927
|
+
post: operations["ops.system.integrations.communications.email_status.get"];
|
|
15928
|
+
delete?: never;
|
|
15929
|
+
options?: never;
|
|
15930
|
+
head?: never;
|
|
15931
|
+
patch?: never;
|
|
15932
|
+
trace?: never;
|
|
15933
|
+
};
|
|
15890
15934
|
"/ops/system.integrations.communications.inbound_messages.get": {
|
|
15891
15935
|
parameters: {
|
|
15892
15936
|
query?: never;
|
|
@@ -16107,6 +16151,28 @@ export interface paths {
|
|
|
16107
16151
|
patch?: never;
|
|
16108
16152
|
trace?: never;
|
|
16109
16153
|
};
|
|
16154
|
+
"/ops/system.integrations.sms_registration.get": {
|
|
16155
|
+
parameters: {
|
|
16156
|
+
query?: never;
|
|
16157
|
+
header?: never;
|
|
16158
|
+
path?: never;
|
|
16159
|
+
cookie?: never;
|
|
16160
|
+
};
|
|
16161
|
+
get?: never;
|
|
16162
|
+
put?: never;
|
|
16163
|
+
/**
|
|
16164
|
+
* Texting registration status
|
|
16165
|
+
* @description The company's texting registration (A2P 10DLC): whether texting runs on a number Axivoy registered or one the company brought, the current status and each step, the sending number, when it was submitted and approved, and the carrier's reason when a step was rejected. Never returns the registration form (EIN, contact name, email or phone).
|
|
16166
|
+
*
|
|
16167
|
+
* Kind: `read`. Errors use the envelope `{error: {code, reason, message, fields}}`.
|
|
16168
|
+
*/
|
|
16169
|
+
post: operations["ops.system.integrations.sms_registration.get"];
|
|
16170
|
+
delete?: never;
|
|
16171
|
+
options?: never;
|
|
16172
|
+
head?: never;
|
|
16173
|
+
patch?: never;
|
|
16174
|
+
trace?: never;
|
|
16175
|
+
};
|
|
16110
16176
|
"/ops/system.settings.planned_mileage.list": {
|
|
16111
16177
|
parameters: {
|
|
16112
16178
|
query?: never;
|
|
@@ -18737,6 +18803,34 @@ export interface webhooks {
|
|
|
18737
18803
|
patch?: never;
|
|
18738
18804
|
trace?: never;
|
|
18739
18805
|
};
|
|
18806
|
+
"driver_live_status.trip_at_risk_started": {
|
|
18807
|
+
parameters: {
|
|
18808
|
+
query?: never;
|
|
18809
|
+
header?: never;
|
|
18810
|
+
path?: never;
|
|
18811
|
+
cookie?: never;
|
|
18812
|
+
};
|
|
18813
|
+
get?: never;
|
|
18814
|
+
put?: never;
|
|
18815
|
+
/**
|
|
18816
|
+
* Trip at risk
|
|
18817
|
+
* @description A stop left on a driver's trip is projected late, or out of his hours, even with every rest it needs. An estimate from his ELD clocks and the route, not his hours.
|
|
18818
|
+
*
|
|
18819
|
+
* Version 1. Delivered at least once; dedupe by `id`.
|
|
18820
|
+
*
|
|
18821
|
+
* Read the current record with `drivers.live_status.list` using `fetch.input`.
|
|
18822
|
+
*
|
|
18823
|
+
* Subscriptions can filter on: `driver_user_id` (Driver), `load_id` (Load), `stop_id` (Stop), `minutes_late` (Minutes late).
|
|
18824
|
+
*
|
|
18825
|
+
* Verify `Axivoy-Signature` before trusting the body; answer 2xx within 10 seconds. Failed tries retry at 1 minute, 10 minutes, 1 hour, 6 hours and 16 hours; replay any delivery from the last 30 days with `webhooks.deliveries.replay`.
|
|
18826
|
+
*/
|
|
18827
|
+
post: operations["events.driver_live_status.trip_at_risk_started"];
|
|
18828
|
+
delete?: never;
|
|
18829
|
+
options?: never;
|
|
18830
|
+
head?: never;
|
|
18831
|
+
patch?: never;
|
|
18832
|
+
trace?: never;
|
|
18833
|
+
};
|
|
18740
18834
|
"fleet.acquisition.started": {
|
|
18741
18835
|
parameters: {
|
|
18742
18836
|
query?: never;
|
|
@@ -53044,6 +53138,8 @@ export interface operations {
|
|
|
53044
53138
|
log?: "driving" | "on_duty" | "off_duty" | "sleeper" | "yard_move" | "personal_conveyance" | "waiting_time" | "disconnected" | null;
|
|
53045
53139
|
/** @description Only drivers whose truck and log disagree. */
|
|
53046
53140
|
mismatch_only?: boolean | null;
|
|
53141
|
+
/** @description Only drivers whose trip is at risk (trip_at_risk_since set; it stays set through 30 minutes of runs that are not, so a trip at the grace edge stays listed). */
|
|
53142
|
+
at_risk_only?: boolean | null;
|
|
53047
53143
|
/** @description Cursor from the previous page's next_cursor. */
|
|
53048
53144
|
cursor?: string | null;
|
|
53049
53145
|
/** @description Rows per page (default 25). */
|
|
@@ -53321,6 +53417,140 @@ export interface operations {
|
|
|
53321
53417
|
/** @description On site: arrived_at minus expected_at in minutes, judged by the on-time rule with the tenant grace; negative is early. Null without an appointment or arrived_at. */
|
|
53322
53418
|
arrived_minutes_vs_appointment?: number | null;
|
|
53323
53419
|
} | null;
|
|
53420
|
+
/** @description Does he make every stop left on this trip? Set for a driver with live clocks and a Live ETA on an in-progress load, while the outlook is for that load and next stop. An estimate from his ELD clocks and the route, not his hours: 2 hours at each stop, rests as soon as his hours run out. */
|
|
53421
|
+
trip_outlook?: {
|
|
53422
|
+
/**
|
|
53423
|
+
* Format: date-time
|
|
53424
|
+
* @description The projector run that last changed it.
|
|
53425
|
+
*/
|
|
53426
|
+
as_of: string;
|
|
53427
|
+
/** @description on_track, late (a stop is projected late with every rest it needs), no_plan (a stop is beyond his hours: unknown ruleset, or the week runs out with no restart) or unknown (a leg has no routed miles before any late stop). */
|
|
53428
|
+
verdict: string;
|
|
53429
|
+
/** @description A co-driver is on the load: walked with no rests, so a stop is late only if it is late even then. */
|
|
53430
|
+
team: boolean;
|
|
53431
|
+
/**
|
|
53432
|
+
* Format: date-time
|
|
53433
|
+
* @description When the trip turned late or no plan; clears after 30 minutes of runs that are not.
|
|
53434
|
+
*/
|
|
53435
|
+
at_risk_since?: string | null;
|
|
53436
|
+
/** @description Every stop left, the next stop first. */
|
|
53437
|
+
stops: {
|
|
53438
|
+
/** @description The stop. */
|
|
53439
|
+
stop_id: number;
|
|
53440
|
+
/** @description Its number on the load page. */
|
|
53441
|
+
position?: number | null;
|
|
53442
|
+
/** @description How many stops the load page numbers. */
|
|
53443
|
+
of?: number | null;
|
|
53444
|
+
/** @description pickup, delivery or waypoint. */
|
|
53445
|
+
type?: string | null;
|
|
53446
|
+
/** @description The stop's company name, at most 40 characters. */
|
|
53447
|
+
name?: string | null;
|
|
53448
|
+
/**
|
|
53449
|
+
* Format: date-time
|
|
53450
|
+
* @description The instant the on-time rule judges against.
|
|
53451
|
+
*/
|
|
53452
|
+
expected_at?: string | null;
|
|
53453
|
+
/**
|
|
53454
|
+
* Format: date-time
|
|
53455
|
+
* @description Projected arrival with every rest it needs; on site, when he arrived. Null beyond his hours or after a leg without routed miles.
|
|
53456
|
+
*/
|
|
53457
|
+
arrives_at?: string | null;
|
|
53458
|
+
/** @description arrives_at minus expected_at in minutes; negative is early. */
|
|
53459
|
+
minutes_vs_appointment?: number | null;
|
|
53460
|
+
/** @description early, on_time or late, with the tenant grace; null without an appointment or an arrival. */
|
|
53461
|
+
on_time?: string | null;
|
|
53462
|
+
/** @description Full resets planned on the leg to this stop. */
|
|
53463
|
+
resets_before: number;
|
|
53464
|
+
/** @description A 34-hour restart is planned on the leg to this stop. */
|
|
53465
|
+
restart_before: boolean;
|
|
53466
|
+
/** @description The smallest of drive, shift and week left at arrival; null on a team load or without hours. */
|
|
53467
|
+
clock_left_seconds?: number | null;
|
|
53468
|
+
/** @description His hours run out before this stop with no plan. */
|
|
53469
|
+
beyond_hours: boolean;
|
|
53470
|
+
/** @description The leg to this stop (or one before it) has no routed miles, so it is not timed. */
|
|
53471
|
+
no_routed_miles: boolean;
|
|
53472
|
+
}[];
|
|
53473
|
+
/** @description Set while the verdict is late: the ways to make every stop, best first (the larger smallest margin, then fewer added rest hours), at most one per kind, a split last; empty when no single change does; null until searched. A split only while the tenant has split sleeper suggestions on and Axivoy's replay of his hours matches the ELD. A suggestion to talk through with the driver; he decides when he rests. */
|
|
53474
|
+
ways?: {
|
|
53475
|
+
/** @description longer_rest (hold one full reset or 34-hour restart until rest_until), rest_at_stop (log the wait for stop_id's scheduled start Off duty or Sleeper, a full reset) or split (a split sleeper pair across the trip, in steps). */
|
|
53476
|
+
kind: string;
|
|
53477
|
+
/** @description reset or restart: the rest held longer; reset for rest_at_stop; split for split. */
|
|
53478
|
+
rest_kind: string;
|
|
53479
|
+
/** @description longer_rest: the rest held is the one he is in now. split: the first period is the rest he is in now, held longer. */
|
|
53480
|
+
resting_now: boolean;
|
|
53481
|
+
/** @description longer_rest: the first stop after the rest held. rest_at_stop: the stop he waits at. split: the stop at or before which the first period falls. */
|
|
53482
|
+
stop_id: number;
|
|
53483
|
+
/**
|
|
53484
|
+
* Format: date-time
|
|
53485
|
+
* @description When the rest starts (null when he is resting now and the ledger has no start). split: when the first period starts.
|
|
53486
|
+
*/
|
|
53487
|
+
rest_starts_at?: string | null;
|
|
53488
|
+
/**
|
|
53489
|
+
* Format: date-time
|
|
53490
|
+
* @description longer_rest: when the rest would end without the change. Null for rest_at_stop and split.
|
|
53491
|
+
*/
|
|
53492
|
+
rest_planned_until?: string | null;
|
|
53493
|
+
/**
|
|
53494
|
+
* Format: date-time
|
|
53495
|
+
* @description longer_rest: the suggested end, the middle of the range that works, on 15 minutes. rest_at_stop: when the stop's work starts. split: when the second period ends.
|
|
53496
|
+
*/
|
|
53497
|
+
rest_until: string;
|
|
53498
|
+
/**
|
|
53499
|
+
* Format: date-time
|
|
53500
|
+
* @description longer_rest: the earliest end that makes every stop. Null for rest_at_stop and split.
|
|
53501
|
+
*/
|
|
53502
|
+
rest_until_earliest?: string | null;
|
|
53503
|
+
/**
|
|
53504
|
+
* Format: date-time
|
|
53505
|
+
* @description longer_rest: the latest end that makes every stop. Null for rest_at_stop and split.
|
|
53506
|
+
*/
|
|
53507
|
+
rest_until_latest?: string | null;
|
|
53508
|
+
/** @description The stops the change moves, in route order. */
|
|
53509
|
+
arrivals: {
|
|
53510
|
+
/** @description The stop. */
|
|
53511
|
+
stop_id: number;
|
|
53512
|
+
/**
|
|
53513
|
+
* Format: date-time
|
|
53514
|
+
* @description Projected arrival with the change.
|
|
53515
|
+
*/
|
|
53516
|
+
arrives_at: string;
|
|
53517
|
+
/** @description arrives_at minus expected_at in minutes; negative is early. */
|
|
53518
|
+
minutes_vs_appointment?: number | null;
|
|
53519
|
+
}[];
|
|
53520
|
+
/** @description The smallest of drive, shift and week left at the last stop with the change. */
|
|
53521
|
+
clock_left_at_last_stop_seconds?: number | null;
|
|
53522
|
+
/** @description split: the plan in order, through the end of the second period. Null for the other kinds. */
|
|
53523
|
+
steps?: {
|
|
53524
|
+
/** @description reset or restart (the full rest the split starts after), drive, or rest (a 30-minute break or a period of the pair). */
|
|
53525
|
+
kind: string;
|
|
53526
|
+
/** @description For a rest: sleeper or off_duty. */
|
|
53527
|
+
status?: string | null;
|
|
53528
|
+
/**
|
|
53529
|
+
* Format: date-time
|
|
53530
|
+
* @description When the step starts.
|
|
53531
|
+
*/
|
|
53532
|
+
starts_at: string;
|
|
53533
|
+
/** @description Length in minutes. */
|
|
53534
|
+
minutes: number;
|
|
53535
|
+
/** @description A drive: the stop it reaches. A period at a stop: that stop. */
|
|
53536
|
+
stop_id?: number | null;
|
|
53537
|
+
/** @description For a rest: road, wait (the sleeper in the wait for the stop's scheduled start) or after_work (after the stop's work). */
|
|
53538
|
+
place?: string | null;
|
|
53539
|
+
}[] | null;
|
|
53540
|
+
/** @description split with one new period: the qualifying rest he already took that it pairs with. Null otherwise. */
|
|
53541
|
+
pairs_with?: {
|
|
53542
|
+
/** @description Length in minutes. */
|
|
53543
|
+
minutes: number;
|
|
53544
|
+
/**
|
|
53545
|
+
* Format: date-time
|
|
53546
|
+
* @description When it started.
|
|
53547
|
+
*/
|
|
53548
|
+
started_at: string;
|
|
53549
|
+
/** @description It was in the sleeper (else off duty). */
|
|
53550
|
+
sleeper: boolean;
|
|
53551
|
+
} | null;
|
|
53552
|
+
}[] | null;
|
|
53553
|
+
} | null;
|
|
53324
53554
|
/** @description True on a tombstone (the row was deleted or recycled); other fields are absent. */
|
|
53325
53555
|
deleted?: boolean | null;
|
|
53326
53556
|
}[];
|
|
@@ -136582,7 +136812,7 @@ export interface operations {
|
|
|
136582
136812
|
};
|
|
136583
136813
|
};
|
|
136584
136814
|
};
|
|
136585
|
-
"ops.system.integrations.
|
|
136815
|
+
"ops.system.integrations.business_verification.get": {
|
|
136586
136816
|
parameters: {
|
|
136587
136817
|
query?: never;
|
|
136588
136818
|
header?: {
|
|
@@ -136596,15 +136826,8 @@ export interface operations {
|
|
|
136596
136826
|
};
|
|
136597
136827
|
requestBody?: {
|
|
136598
136828
|
content: {
|
|
136599
|
-
/**
|
|
136600
|
-
|
|
136601
|
-
* "inbound_message_id": 1
|
|
136602
|
-
* }
|
|
136603
|
-
*/
|
|
136604
|
-
"application/json": {
|
|
136605
|
-
/** @description The received message */
|
|
136606
|
-
inbound_message_id: number;
|
|
136607
|
-
};
|
|
136829
|
+
/** @example {} */
|
|
136830
|
+
"application/json": Record<string, never>;
|
|
136608
136831
|
};
|
|
136609
136832
|
};
|
|
136610
136833
|
responses: {
|
|
@@ -136617,38 +136840,78 @@ export interface operations {
|
|
|
136617
136840
|
/**
|
|
136618
136841
|
* @example {
|
|
136619
136842
|
* "result": {
|
|
136620
|
-
* "
|
|
136621
|
-
* "
|
|
136622
|
-
* "
|
|
136623
|
-
* "
|
|
136624
|
-
* "
|
|
136625
|
-
* "
|
|
136626
|
-
* "
|
|
136627
|
-
* "
|
|
136843
|
+
* "status": "submitted",
|
|
136844
|
+
* "status_label": "In review",
|
|
136845
|
+
* "legal_name": "Acme Trucking LLC",
|
|
136846
|
+
* "business_type": "Limited liability company (LLC)",
|
|
136847
|
+
* "industry": "Transportation and logistics",
|
|
136848
|
+
* "website": "https://acme.example",
|
|
136849
|
+
* "address": "123 Main St, Dallas, TX 75201, US",
|
|
136850
|
+
* "ein_on_file": true,
|
|
136851
|
+
* "adopted": false,
|
|
136852
|
+
* "used_by": [
|
|
136853
|
+
* {
|
|
136854
|
+
* "key": "texting_registration",
|
|
136855
|
+
* "label": "Texting registration"
|
|
136856
|
+
* }
|
|
136857
|
+
* ],
|
|
136858
|
+
* "submitted_at": "2026-10-24T07:05:06Z",
|
|
136859
|
+
* "approved_at": null,
|
|
136860
|
+
* "contact_name": "Sam Rep",
|
|
136861
|
+
* "contact_title": "Owner",
|
|
136862
|
+
* "contact_email": "ops@acme.example",
|
|
136863
|
+
* "contact_phone": "+15551234567",
|
|
136864
|
+
* "rejection_reason": null
|
|
136628
136865
|
* }
|
|
136629
136866
|
* }
|
|
136630
136867
|
*/
|
|
136631
136868
|
"application/json": {
|
|
136632
136869
|
result: {
|
|
136633
|
-
/** @description
|
|
136634
|
-
id: number;
|
|
136635
|
-
/** @description Processing status */
|
|
136870
|
+
/** @description not_started, draft, submitted (in review), approved (verified) or rejected (needs changes) */
|
|
136636
136871
|
status: string;
|
|
136637
|
-
/** @description
|
|
136638
|
-
|
|
136639
|
-
/** @description
|
|
136640
|
-
|
|
136641
|
-
/** @description
|
|
136642
|
-
|
|
136643
|
-
/** @description
|
|
136644
|
-
|
|
136645
|
-
/** @description
|
|
136646
|
-
|
|
136872
|
+
/** @description The status in the operator's words */
|
|
136873
|
+
status_label: string;
|
|
136874
|
+
/** @description Legal business name as registered */
|
|
136875
|
+
legal_name?: string | null;
|
|
136876
|
+
/** @description Business type, in words */
|
|
136877
|
+
business_type?: string | null;
|
|
136878
|
+
/** @description Industry, in words */
|
|
136879
|
+
industry?: string | null;
|
|
136880
|
+
/** @description Public website */
|
|
136881
|
+
website?: string | null;
|
|
136882
|
+
/** @description Registered business address on one line */
|
|
136883
|
+
address?: string | null;
|
|
136884
|
+
/** @description Whether an EIN is stored (the EIN itself is never returned) */
|
|
136885
|
+
ein_on_file: boolean;
|
|
136886
|
+
/** @description Whether it was verified before Axivoy and confirmed by Axivoy */
|
|
136887
|
+
adopted: boolean;
|
|
136888
|
+
/** @description Filings that rely on this verification */
|
|
136889
|
+
used_by: {
|
|
136890
|
+
/** @description Filing key, e.g. texting_registration */
|
|
136891
|
+
key: string;
|
|
136892
|
+
/** @description Filing name */
|
|
136893
|
+
label: string;
|
|
136894
|
+
}[];
|
|
136647
136895
|
/**
|
|
136648
136896
|
* Format: date-time
|
|
136649
|
-
* @description When it
|
|
136897
|
+
* @description When it was sent to carriers
|
|
136650
136898
|
*/
|
|
136651
|
-
|
|
136899
|
+
submitted_at?: string | null;
|
|
136900
|
+
/**
|
|
136901
|
+
* Format: date-time
|
|
136902
|
+
* @description When carriers verified it
|
|
136903
|
+
*/
|
|
136904
|
+
approved_at?: string | null;
|
|
136905
|
+
/** @description Authorized contact name */
|
|
136906
|
+
contact_name?: string | null;
|
|
136907
|
+
/** @description Authorized contact title */
|
|
136908
|
+
contact_title?: string | null;
|
|
136909
|
+
/** @description Authorized contact email */
|
|
136910
|
+
contact_email?: string | null;
|
|
136911
|
+
/** @description Authorized contact phone (E.164) */
|
|
136912
|
+
contact_phone?: string | null;
|
|
136913
|
+
/** @description The carrier's reason when it needs changes */
|
|
136914
|
+
rejection_reason?: string | null;
|
|
136652
136915
|
};
|
|
136653
136916
|
};
|
|
136654
136917
|
};
|
|
@@ -136719,7 +136982,7 @@ export interface operations {
|
|
|
136719
136982
|
};
|
|
136720
136983
|
};
|
|
136721
136984
|
};
|
|
136722
|
-
"ops.system.integrations.communications.
|
|
136985
|
+
"ops.system.integrations.communications.email_status.get": {
|
|
136723
136986
|
parameters: {
|
|
136724
136987
|
query?: never;
|
|
136725
136988
|
header?: {
|
|
@@ -136733,15 +136996,8 @@ export interface operations {
|
|
|
136733
136996
|
};
|
|
136734
136997
|
requestBody?: {
|
|
136735
136998
|
content: {
|
|
136736
|
-
/**
|
|
136737
|
-
|
|
136738
|
-
* "message_id": 1
|
|
136739
|
-
* }
|
|
136740
|
-
*/
|
|
136741
|
-
"application/json": {
|
|
136742
|
-
/** @description The Message Log row */
|
|
136743
|
-
message_id: number;
|
|
136744
|
-
};
|
|
136999
|
+
/** @example {} */
|
|
137000
|
+
"application/json": Record<string, never>;
|
|
136745
137001
|
};
|
|
136746
137002
|
};
|
|
136747
137003
|
responses: {
|
|
@@ -136754,85 +137010,347 @@ export interface operations {
|
|
|
136754
137010
|
/**
|
|
136755
137011
|
* @example {
|
|
136756
137012
|
* "result": {
|
|
136757
|
-
* "
|
|
136758
|
-
* "
|
|
136759
|
-
* "
|
|
136760
|
-
* "
|
|
136761
|
-
* "
|
|
136762
|
-
* "recipients": [
|
|
136763
|
-
* {
|
|
136764
|
-
* "address": "recipient@example.com",
|
|
136765
|
-
* "role": "to"
|
|
136766
|
-
* }
|
|
136767
|
-
* ],
|
|
136768
|
-
* "error_message": null,
|
|
136769
|
-
* "queued_at": null,
|
|
136770
|
-
* "sent_at": null,
|
|
136771
|
-
* "delivered_at": null,
|
|
136772
|
-
* "failed_at": null,
|
|
136773
|
-
* "created_at": "2026-10-20T00:32:17Z",
|
|
136774
|
-
* "body_text": "Body text",
|
|
136775
|
-
* "reply_ids": [
|
|
136776
|
-
* {
|
|
136777
|
-
* "id": 1
|
|
136778
|
-
* }
|
|
136779
|
-
* ]
|
|
137013
|
+
* "available": true,
|
|
137014
|
+
* "active": false,
|
|
137015
|
+
* "from_email": "hello@axivoy.test",
|
|
137016
|
+
* "from_is_platform_default": true,
|
|
137017
|
+
* "delivery_mode": "sandbox"
|
|
136780
137018
|
* }
|
|
136781
137019
|
* }
|
|
136782
137020
|
*/
|
|
136783
137021
|
"application/json": {
|
|
136784
137022
|
result: {
|
|
136785
|
-
/** @description
|
|
136786
|
-
|
|
136787
|
-
/** @description email
|
|
136788
|
-
|
|
136789
|
-
/** @description
|
|
136790
|
-
|
|
136791
|
-
/** @description
|
|
136792
|
-
|
|
136793
|
-
/** @description
|
|
136794
|
-
|
|
136795
|
-
|
|
136796
|
-
|
|
136797
|
-
|
|
136798
|
-
|
|
136799
|
-
|
|
136800
|
-
|
|
136801
|
-
|
|
136802
|
-
|
|
136803
|
-
|
|
136804
|
-
|
|
136805
|
-
|
|
136806
|
-
|
|
136807
|
-
|
|
136808
|
-
|
|
136809
|
-
|
|
136810
|
-
|
|
136811
|
-
|
|
136812
|
-
|
|
136813
|
-
|
|
136814
|
-
|
|
136815
|
-
|
|
136816
|
-
|
|
136817
|
-
|
|
136818
|
-
|
|
136819
|
-
|
|
136820
|
-
|
|
136821
|
-
|
|
136822
|
-
|
|
136823
|
-
|
|
136824
|
-
|
|
136825
|
-
|
|
136826
|
-
|
|
136827
|
-
|
|
136828
|
-
|
|
136829
|
-
|
|
136830
|
-
|
|
136831
|
-
|
|
136832
|
-
|
|
136833
|
-
|
|
136834
|
-
|
|
136835
|
-
|
|
137023
|
+
/** @description Whether the platform can send email for companies */
|
|
137024
|
+
available: boolean;
|
|
137025
|
+
/** @description Whether Axivoy sends email for this company */
|
|
137026
|
+
active: boolean;
|
|
137027
|
+
/** @description The address emails come from */
|
|
137028
|
+
from_email?: string | null;
|
|
137029
|
+
/** @description Whether that address is Axivoy's default rather than the company's own domain */
|
|
137030
|
+
from_is_platform_default: boolean;
|
|
137031
|
+
/** @description live (emails go out) or sandbox (test mode: held for review in the Message log) */
|
|
137032
|
+
delivery_mode: string;
|
|
137033
|
+
};
|
|
137034
|
+
};
|
|
137035
|
+
};
|
|
137036
|
+
};
|
|
137037
|
+
202: components["responses"]["Proposal"];
|
|
137038
|
+
/** @description Refused: credits_exhausted. */
|
|
137039
|
+
402: {
|
|
137040
|
+
headers: {
|
|
137041
|
+
[name: string]: unknown;
|
|
137042
|
+
};
|
|
137043
|
+
content: {
|
|
137044
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137045
|
+
};
|
|
137046
|
+
};
|
|
137047
|
+
/** @description Refused: not_permitted, not_available, authority_off, data_class_blocked. */
|
|
137048
|
+
403: {
|
|
137049
|
+
headers: {
|
|
137050
|
+
[name: string]: unknown;
|
|
137051
|
+
};
|
|
137052
|
+
content: {
|
|
137053
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137054
|
+
};
|
|
137055
|
+
};
|
|
137056
|
+
/** @description Refused: not_found. */
|
|
137057
|
+
404: {
|
|
137058
|
+
headers: {
|
|
137059
|
+
[name: string]: unknown;
|
|
137060
|
+
};
|
|
137061
|
+
content: {
|
|
137062
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137063
|
+
};
|
|
137064
|
+
};
|
|
137065
|
+
/** @description Refused: idempotency_conflict, stale_state. */
|
|
137066
|
+
409: {
|
|
137067
|
+
headers: {
|
|
137068
|
+
[name: string]: unknown;
|
|
137069
|
+
};
|
|
137070
|
+
content: {
|
|
137071
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137072
|
+
};
|
|
137073
|
+
};
|
|
137074
|
+
/** @description Refused: operation_retired. */
|
|
137075
|
+
410: {
|
|
137076
|
+
headers: {
|
|
137077
|
+
[name: string]: unknown;
|
|
137078
|
+
};
|
|
137079
|
+
content: {
|
|
137080
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137081
|
+
};
|
|
137082
|
+
};
|
|
137083
|
+
/** @description Refused: invalid_input, domain_rule. */
|
|
137084
|
+
422: {
|
|
137085
|
+
headers: {
|
|
137086
|
+
[name: string]: unknown;
|
|
137087
|
+
};
|
|
137088
|
+
content: {
|
|
137089
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137090
|
+
};
|
|
137091
|
+
};
|
|
137092
|
+
/** @description Refused: rate_limited. */
|
|
137093
|
+
429: {
|
|
137094
|
+
headers: {
|
|
137095
|
+
[name: string]: unknown;
|
|
137096
|
+
};
|
|
137097
|
+
content: {
|
|
137098
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137099
|
+
};
|
|
137100
|
+
};
|
|
137101
|
+
};
|
|
137102
|
+
};
|
|
137103
|
+
"ops.system.integrations.communications.inbound_messages.get": {
|
|
137104
|
+
parameters: {
|
|
137105
|
+
query?: never;
|
|
137106
|
+
header?: {
|
|
137107
|
+
/** @description Replays the first result when the same call is retried. Send one per user intent on writes. */
|
|
137108
|
+
"Idempotency-Key"?: string;
|
|
137109
|
+
/** @description Send `true` to run every check without changing anything. The answer is `{"dry_run": {"outcome": "would_run" | "would_propose", "input": {...}}}`. */
|
|
137110
|
+
"Axivoy-Dry-Run"?: "true" | "false";
|
|
137111
|
+
};
|
|
137112
|
+
path?: never;
|
|
137113
|
+
cookie?: never;
|
|
137114
|
+
};
|
|
137115
|
+
requestBody?: {
|
|
137116
|
+
content: {
|
|
137117
|
+
/**
|
|
137118
|
+
* @example {
|
|
137119
|
+
* "inbound_message_id": 1
|
|
137120
|
+
* }
|
|
137121
|
+
*/
|
|
137122
|
+
"application/json": {
|
|
137123
|
+
/** @description The received message */
|
|
137124
|
+
inbound_message_id: number;
|
|
137125
|
+
};
|
|
137126
|
+
};
|
|
137127
|
+
};
|
|
137128
|
+
responses: {
|
|
137129
|
+
/** @description The operation ran. */
|
|
137130
|
+
200: {
|
|
137131
|
+
headers: {
|
|
137132
|
+
[name: string]: unknown;
|
|
137133
|
+
};
|
|
137134
|
+
content: {
|
|
137135
|
+
/**
|
|
137136
|
+
* @example {
|
|
137137
|
+
* "result": {
|
|
137138
|
+
* "id": 1,
|
|
137139
|
+
* "status": "processed",
|
|
137140
|
+
* "from_email": "customer@example.com",
|
|
137141
|
+
* "subject": "Re: Invoice",
|
|
137142
|
+
* "body_text": "Thanks for the invoice.",
|
|
137143
|
+
* "outbound_message_id": 1,
|
|
137144
|
+
* "is_auto_reply": false,
|
|
137145
|
+
* "received_at": "2026-10-20T00:32:17Z"
|
|
137146
|
+
* }
|
|
137147
|
+
* }
|
|
137148
|
+
*/
|
|
137149
|
+
"application/json": {
|
|
137150
|
+
result: {
|
|
137151
|
+
/** @description Received message id */
|
|
137152
|
+
id: number;
|
|
137153
|
+
/** @description Processing status */
|
|
137154
|
+
status: string;
|
|
137155
|
+
/** @description Sender address */
|
|
137156
|
+
from_email?: string | null;
|
|
137157
|
+
/** @description Subject, as the sender wrote it */
|
|
137158
|
+
subject?: string | null;
|
|
137159
|
+
/** @description Plain-text body, as the sender wrote it */
|
|
137160
|
+
body_text?: string | null;
|
|
137161
|
+
/** @description The outbound message it answers */
|
|
137162
|
+
outbound_message_id?: number | null;
|
|
137163
|
+
/** @description Whether it is an automatic reply */
|
|
137164
|
+
is_auto_reply: boolean;
|
|
137165
|
+
/**
|
|
137166
|
+
* Format: date-time
|
|
137167
|
+
* @description When it arrived
|
|
137168
|
+
*/
|
|
137169
|
+
received_at?: string | null;
|
|
137170
|
+
};
|
|
137171
|
+
};
|
|
137172
|
+
};
|
|
137173
|
+
};
|
|
137174
|
+
202: components["responses"]["Proposal"];
|
|
137175
|
+
/** @description Refused: credits_exhausted. */
|
|
137176
|
+
402: {
|
|
137177
|
+
headers: {
|
|
137178
|
+
[name: string]: unknown;
|
|
137179
|
+
};
|
|
137180
|
+
content: {
|
|
137181
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137182
|
+
};
|
|
137183
|
+
};
|
|
137184
|
+
/** @description Refused: not_permitted, not_available, authority_off, data_class_blocked. */
|
|
137185
|
+
403: {
|
|
137186
|
+
headers: {
|
|
137187
|
+
[name: string]: unknown;
|
|
137188
|
+
};
|
|
137189
|
+
content: {
|
|
137190
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137191
|
+
};
|
|
137192
|
+
};
|
|
137193
|
+
/** @description Refused: not_found. */
|
|
137194
|
+
404: {
|
|
137195
|
+
headers: {
|
|
137196
|
+
[name: string]: unknown;
|
|
137197
|
+
};
|
|
137198
|
+
content: {
|
|
137199
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137200
|
+
};
|
|
137201
|
+
};
|
|
137202
|
+
/** @description Refused: idempotency_conflict, stale_state. */
|
|
137203
|
+
409: {
|
|
137204
|
+
headers: {
|
|
137205
|
+
[name: string]: unknown;
|
|
137206
|
+
};
|
|
137207
|
+
content: {
|
|
137208
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137209
|
+
};
|
|
137210
|
+
};
|
|
137211
|
+
/** @description Refused: operation_retired. */
|
|
137212
|
+
410: {
|
|
137213
|
+
headers: {
|
|
137214
|
+
[name: string]: unknown;
|
|
137215
|
+
};
|
|
137216
|
+
content: {
|
|
137217
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137218
|
+
};
|
|
137219
|
+
};
|
|
137220
|
+
/** @description Refused: invalid_input, domain_rule. */
|
|
137221
|
+
422: {
|
|
137222
|
+
headers: {
|
|
137223
|
+
[name: string]: unknown;
|
|
137224
|
+
};
|
|
137225
|
+
content: {
|
|
137226
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137227
|
+
};
|
|
137228
|
+
};
|
|
137229
|
+
/** @description Refused: rate_limited. */
|
|
137230
|
+
429: {
|
|
137231
|
+
headers: {
|
|
137232
|
+
[name: string]: unknown;
|
|
137233
|
+
};
|
|
137234
|
+
content: {
|
|
137235
|
+
"application/json": components["schemas"]["OperationError"];
|
|
137236
|
+
};
|
|
137237
|
+
};
|
|
137238
|
+
};
|
|
137239
|
+
};
|
|
137240
|
+
"ops.system.integrations.communications.messages.get": {
|
|
137241
|
+
parameters: {
|
|
137242
|
+
query?: never;
|
|
137243
|
+
header?: {
|
|
137244
|
+
/** @description Replays the first result when the same call is retried. Send one per user intent on writes. */
|
|
137245
|
+
"Idempotency-Key"?: string;
|
|
137246
|
+
/** @description Send `true` to run every check without changing anything. The answer is `{"dry_run": {"outcome": "would_run" | "would_propose", "input": {...}}}`. */
|
|
137247
|
+
"Axivoy-Dry-Run"?: "true" | "false";
|
|
137248
|
+
};
|
|
137249
|
+
path?: never;
|
|
137250
|
+
cookie?: never;
|
|
137251
|
+
};
|
|
137252
|
+
requestBody?: {
|
|
137253
|
+
content: {
|
|
137254
|
+
/**
|
|
137255
|
+
* @example {
|
|
137256
|
+
* "message_id": 1
|
|
137257
|
+
* }
|
|
137258
|
+
*/
|
|
137259
|
+
"application/json": {
|
|
137260
|
+
/** @description The Message Log row */
|
|
137261
|
+
message_id: number;
|
|
137262
|
+
};
|
|
137263
|
+
};
|
|
137264
|
+
};
|
|
137265
|
+
responses: {
|
|
137266
|
+
/** @description The operation ran. */
|
|
137267
|
+
200: {
|
|
137268
|
+
headers: {
|
|
137269
|
+
[name: string]: unknown;
|
|
137270
|
+
};
|
|
137271
|
+
content: {
|
|
137272
|
+
/**
|
|
137273
|
+
* @example {
|
|
137274
|
+
* "result": {
|
|
137275
|
+
* "id": 1,
|
|
137276
|
+
* "channel": "email",
|
|
137277
|
+
* "status": "sent",
|
|
137278
|
+
* "use_case": "test_send",
|
|
137279
|
+
* "subject": "Test subject",
|
|
137280
|
+
* "recipients": [
|
|
137281
|
+
* {
|
|
137282
|
+
* "address": "recipient@example.com",
|
|
137283
|
+
* "role": "to"
|
|
137284
|
+
* }
|
|
137285
|
+
* ],
|
|
137286
|
+
* "error_message": null,
|
|
137287
|
+
* "queued_at": null,
|
|
137288
|
+
* "sent_at": null,
|
|
137289
|
+
* "delivered_at": null,
|
|
137290
|
+
* "failed_at": null,
|
|
137291
|
+
* "created_at": "2026-10-20T00:32:17Z",
|
|
137292
|
+
* "body_text": "Body text",
|
|
137293
|
+
* "reply_ids": [
|
|
137294
|
+
* {
|
|
137295
|
+
* "id": 1
|
|
137296
|
+
* }
|
|
137297
|
+
* ]
|
|
137298
|
+
* }
|
|
137299
|
+
* }
|
|
137300
|
+
*/
|
|
137301
|
+
"application/json": {
|
|
137302
|
+
result: {
|
|
137303
|
+
/** @description Message Log row id */
|
|
137304
|
+
id: number;
|
|
137305
|
+
/** @description email, sms or another channel */
|
|
137306
|
+
channel: string;
|
|
137307
|
+
/** @description Delivery status, for example queued, held, sent, delivered or failed */
|
|
137308
|
+
status: string;
|
|
137309
|
+
/** @description The registered communication that sent it */
|
|
137310
|
+
use_case?: string | null;
|
|
137311
|
+
/** @description Subject */
|
|
137312
|
+
subject?: string | null;
|
|
137313
|
+
/** @description Recipients; blind copies are never listed, as on the page */
|
|
137314
|
+
recipients: {
|
|
137315
|
+
/** @description Recipient address */
|
|
137316
|
+
address: string;
|
|
137317
|
+
/** @description to or cc */
|
|
137318
|
+
role?: string | null;
|
|
137319
|
+
}[];
|
|
137320
|
+
/** @description Why delivery failed */
|
|
137321
|
+
error_message?: string | null;
|
|
137322
|
+
/**
|
|
137323
|
+
* Format: date-time
|
|
137324
|
+
* @description When it was queued
|
|
137325
|
+
*/
|
|
137326
|
+
queued_at?: string | null;
|
|
137327
|
+
/**
|
|
137328
|
+
* Format: date-time
|
|
137329
|
+
* @description When the provider accepted it
|
|
137330
|
+
*/
|
|
137331
|
+
sent_at?: string | null;
|
|
137332
|
+
/**
|
|
137333
|
+
* Format: date-time
|
|
137334
|
+
* @description When the provider reported delivery
|
|
137335
|
+
*/
|
|
137336
|
+
delivered_at?: string | null;
|
|
137337
|
+
/**
|
|
137338
|
+
* Format: date-time
|
|
137339
|
+
* @description When delivery failed
|
|
137340
|
+
*/
|
|
137341
|
+
failed_at?: string | null;
|
|
137342
|
+
/**
|
|
137343
|
+
* Format: date-time
|
|
137344
|
+
* @description When the row was written
|
|
137345
|
+
*/
|
|
137346
|
+
created_at?: string | null;
|
|
137347
|
+
/** @description Plain-text body */
|
|
137348
|
+
body_text?: string | null;
|
|
137349
|
+
/** @description Inbound replies, newest first */
|
|
137350
|
+
reply_ids: {
|
|
137351
|
+
/** @description Inbound message id */
|
|
137352
|
+
id: number;
|
|
137353
|
+
}[];
|
|
136836
137354
|
};
|
|
136837
137355
|
};
|
|
136838
137356
|
};
|
|
@@ -140125,6 +140643,190 @@ export interface operations {
|
|
|
140125
140643
|
};
|
|
140126
140644
|
};
|
|
140127
140645
|
};
|
|
140646
|
+
"ops.system.integrations.sms_registration.get": {
|
|
140647
|
+
parameters: {
|
|
140648
|
+
query?: never;
|
|
140649
|
+
header?: {
|
|
140650
|
+
/** @description Replays the first result when the same call is retried. Send one per user intent on writes. */
|
|
140651
|
+
"Idempotency-Key"?: string;
|
|
140652
|
+
/** @description Send `true` to run every check without changing anything. The answer is `{"dry_run": {"outcome": "would_run" | "would_propose", "input": {...}}}`. */
|
|
140653
|
+
"Axivoy-Dry-Run"?: "true" | "false";
|
|
140654
|
+
};
|
|
140655
|
+
path?: never;
|
|
140656
|
+
cookie?: never;
|
|
140657
|
+
};
|
|
140658
|
+
requestBody?: {
|
|
140659
|
+
content: {
|
|
140660
|
+
/** @example {} */
|
|
140661
|
+
"application/json": Record<string, never>;
|
|
140662
|
+
};
|
|
140663
|
+
};
|
|
140664
|
+
responses: {
|
|
140665
|
+
/** @description The operation ran. */
|
|
140666
|
+
200: {
|
|
140667
|
+
headers: {
|
|
140668
|
+
[name: string]: unknown;
|
|
140669
|
+
};
|
|
140670
|
+
content: {
|
|
140671
|
+
/**
|
|
140672
|
+
* @example {
|
|
140673
|
+
* "result": {
|
|
140674
|
+
* "registered": true,
|
|
140675
|
+
* "mode": "automated",
|
|
140676
|
+
* "status": "brand_pending",
|
|
140677
|
+
* "status_label": "Brand review pending",
|
|
140678
|
+
* "sending_number": null,
|
|
140679
|
+
* "submitted_at": "2026-10-24T07:05:06Z",
|
|
140680
|
+
* "approved_at": null,
|
|
140681
|
+
* "rejection_reason": null,
|
|
140682
|
+
* "steps": [
|
|
140683
|
+
* {
|
|
140684
|
+
* "key": "draft",
|
|
140685
|
+
* "label": "Draft",
|
|
140686
|
+
* "state": "done"
|
|
140687
|
+
* },
|
|
140688
|
+
* {
|
|
140689
|
+
* "key": "profile_submitted",
|
|
140690
|
+
* "label": "Business profile submitted",
|
|
140691
|
+
* "state": "done"
|
|
140692
|
+
* },
|
|
140693
|
+
* {
|
|
140694
|
+
* "key": "brand_pending",
|
|
140695
|
+
* "label": "Brand review pending",
|
|
140696
|
+
* "state": "current"
|
|
140697
|
+
* },
|
|
140698
|
+
* {
|
|
140699
|
+
* "key": "brand_approved",
|
|
140700
|
+
* "label": "Brand approved",
|
|
140701
|
+
* "state": "pending"
|
|
140702
|
+
* },
|
|
140703
|
+
* {
|
|
140704
|
+
* "key": "campaign_pending",
|
|
140705
|
+
* "label": "Campaign review pending",
|
|
140706
|
+
* "state": "pending"
|
|
140707
|
+
* },
|
|
140708
|
+
* {
|
|
140709
|
+
* "key": "campaign_verified",
|
|
140710
|
+
* "label": "Campaign verified",
|
|
140711
|
+
* "state": "pending"
|
|
140712
|
+
* },
|
|
140713
|
+
* {
|
|
140714
|
+
* "key": "number_active",
|
|
140715
|
+
* "label": "Number provisioned",
|
|
140716
|
+
* "state": "pending"
|
|
140717
|
+
* },
|
|
140718
|
+
* {
|
|
140719
|
+
* "key": "active",
|
|
140720
|
+
* "label": "Active",
|
|
140721
|
+
* "state": "pending"
|
|
140722
|
+
* }
|
|
140723
|
+
* ]
|
|
140724
|
+
* }
|
|
140725
|
+
* }
|
|
140726
|
+
*/
|
|
140727
|
+
"application/json": {
|
|
140728
|
+
result: {
|
|
140729
|
+
/** @description Whether a registration exists (in progress or approved) */
|
|
140730
|
+
registered: boolean;
|
|
140731
|
+
/** @description automated (Axivoy registered it) or external (the company brought a registered number) */
|
|
140732
|
+
mode?: string | null;
|
|
140733
|
+
/** @description Registration status key */
|
|
140734
|
+
status?: string | null;
|
|
140735
|
+
/** @description The status in the operator's words */
|
|
140736
|
+
status_label?: string | null;
|
|
140737
|
+
/** @description The number texts are sent from (E.164) */
|
|
140738
|
+
sending_number?: string | null;
|
|
140739
|
+
/**
|
|
140740
|
+
* Format: date-time
|
|
140741
|
+
* @description When it was sent to carriers
|
|
140742
|
+
*/
|
|
140743
|
+
submitted_at?: string | null;
|
|
140744
|
+
/**
|
|
140745
|
+
* Format: date-time
|
|
140746
|
+
* @description When carriers approved it
|
|
140747
|
+
*/
|
|
140748
|
+
approved_at?: string | null;
|
|
140749
|
+
/** @description The carrier's reason when a step was rejected */
|
|
140750
|
+
rejection_reason?: string | null;
|
|
140751
|
+
/** @description Each registration step in order */
|
|
140752
|
+
steps: {
|
|
140753
|
+
/** @description Step key */
|
|
140754
|
+
key: string;
|
|
140755
|
+
/** @description Step name */
|
|
140756
|
+
label: string;
|
|
140757
|
+
/** @description done, current, failed or pending */
|
|
140758
|
+
state: string;
|
|
140759
|
+
}[];
|
|
140760
|
+
};
|
|
140761
|
+
};
|
|
140762
|
+
};
|
|
140763
|
+
};
|
|
140764
|
+
202: components["responses"]["Proposal"];
|
|
140765
|
+
/** @description Refused: credits_exhausted. */
|
|
140766
|
+
402: {
|
|
140767
|
+
headers: {
|
|
140768
|
+
[name: string]: unknown;
|
|
140769
|
+
};
|
|
140770
|
+
content: {
|
|
140771
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140772
|
+
};
|
|
140773
|
+
};
|
|
140774
|
+
/** @description Refused: not_permitted, not_available, authority_off, data_class_blocked. */
|
|
140775
|
+
403: {
|
|
140776
|
+
headers: {
|
|
140777
|
+
[name: string]: unknown;
|
|
140778
|
+
};
|
|
140779
|
+
content: {
|
|
140780
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140781
|
+
};
|
|
140782
|
+
};
|
|
140783
|
+
/** @description Refused: not_found. */
|
|
140784
|
+
404: {
|
|
140785
|
+
headers: {
|
|
140786
|
+
[name: string]: unknown;
|
|
140787
|
+
};
|
|
140788
|
+
content: {
|
|
140789
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140790
|
+
};
|
|
140791
|
+
};
|
|
140792
|
+
/** @description Refused: idempotency_conflict, stale_state. */
|
|
140793
|
+
409: {
|
|
140794
|
+
headers: {
|
|
140795
|
+
[name: string]: unknown;
|
|
140796
|
+
};
|
|
140797
|
+
content: {
|
|
140798
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140799
|
+
};
|
|
140800
|
+
};
|
|
140801
|
+
/** @description Refused: operation_retired. */
|
|
140802
|
+
410: {
|
|
140803
|
+
headers: {
|
|
140804
|
+
[name: string]: unknown;
|
|
140805
|
+
};
|
|
140806
|
+
content: {
|
|
140807
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140808
|
+
};
|
|
140809
|
+
};
|
|
140810
|
+
/** @description Refused: invalid_input, domain_rule. */
|
|
140811
|
+
422: {
|
|
140812
|
+
headers: {
|
|
140813
|
+
[name: string]: unknown;
|
|
140814
|
+
};
|
|
140815
|
+
content: {
|
|
140816
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140817
|
+
};
|
|
140818
|
+
};
|
|
140819
|
+
/** @description Refused: rate_limited. */
|
|
140820
|
+
429: {
|
|
140821
|
+
headers: {
|
|
140822
|
+
[name: string]: unknown;
|
|
140823
|
+
};
|
|
140824
|
+
content: {
|
|
140825
|
+
"application/json": components["schemas"]["OperationError"];
|
|
140826
|
+
};
|
|
140827
|
+
};
|
|
140828
|
+
};
|
|
140829
|
+
};
|
|
140128
140830
|
"ops.system.settings.planned_mileage.list": {
|
|
140129
140831
|
parameters: {
|
|
140130
140832
|
query?: never;
|
|
@@ -149219,6 +149921,8 @@ export interface operations {
|
|
|
149219
149921
|
* @enum {string|null}
|
|
149220
149922
|
*/
|
|
149221
149923
|
direction?: "incoming" | "outgoing" | "missed" | null;
|
|
149924
|
+
/** @description True: only incoming calls where the caller left a voicemail. Combines with direction, so outgoing returns nothing. */
|
|
149925
|
+
voicemail?: boolean | null;
|
|
149222
149926
|
/** @description Only calls handled by this person. */
|
|
149223
149927
|
handled_by_user_id?: number | null;
|
|
149224
149928
|
/**
|
|
@@ -152192,6 +152896,11 @@ export interface operations {
|
|
|
152192
152896
|
is_main_texting_number: boolean;
|
|
152193
152897
|
/** @description The company's texting registration: none, in_progress or active (the same on every number) */
|
|
152194
152898
|
texting_registration: string;
|
|
152899
|
+
/**
|
|
152900
|
+
* Format: date-time
|
|
152901
|
+
* @description Set when the number moved to Axivoy: it is read-only and texts to it reach the company until then
|
|
152902
|
+
*/
|
|
152903
|
+
handed_over_until?: string | null;
|
|
152195
152904
|
/** @description True on a tombstone (the row was deleted or recycled); other fields are absent. */
|
|
152196
152905
|
deleted?: boolean | null;
|
|
152197
152906
|
}[];
|
|
@@ -156719,6 +157428,116 @@ export interface operations {
|
|
|
156719
157428
|
};
|
|
156720
157429
|
};
|
|
156721
157430
|
};
|
|
157431
|
+
"events.driver_live_status.trip_at_risk_started": {
|
|
157432
|
+
parameters: {
|
|
157433
|
+
query?: never;
|
|
157434
|
+
header: {
|
|
157435
|
+
/** @description `t=<unix seconds>,v1=<hex>`: HMAC-SHA256 of `{t}.{raw body}` with the endpoint secret. For 24 hours after a secret rotation a second `v1=` signed with the old secret follows. Compare in constant time and reject a `t` older than 300 seconds. */
|
|
157436
|
+
"Axivoy-Signature": string;
|
|
157437
|
+
/** @description Delivery id, the same on every retry of this delivery. */
|
|
157438
|
+
"Axivoy-Webhook-Id": string;
|
|
157439
|
+
/** @description The event `id`; dedupe on it. */
|
|
157440
|
+
"Axivoy-Event-Id": string;
|
|
157441
|
+
/** @description The event key, for example `load.created`. */
|
|
157442
|
+
"Axivoy-Event-Type": string;
|
|
157443
|
+
/** @description `true` on test sends from Settings, which also carry `"test": true` in the body. */
|
|
157444
|
+
"Axivoy-Test"?: string;
|
|
157445
|
+
};
|
|
157446
|
+
path?: never;
|
|
157447
|
+
cookie?: never;
|
|
157448
|
+
};
|
|
157449
|
+
requestBody: {
|
|
157450
|
+
content: {
|
|
157451
|
+
/**
|
|
157452
|
+
* @example {
|
|
157453
|
+
* "id": "0192f3a4-5b6c-7d8e-9f01-23456789abcd",
|
|
157454
|
+
* "type": "driver_live_status.trip_at_risk_started",
|
|
157455
|
+
* "version": 1,
|
|
157456
|
+
* "occurred_at": "2026-10-01T15:04:05Z",
|
|
157457
|
+
* "effective_at": "2026-10-01T15:04:05Z",
|
|
157458
|
+
* "tenant": 1,
|
|
157459
|
+
* "subject": {
|
|
157460
|
+
* "type": "user",
|
|
157461
|
+
* "id": 14
|
|
157462
|
+
* },
|
|
157463
|
+
* "sequence": 1,
|
|
157464
|
+
* "facts": {
|
|
157465
|
+
* "driver_user_id": 14,
|
|
157466
|
+
* "load_id": 3,
|
|
157467
|
+
* "stop_id": 3,
|
|
157468
|
+
* "minutes_late": null
|
|
157469
|
+
* },
|
|
157470
|
+
* "causation": {
|
|
157471
|
+
* "invocation_id": null,
|
|
157472
|
+
* "event_id": null,
|
|
157473
|
+
* "subscription_id": null
|
|
157474
|
+
* },
|
|
157475
|
+
* "chain_depth": 0,
|
|
157476
|
+
* "fetch": {
|
|
157477
|
+
* "operation": "drivers.live_status.list",
|
|
157478
|
+
* "input": {
|
|
157479
|
+
* "driver_user_ids": [
|
|
157480
|
+
* 14
|
|
157481
|
+
* ]
|
|
157482
|
+
* }
|
|
157483
|
+
* }
|
|
157484
|
+
* }
|
|
157485
|
+
*/
|
|
157486
|
+
"application/json": {
|
|
157487
|
+
/** @description Event id; the same on every delivery of this event. */
|
|
157488
|
+
id: string;
|
|
157489
|
+
/** @constant */
|
|
157490
|
+
type: "driver_live_status.trip_at_risk_started";
|
|
157491
|
+
/** @constant */
|
|
157492
|
+
version: 1;
|
|
157493
|
+
/** Format: date-time */
|
|
157494
|
+
occurred_at: string;
|
|
157495
|
+
/**
|
|
157496
|
+
* Format: date-time
|
|
157497
|
+
* @description When it counts operationally; differs from `occurred_at` for back-dated facts.
|
|
157498
|
+
*/
|
|
157499
|
+
effective_at: string;
|
|
157500
|
+
/** @description Workspace id. */
|
|
157501
|
+
tenant: number;
|
|
157502
|
+
subject: {
|
|
157503
|
+
type: string;
|
|
157504
|
+
id: number | string;
|
|
157505
|
+
};
|
|
157506
|
+
/** @description Increases per subject; apply events for one subject in this order. */
|
|
157507
|
+
sequence: number;
|
|
157508
|
+
facts: {
|
|
157509
|
+
driver_user_id: number;
|
|
157510
|
+
load_id: number;
|
|
157511
|
+
/** @description The first stop projected late or out of his hours. */
|
|
157512
|
+
stop_id: number;
|
|
157513
|
+
/** @description Null when the stop is out of his hours. */
|
|
157514
|
+
minutes_late?: number | null;
|
|
157515
|
+
};
|
|
157516
|
+
causation: {
|
|
157517
|
+
invocation_id?: string | null;
|
|
157518
|
+
event_id?: string | null;
|
|
157519
|
+
subscription_id?: number | null;
|
|
157520
|
+
};
|
|
157521
|
+
chain_depth: number;
|
|
157522
|
+
fetch: {
|
|
157523
|
+
operation?: string;
|
|
157524
|
+
input?: Record<string, never>;
|
|
157525
|
+
} | null;
|
|
157526
|
+
/** @description Present and `true` only on test sends. */
|
|
157527
|
+
test?: boolean;
|
|
157528
|
+
};
|
|
157529
|
+
};
|
|
157530
|
+
};
|
|
157531
|
+
responses: {
|
|
157532
|
+
/** @description Received. Any other answer, a redirect or no answer within 10 seconds fails the try. */
|
|
157533
|
+
"2XX": {
|
|
157534
|
+
headers: {
|
|
157535
|
+
[name: string]: unknown;
|
|
157536
|
+
};
|
|
157537
|
+
content?: never;
|
|
157538
|
+
};
|
|
157539
|
+
};
|
|
157540
|
+
};
|
|
156722
157541
|
"events.fleet.acquisition.started": {
|
|
156723
157542
|
parameters: {
|
|
156724
157543
|
query?: never;
|