2020-09-20 22:30:17 +02:00
|
|
|
type HttpRequestLog {
|
|
|
|
id: ID!
|
2020-02-23 22:07:46 +01:00
|
|
|
url: String!
|
|
|
|
method: HttpMethod!
|
2020-09-21 22:27:10 +02:00
|
|
|
proto: String!
|
2020-09-24 00:13:14 +02:00
|
|
|
headers: [HttpHeader!]!
|
2020-09-19 01:27:55 +02:00
|
|
|
body: String
|
2020-02-23 22:07:46 +01:00
|
|
|
timestamp: Time!
|
2020-09-20 22:30:17 +02:00
|
|
|
response: HttpResponseLog
|
2019-12-01 14:47:25 +01:00
|
|
|
}
|
|
|
|
|
2020-09-20 22:30:17 +02:00
|
|
|
type HttpResponseLog {
|
2022-02-22 14:10:39 +01:00
|
|
|
"""
|
|
|
|
Will be the same ID as its related request ID.
|
|
|
|
"""
|
|
|
|
id: ID!
|
|
|
|
proto: HttpProtocol!
|
2020-09-19 01:27:55 +02:00
|
|
|
statusCode: Int!
|
2020-10-05 18:34:41 +02:00
|
|
|
statusReason: String!
|
2020-09-19 01:27:55 +02:00
|
|
|
body: String
|
2020-09-24 00:13:14 +02:00
|
|
|
headers: [HttpHeader!]!
|
|
|
|
}
|
|
|
|
|
|
|
|
type HttpHeader {
|
|
|
|
key: String!
|
|
|
|
value: String!
|
2020-09-19 01:27:55 +02:00
|
|
|
}
|
2019-12-01 14:47:25 +01:00
|
|
|
|
2020-10-11 17:09:39 +02:00
|
|
|
type Project {
|
2022-01-21 11:45:54 +01:00
|
|
|
id: ID!
|
2020-10-11 17:09:39 +02:00
|
|
|
name: String!
|
|
|
|
isActive: Boolean!
|
|
|
|
}
|
|
|
|
|
2020-10-29 20:54:17 +01:00
|
|
|
type ScopeRule {
|
|
|
|
url: Regexp
|
|
|
|
header: ScopeHeader
|
|
|
|
body: Regexp
|
|
|
|
}
|
|
|
|
|
|
|
|
input ScopeRuleInput {
|
|
|
|
url: Regexp
|
|
|
|
header: ScopeHeaderInput
|
|
|
|
body: Regexp
|
|
|
|
}
|
|
|
|
|
|
|
|
type ScopeHeader {
|
|
|
|
key: Regexp
|
|
|
|
value: Regexp
|
|
|
|
}
|
|
|
|
|
|
|
|
input ScopeHeaderInput {
|
|
|
|
key: Regexp
|
|
|
|
value: Regexp
|
|
|
|
}
|
|
|
|
|
2020-10-11 17:09:39 +02:00
|
|
|
type CloseProjectResult {
|
|
|
|
success: Boolean!
|
|
|
|
}
|
|
|
|
|
|
|
|
type DeleteProjectResult {
|
|
|
|
success: Boolean!
|
|
|
|
}
|
|
|
|
|
2020-11-28 15:48:19 +01:00
|
|
|
type ClearHTTPRequestLogResult {
|
|
|
|
success: Boolean!
|
|
|
|
}
|
|
|
|
|
2022-02-22 14:10:39 +01:00
|
|
|
type DeleteSenderRequestsResult {
|
|
|
|
success: Boolean!
|
|
|
|
}
|
|
|
|
|
2020-10-29 20:54:17 +01:00
|
|
|
input HttpRequestLogFilterInput {
|
|
|
|
onlyInScope: Boolean
|
2020-12-21 12:50:09 +01:00
|
|
|
searchExpression: String
|
2020-10-29 20:54:17 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
type HttpRequestLogFilter {
|
|
|
|
onlyInScope: Boolean!
|
2020-12-21 12:50:09 +01:00
|
|
|
searchExpression: String
|
2020-10-29 20:54:17 +01:00
|
|
|
}
|
|
|
|
|
2022-02-22 14:10:39 +01:00
|
|
|
input SenderRequestInput {
|
|
|
|
id: ID
|
|
|
|
url: URL!
|
|
|
|
method: HttpMethod
|
|
|
|
proto: HttpProtocol
|
|
|
|
headers: [HttpHeaderInput!]
|
|
|
|
body: String
|
|
|
|
}
|
|
|
|
|
|
|
|
input HttpHeaderInput {
|
|
|
|
key: String!
|
|
|
|
value: String!
|
|
|
|
}
|
|
|
|
|
|
|
|
type SenderRequest {
|
|
|
|
id: ID!
|
|
|
|
sourceRequestLogID: ID
|
|
|
|
url: URL!
|
|
|
|
method: HttpMethod!
|
|
|
|
proto: HttpProtocol!
|
|
|
|
headers: [HttpHeader!]
|
|
|
|
body: String
|
|
|
|
timestamp: Time!
|
|
|
|
response: HttpResponseLog
|
|
|
|
}
|
|
|
|
|
|
|
|
input SenderRequestFilterInput {
|
|
|
|
onlyInScope: Boolean
|
|
|
|
searchExpression: String
|
|
|
|
}
|
|
|
|
|
|
|
|
type SenderRequestFilter {
|
|
|
|
onlyInScope: Boolean!
|
|
|
|
searchExpression: String
|
|
|
|
}
|
|
|
|
|
2019-12-01 14:47:25 +01:00
|
|
|
type Query {
|
2020-09-20 22:30:17 +02:00
|
|
|
httpRequestLog(id: ID!): HttpRequestLog
|
|
|
|
httpRequestLogs: [HttpRequestLog!]!
|
2020-10-29 20:54:17 +01:00
|
|
|
httpRequestLogFilter: HttpRequestLogFilter
|
2020-10-11 17:09:39 +02:00
|
|
|
activeProject: Project
|
|
|
|
projects: [Project!]!
|
2020-10-29 20:54:17 +01:00
|
|
|
scope: [ScopeRule!]!
|
2022-02-22 14:10:39 +01:00
|
|
|
senderRequest(id: ID!): SenderRequest
|
|
|
|
senderRequests: [SenderRequest!]!
|
2020-10-11 17:09:39 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
type Mutation {
|
2022-01-21 11:45:54 +01:00
|
|
|
createProject(name: String!): Project
|
|
|
|
openProject(id: ID!): Project
|
2020-10-11 17:09:39 +02:00
|
|
|
closeProject: CloseProjectResult!
|
2022-01-21 11:45:54 +01:00
|
|
|
deleteProject(id: ID!): DeleteProjectResult!
|
2020-11-28 15:48:19 +01:00
|
|
|
clearHTTPRequestLog: ClearHTTPRequestLogResult!
|
2020-10-29 20:54:17 +01:00
|
|
|
setScope(scope: [ScopeRuleInput!]!): [ScopeRule!]!
|
|
|
|
setHttpRequestLogFilter(
|
|
|
|
filter: HttpRequestLogFilterInput
|
|
|
|
): HttpRequestLogFilter
|
2022-02-22 14:10:39 +01:00
|
|
|
setSenderRequestFilter(filter: SenderRequestFilterInput): SenderRequestFilter
|
|
|
|
createOrUpdateSenderRequest(request: SenderRequestInput!): SenderRequest!
|
|
|
|
createSenderRequestFromHttpRequestLog(id: ID!): SenderRequest!
|
|
|
|
sendRequest(id: ID!): SenderRequest!
|
|
|
|
deleteSenderRequests: DeleteSenderRequestsResult!
|
2019-12-01 14:47:25 +01:00
|
|
|
}
|
|
|
|
|
2020-02-23 22:07:46 +01:00
|
|
|
enum HttpMethod {
|
|
|
|
GET
|
2020-09-19 01:27:55 +02:00
|
|
|
HEAD
|
2020-02-23 22:07:46 +01:00
|
|
|
POST
|
2020-09-19 01:27:55 +02:00
|
|
|
PUT
|
|
|
|
DELETE
|
|
|
|
CONNECT
|
|
|
|
OPTIONS
|
|
|
|
TRACE
|
|
|
|
PATCH
|
2019-12-01 14:47:25 +01:00
|
|
|
}
|
|
|
|
|
2022-02-22 14:10:39 +01:00
|
|
|
enum HttpProtocol {
|
|
|
|
HTTP1
|
|
|
|
HTTP2
|
|
|
|
}
|
|
|
|
|
2020-09-19 01:27:55 +02:00
|
|
|
scalar Time
|
2020-10-29 20:54:17 +01:00
|
|
|
scalar Regexp
|
2022-02-22 14:10:39 +01:00
|
|
|
scalar URL
|