Add latest changes from gitlab-org/gitlab@master
This commit is contained in:
parent
f84cdc5587
commit
ec05f6eb14
|
|
@ -103,7 +103,11 @@ Remove unnecessary spaces and text, and update the [deprecations doc's `.md` fil
|
|||
1. To double check that it worked, you can run `bin/rake gitlab:docs:check_deprecations`
|
||||
to verify that the doc is up to date.
|
||||
|
||||
1. Commit the updated file and push the changes.
|
||||
1. Update the `breaking_windows.md` file:
|
||||
|
||||
1. From the command line (in the branch), run `bin/rake gitlab:docs:compile_windows`.
|
||||
|
||||
1. Commit the updated files and push the changes.
|
||||
1. Set the merge request to auto-merge, or if the pipeline is already complete, merge.
|
||||
|
||||
If you have trouble running the Rake task, check the [troubleshooting steps](https://handbook.gitlab.com/handbook/marketing/blog/release-posts/#deprecation-rake-task-troubleshooting).
|
||||
|
|
|
|||
|
|
@ -1 +1 @@
|
|||
407cd29fa8d487dd48161357cbad23ea439873b9
|
||||
6ed17e45a50357b3cece084cd26e833bc3443089
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
<script>
|
||||
import { GlButton, GlAlert, GlTabs, GlTab, GlLink } from '@gitlab/ui';
|
||||
import { helpPagePath } from '~/helpers/help_page_helper';
|
||||
import TabTitle from './tab_title.vue';
|
||||
import MergeRequestsQuery from './merge_requests_query.vue';
|
||||
import CollapsibleSection from './collapsible_section.vue';
|
||||
|
|
@ -41,6 +42,7 @@ export default {
|
|||
.map((list) => ({ query: list.query, variables: list.variables }));
|
||||
},
|
||||
},
|
||||
docsPath: helpPagePath('/tutorials/merge_requests/homepage.html'),
|
||||
};
|
||||
</script>
|
||||
|
||||
|
|
@ -173,9 +175,13 @@ export default {
|
|||
</template>
|
||||
</gl-tabs>
|
||||
<div class="gl-mt-6 gl-text-center">
|
||||
<gl-link href="https://gitlab.com/gitlab-org/gitlab/-/issues/512314">
|
||||
<gl-link href="https://gitlab.com/gitlab-org/gitlab/-/issues/515912">
|
||||
{{ __('Leave feedback') }}
|
||||
</gl-link>
|
||||
<span class="gl-mx-2">|</span>
|
||||
<gl-link :href="$options.docsPath">
|
||||
{{ __('Documentation') }}
|
||||
</gl-link>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
|
|
|||
|
|
@ -216,7 +216,7 @@ export default {
|
|||
></textarea>
|
||||
<!-- eslint-enable vue/no-mutating-props -->
|
||||
<note-edited-text
|
||||
v-if="note.last_edited_at"
|
||||
v-if="note.last_edited_at && note.last_edited_at !== note.created_at"
|
||||
:edited-at="note.last_edited_at"
|
||||
:edited-by="note.last_edited_by"
|
||||
:action-text="__('Edited')"
|
||||
|
|
|
|||
|
|
@ -1,128 +0,0 @@
|
|||
<script>
|
||||
import { renderGFM } from '~/behaviors/markdown/render_gfm';
|
||||
import { convertToGraphQLId, getIdFromGraphQLId } from '~/graphql_shared/utils';
|
||||
import { TYPENAME_NOTE } from '~/graphql_shared/constants';
|
||||
import * as Sentry from '~/sentry/sentry_browser_wrapper';
|
||||
import SafeHtml from '~/vue_shared/directives/safe_html';
|
||||
import timeagoMixin from '~/vue_shared/mixins/timeago';
|
||||
import noteQuery from '../graphql/note.query.graphql';
|
||||
import NoteEditedText from './note_edited_text.vue';
|
||||
import NoteableNote from './noteable_note.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
NoteEditedText,
|
||||
NoteableNote,
|
||||
},
|
||||
directives: {
|
||||
SafeHtml,
|
||||
},
|
||||
mixins: [timeagoMixin],
|
||||
props: {
|
||||
noteId: {
|
||||
type: String,
|
||||
required: false,
|
||||
default: '',
|
||||
},
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
note: null,
|
||||
hidden: false,
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
showNote() {
|
||||
return this.note && !this.hidden && !this.isSyntheticNote;
|
||||
},
|
||||
showEdited() {
|
||||
return this.note && this.note.created_at !== this.note.last_edited_at;
|
||||
},
|
||||
isSyntheticNote() {
|
||||
return Boolean(this.noteId?.match(/([a-f0-9]{40})/));
|
||||
},
|
||||
noteHtml() {
|
||||
return this.note?.body_html;
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
async noteHtml() {
|
||||
try {
|
||||
await this.$nextTick();
|
||||
renderGFM(this.$refs.noteBody);
|
||||
} catch {
|
||||
this.fallback();
|
||||
}
|
||||
},
|
||||
},
|
||||
mounted() {
|
||||
if (this.isSyntheticNote) {
|
||||
this.fallback();
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
fallback() {
|
||||
this.hidden = true;
|
||||
},
|
||||
},
|
||||
apollo: {
|
||||
note: {
|
||||
skip() {
|
||||
return !this.noteId || this.isSyntheticNote;
|
||||
},
|
||||
query: noteQuery,
|
||||
variables() {
|
||||
return {
|
||||
id: convertToGraphQLId(TYPENAME_NOTE, this.noteId),
|
||||
};
|
||||
},
|
||||
update(data) {
|
||||
if (!data?.note) return null;
|
||||
return {
|
||||
...data.note,
|
||||
author: {
|
||||
...data.note.author,
|
||||
id: getIdFromGraphQLId(data.note.author.id),
|
||||
},
|
||||
last_edited_by: {
|
||||
...data.note.last_edited_by,
|
||||
id: getIdFromGraphQLId(data.note.last_edited_by?.id),
|
||||
},
|
||||
id: getIdFromGraphQLId(data.note.id),
|
||||
};
|
||||
},
|
||||
result(result) {
|
||||
if (result?.errors?.length > 0) {
|
||||
Sentry.captureException(result.errors[0].message);
|
||||
this.fallback();
|
||||
}
|
||||
|
||||
if (!result?.data?.note) {
|
||||
this.fallback();
|
||||
}
|
||||
},
|
||||
error(error) {
|
||||
Sentry.captureException(error);
|
||||
this.fallback();
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<noteable-note v-if="showNote" :id="`note_${noteId}`" :note="note" :show-reply-button="false">
|
||||
<template #note-body>
|
||||
<div ref="noteBody" class="note-body">
|
||||
<div v-safe-html:[$options.safeHtmlConfig]="noteHtml" class="note-text md"></div>
|
||||
<note-edited-text
|
||||
v-if="showEdited"
|
||||
:edited-at="note.last_edited_at"
|
||||
:edited-by="note.last_edited_by"
|
||||
:action-text="__('Edited')"
|
||||
class="note_edited_ago"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
</noteable-note>
|
||||
</template>
|
||||
|
|
@ -3,6 +3,9 @@
|
|||
import { mapGetters, mapActions } from 'vuex';
|
||||
import { v4 as uuidv4 } from 'uuid';
|
||||
import { InternalEvents } from '~/tracking';
|
||||
import { convertToGraphQLId, getIdFromGraphQLId } from '~/graphql_shared/utils';
|
||||
import { TYPENAME_NOTE } from '~/graphql_shared/constants';
|
||||
import * as Sentry from '~/sentry/sentry_browser_wrapper';
|
||||
import { getDraft, getAutoSaveKeyFromDiscussion } from '~/lib/utils/autosave';
|
||||
import highlightCurrentUser from '~/behaviors/markdown/highlight_current_user';
|
||||
import { scrollToTargetOnResize } from '~/lib/utils/resize_observer';
|
||||
|
|
@ -10,7 +13,6 @@ import TimelineEntryItem from '~/vue_shared/components/notes/timeline_entry_item
|
|||
import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||
import DraftNote from '~/batch_comments/components/draft_note.vue';
|
||||
import { getLocationHash } from '~/lib/utils/url_utility';
|
||||
import NotePreview from '~/notes/components/note_preview.vue';
|
||||
import PlaceholderNote from '~/vue_shared/components/notes/placeholder_note.vue';
|
||||
import PlaceholderSystemNote from '~/vue_shared/components/notes/placeholder_system_note.vue';
|
||||
import SkeletonLoadingContainer from '~/vue_shared/components/notes/skeleton_note.vue';
|
||||
|
|
@ -20,6 +22,7 @@ import { ISSUABLE_COMMENT_OR_REPLY, keysFor } from '~/behaviors/shortcuts/keybin
|
|||
import { CopyAsGFM } from '~/behaviors/markdown/copy_as_gfm';
|
||||
import * as constants from '../constants';
|
||||
import eventHub from '../event_hub';
|
||||
import noteQuery from '../graphql/note.query.graphql';
|
||||
import CommentForm from './comment_form.vue';
|
||||
import DiscussionFilterNote from './discussion_filter_note.vue';
|
||||
import NoteableDiscussion from './noteable_discussion.vue';
|
||||
|
|
@ -31,7 +34,6 @@ import NotesActivityHeader from './notes_activity_header.vue';
|
|||
export default {
|
||||
name: 'NotesApp',
|
||||
components: {
|
||||
NotePreview,
|
||||
NotesActivityHeader,
|
||||
NoteableNote,
|
||||
NoteableDiscussion,
|
||||
|
|
@ -88,8 +90,59 @@ export default {
|
|||
renderSkeleton: !this.shouldShow,
|
||||
aiLoading: null,
|
||||
isInitialEventTriggered: false,
|
||||
previewNote: null,
|
||||
};
|
||||
},
|
||||
apollo: {
|
||||
previewNote: {
|
||||
skip() {
|
||||
const notCommentId = Boolean(this.previewNoteId?.match(/([a-f0-9]{40})/));
|
||||
return !this.previewNoteId || notCommentId;
|
||||
},
|
||||
query: noteQuery,
|
||||
variables() {
|
||||
return {
|
||||
id: convertToGraphQLId(TYPENAME_NOTE, this.previewNoteId),
|
||||
};
|
||||
},
|
||||
update(data) {
|
||||
if (!data?.note?.discussion) return null;
|
||||
return {
|
||||
id: `${getIdFromGraphQLId(data.note.discussion.id)}`,
|
||||
expanded: true,
|
||||
notes: data.note.discussion.notes.nodes.map((note) => ({
|
||||
...note,
|
||||
id: `${getIdFromGraphQLId(note.id)}`,
|
||||
author: {
|
||||
...note.author,
|
||||
id: getIdFromGraphQLId(note.author.id),
|
||||
},
|
||||
award_emoji: note.award_emoji.nodes.map((emoji) => ({
|
||||
...emoji,
|
||||
id: getIdFromGraphQLId(emoji.id),
|
||||
user: {
|
||||
...emoji.user,
|
||||
id: getIdFromGraphQLId(emoji.user.id),
|
||||
},
|
||||
})),
|
||||
current_user: {
|
||||
can_award_emoji: note.userPermissions.awardEmoji,
|
||||
can_edit: note.userPermissions.adminNote,
|
||||
can_resolve_discussions: note.userPermissions.resolveNote,
|
||||
},
|
||||
last_edited_by: {
|
||||
...note.last_edited_by,
|
||||
id: getIdFromGraphQLId(note.last_edited_by?.id),
|
||||
},
|
||||
toggle_award_path: '',
|
||||
})),
|
||||
};
|
||||
},
|
||||
error(error) {
|
||||
Sentry.captureException(error);
|
||||
},
|
||||
},
|
||||
},
|
||||
computed: {
|
||||
...mapGetters([
|
||||
'isNotesFetched',
|
||||
|
|
@ -126,17 +179,12 @@ export default {
|
|||
});
|
||||
|
||||
if (
|
||||
this.previewNoteId &&
|
||||
this.previewNote &&
|
||||
!this.discussions.find((d) => d.notes[0].id === this.previewNoteId)
|
||||
) {
|
||||
const previewNote = {
|
||||
id: this.previewNoteId,
|
||||
isPreviewNote: true,
|
||||
};
|
||||
skeletonNotes.splice(prerenderedNotesCount / 2, 0, previewNote);
|
||||
skeletonNotes.splice(prerenderedNotesCount / 2, 0, this.previewNote);
|
||||
}
|
||||
}
|
||||
|
||||
if (this.sortDirDesc) {
|
||||
return skeletonNotes.concat(this.discussions);
|
||||
}
|
||||
|
|
@ -190,6 +238,8 @@ export default {
|
|||
});
|
||||
}
|
||||
|
||||
scrollToTargetOnResize();
|
||||
|
||||
eventHub.$on('noteFormAddToReview', this.handleReviewTracking);
|
||||
eventHub.$on('noteFormStartReview', this.handleReviewTracking);
|
||||
|
||||
|
|
@ -338,13 +388,6 @@ export default {
|
|||
:key="discussion.id"
|
||||
class="note-skeleton"
|
||||
/>
|
||||
<timeline-entry-item
|
||||
v-else-if="discussion.isPreviewNote"
|
||||
:key="discussion.id"
|
||||
class="target note note-wrapper note-comment"
|
||||
>
|
||||
<note-preview :note-id="previewNoteId" />
|
||||
</timeline-entry-item>
|
||||
<timeline-entry-item v-else-if="discussion.isDraft" :key="discussion.id">
|
||||
<draft-note :draft="discussion" />
|
||||
</timeline-entry-item>
|
||||
|
|
|
|||
|
|
@ -1,26 +1,52 @@
|
|||
query snakeCaseNote($id: NoteID!) {
|
||||
note(id: $id) {
|
||||
id
|
||||
author {
|
||||
discussion {
|
||||
id
|
||||
avatar_url: avatarUrl
|
||||
name
|
||||
username
|
||||
web_url: webUrl
|
||||
web_path: webPath
|
||||
notes {
|
||||
nodes {
|
||||
id
|
||||
author {
|
||||
id
|
||||
avatar_url: avatarUrl
|
||||
name
|
||||
username
|
||||
web_url: webUrl
|
||||
web_path: webPath
|
||||
}
|
||||
award_emoji: awardEmoji {
|
||||
nodes {
|
||||
emoji
|
||||
name
|
||||
user {
|
||||
id
|
||||
username
|
||||
name
|
||||
}
|
||||
}
|
||||
}
|
||||
note_html: bodyHtml
|
||||
created_at: createdAt
|
||||
last_edited_at: lastEditedAt
|
||||
last_edited_by: lastEditedBy {
|
||||
id
|
||||
avatar_url: avatarUrl
|
||||
name
|
||||
username
|
||||
web_url: webUrl
|
||||
web_path: webPath
|
||||
}
|
||||
internal
|
||||
url
|
||||
userPermissions {
|
||||
awardEmoji
|
||||
adminNote
|
||||
readNote
|
||||
createNote
|
||||
resolveNote
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
body_html: bodyHtml
|
||||
created_at: createdAt
|
||||
last_edited_at: lastEditedAt
|
||||
last_edited_by: lastEditedBy {
|
||||
id
|
||||
avatar_url: avatarUrl
|
||||
name
|
||||
username
|
||||
web_url: webUrl
|
||||
web_path: webPath
|
||||
}
|
||||
internal
|
||||
url
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
import { initSimpleApp } from '~/helpers/init_simple_app_helper';
|
||||
import PromoteRun from '~/ml/experiment_tracking/routes/candidates/promote/promote_run.vue';
|
||||
|
||||
initSimpleApp('#js-promote-ml-candidate', PromoteRun, { withApolloProvider: true });
|
||||
initSimpleApp('#js-promote-ml-candidate', PromoteRun, {
|
||||
withApolloProvider: true,
|
||||
name: 'PromoteRun',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
import { initSimpleApp } from '~/helpers/init_simple_app_helper';
|
||||
import MlCandidateShow from '~/ml/experiment_tracking/routes/candidates/show';
|
||||
|
||||
initSimpleApp('#js-show-ml-candidate', MlCandidateShow);
|
||||
initSimpleApp('#js-show-ml-candidate', MlCandidateShow, { name: 'MlCandidateShow' });
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ const initIndexMlExperiments = () => {
|
|||
|
||||
return new Vue({
|
||||
el: element,
|
||||
name: 'MlExperimentsIndexApp',
|
||||
render(h) {
|
||||
return h(MlExperimentsIndex, { props });
|
||||
},
|
||||
|
|
|
|||
|
|
@ -42,6 +42,7 @@ const initShowExperiment = () => {
|
|||
|
||||
return new Vue({
|
||||
el: element,
|
||||
name: 'MlExperimentsShow',
|
||||
apolloProvider,
|
||||
render(h) {
|
||||
return h(MlExperimentsShow, { props });
|
||||
|
|
|
|||
|
|
@ -5,4 +5,7 @@ import { EditMlModelVersion } from '~/ml/model_registry/apps';
|
|||
|
||||
Vue.use(VueRouter);
|
||||
|
||||
initSimpleApp('#js-mount-edit-ml-model-version', EditMlModelVersion, { withApolloProvider: true });
|
||||
initSimpleApp('#js-mount-edit-ml-model-version', EditMlModelVersion, {
|
||||
withApolloProvider: true,
|
||||
name: 'EditMlModelVersion',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
import { initSimpleApp } from '~/helpers/init_simple_app_helper';
|
||||
import { NewMlModelVersion } from '~/ml/model_registry/apps';
|
||||
|
||||
initSimpleApp('#js-mount-new-ml-model-version', NewMlModelVersion, { withApolloProvider: true });
|
||||
initSimpleApp('#js-mount-new-ml-model-version', NewMlModelVersion, {
|
||||
withApolloProvider: true,
|
||||
name: 'NewMlModelVersion',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -5,4 +5,7 @@ import { ShowMlModelVersion } from '~/ml/model_registry/apps';
|
|||
|
||||
Vue.use(VueRouter);
|
||||
|
||||
initSimpleApp('#js-mount-show-ml-model-version', ShowMlModelVersion, { withApolloProvider: true });
|
||||
initSimpleApp('#js-mount-show-ml-model-version', ShowMlModelVersion, {
|
||||
withApolloProvider: true,
|
||||
name: 'ShowMlModelVersion',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -5,4 +5,7 @@ import { EditMlModel } from '~/ml/model_registry/apps';
|
|||
|
||||
Vue.use(VueRouter);
|
||||
|
||||
initSimpleApp('#js-mount-edit-ml-model', EditMlModel, { withApolloProvider: true });
|
||||
initSimpleApp('#js-mount-edit-ml-model', EditMlModel, {
|
||||
withApolloProvider: true,
|
||||
name: 'EditMlModel',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -1,4 +1,7 @@
|
|||
import { initSimpleApp } from '~/helpers/init_simple_app_helper';
|
||||
import { NewMlModel } from '~/ml/model_registry/apps';
|
||||
|
||||
initSimpleApp('#js-mount-new-ml-model', NewMlModel, { withApolloProvider: true });
|
||||
initSimpleApp('#js-mount-new-ml-model', NewMlModel, {
|
||||
withApolloProvider: true,
|
||||
name: 'NewMlModel',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -5,4 +5,7 @@ import { ShowMlModel } from '~/ml/model_registry/apps';
|
|||
|
||||
Vue.use(VueRouter);
|
||||
|
||||
initSimpleApp('#js-mount-show-ml-model', ShowMlModel, { withApolloProvider: true });
|
||||
initSimpleApp('#js-mount-show-ml-model', ShowMlModel, {
|
||||
withApolloProvider: true,
|
||||
name: 'ShowMlModel',
|
||||
});
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import CommitChangesModal from './commit_changes_modal.vue';
|
|||
|
||||
const DIR_LABEL = __('Directory name');
|
||||
const ERROR_MESSAGE = __('Error creating new directory. Please try again.');
|
||||
const COMMIT_MESSSAGE = __('Add new directory');
|
||||
const COMMIT_MESSAGE = __('Add new directory');
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
|
@ -20,7 +20,7 @@ export default {
|
|||
i18n: {
|
||||
DIR_LABEL,
|
||||
ERROR_MESSAGE,
|
||||
COMMIT_MESSSAGE,
|
||||
COMMIT_MESSAGE,
|
||||
},
|
||||
props: {
|
||||
modalId: {
|
||||
|
|
@ -95,7 +95,7 @@ export default {
|
|||
:modal-id="modalId"
|
||||
:can-push-code="canPushCode"
|
||||
:can-push-to-branch="canPushToBranch"
|
||||
:commit-message="$options.i18n.COMMIT_MESSSAGE"
|
||||
:commit-message="$options.i18n.COMMIT_MESSAGE"
|
||||
:target-branch="targetBranch"
|
||||
:original-branch="originalBranch"
|
||||
v-on="$listeners"
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@ import { clearDraft } from '~/lib/utils/autosave';
|
|||
import { findWidget } from '~/issues/list/utils';
|
||||
import DiscussionReplyPlaceholder from '~/notes/components/discussion_reply_placeholder.vue';
|
||||
import ResolveDiscussionButton from '~/notes/components/discussion_resolve_button.vue';
|
||||
import { updateCacheAfterCreatingNote } from '../../graphql/cache_utils';
|
||||
import createNoteMutation from '../../graphql/notes/create_work_item_note.mutation.graphql';
|
||||
import workItemNotesByIidQuery from '../../graphql/notes/work_item_notes_by_iid.query.graphql';
|
||||
import workItemByIidQuery from '../../graphql/work_item_by_iid.query.graphql';
|
||||
import { TRACKING_CATEGORY_SHOW, WIDGET_TYPE_EMAIL_PARTICIPANTS, i18n } from '../../constants';
|
||||
import WorkItemNoteSignedOut from './work_item_note_signed_out.vue';
|
||||
|
|
@ -276,11 +278,27 @@ export default {
|
|||
this.isEditing = true;
|
||||
this.$emit('startReplying');
|
||||
},
|
||||
onNoteUpdate(store, createNoteData) {
|
||||
const numErrors = createNoteData.data?.createNote?.errors?.length;
|
||||
addDiscussionToCache(cache, newNote) {
|
||||
const queryArgs = {
|
||||
query: workItemNotesByIidQuery,
|
||||
variables: { fullPath: this.fullPath, iid: this.workItemIid },
|
||||
};
|
||||
const sourceData = cache.readQuery(queryArgs);
|
||||
if (!sourceData) {
|
||||
return;
|
||||
}
|
||||
cache.writeQuery({
|
||||
...queryArgs,
|
||||
data: updateCacheAfterCreatingNote(sourceData, newNote),
|
||||
});
|
||||
},
|
||||
onNoteUpdate(cache, { data }) {
|
||||
this.addDiscussionToCache(cache, data.createNote.note);
|
||||
|
||||
const numErrors = data?.createNote?.errors?.length;
|
||||
|
||||
if (numErrors) {
|
||||
const { errors } = createNoteData.data.createNote;
|
||||
const { errors } = data.createNote;
|
||||
|
||||
// TODO: https://gitlab.com/gitlab-org/gitlab/-/issues/503600
|
||||
// Refetching widgets as a temporary solution for dynamic updates
|
||||
|
|
@ -304,7 +322,7 @@ export default {
|
|||
return;
|
||||
}
|
||||
|
||||
throw new Error(createNoteData.data?.createNote?.errors[0]);
|
||||
throw new Error(data?.createNote?.errors[0]);
|
||||
}
|
||||
},
|
||||
},
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import { WORKSPACE_PROJECT } from '~/issues/constants';
|
|||
import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue';
|
||||
import ConfidentialityBadge from '~/vue_shared/components/confidentiality_badge.vue';
|
||||
import workItemByIidQuery from '../graphql/work_item_by_iid.query.graphql';
|
||||
import { isNotesWidget } from '../utils';
|
||||
import { findNotesWidget } from '../utils';
|
||||
import WorkItemStateBadge from './work_item_state_badge.vue';
|
||||
import WorkItemTypeIcon from './work_item_type_icon.vue';
|
||||
|
||||
|
|
@ -57,7 +57,7 @@ export default {
|
|||
return this.workItem?.workItemType?.iconName;
|
||||
},
|
||||
isDiscussionLocked() {
|
||||
return this.workItem?.widgets?.find(isNotesWidget)?.discussionLocked;
|
||||
return findNotesWidget(this.workItem)?.discussionLocked;
|
||||
},
|
||||
isWorkItemConfidential() {
|
||||
return this.workItem?.confidential;
|
||||
|
|
|
|||
|
|
@ -307,8 +307,8 @@ export default {
|
|||
subscribeToMore: [
|
||||
{
|
||||
document: workItemNoteCreatedSubscription,
|
||||
updateQuery(previousResult, { subscriptionData }) {
|
||||
return updateCacheAfterCreatingNote(previousResult, subscriptionData);
|
||||
updateQuery(previousResult, { subscriptionData: { data } }) {
|
||||
return updateCacheAfterCreatingNote(previousResult, data?.workItemNoteCreated);
|
||||
},
|
||||
variables() {
|
||||
return {
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import LockedBadge from '~/issuable/components/locked_badge.vue';
|
|||
import { WORKSPACE_PROJECT } from '~/issues/constants';
|
||||
import ConfidentialityBadge from '~/vue_shared/components/confidentiality_badge.vue';
|
||||
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
|
||||
import { isNotesWidget } from '../utils';
|
||||
import { findNotesWidget } from '../utils';
|
||||
import WorkItemActions from './work_item_actions.vue';
|
||||
import TodosToggle from './shared/todos_toggle.vue';
|
||||
import WorkItemStateBadge from './work_item_state_badge.vue';
|
||||
|
|
@ -107,7 +107,7 @@ export default {
|
|||
return this.workItem.userPermissions?.reportSpam;
|
||||
},
|
||||
isDiscussionLocked() {
|
||||
return this.workItem.widgets?.find(isNotesWidget)?.discussionLocked;
|
||||
return findNotesWidget(this.workItem)?.discussionLocked;
|
||||
},
|
||||
workItemType() {
|
||||
return this.workItem.workItemType?.name;
|
||||
|
|
|
|||
|
|
@ -12,10 +12,11 @@ import { findWidget } from '~/issues/list/utils';
|
|||
import {
|
||||
findHierarchyWidgets,
|
||||
findHierarchyWidgetChildren,
|
||||
findNotesWidget,
|
||||
getNewWorkItemAutoSaveKey,
|
||||
isNotesWidget,
|
||||
newWorkItemFullPath,
|
||||
newWorkItemId,
|
||||
getNewWorkItemAutoSaveKey,
|
||||
} from '../utils';
|
||||
import {
|
||||
WIDGET_TYPE_ASSIGNEES,
|
||||
|
|
@ -41,8 +42,7 @@ import workItemByIidQuery from './work_item_by_iid.query.graphql';
|
|||
import workItemByIdQuery from './work_item_by_id.query.graphql';
|
||||
import getWorkItemTreeQuery from './work_item_tree.query.graphql';
|
||||
|
||||
const getNotesWidgetFromSourceData = (draftData) =>
|
||||
draftData?.workspace?.workItem?.widgets.find(isNotesWidget);
|
||||
const getNotesWidgetFromSourceData = (draftData) => findNotesWidget(draftData?.workspace?.workItem);
|
||||
|
||||
const updateNotesWidgetDataInDraftData = (draftData, notesWidget) => {
|
||||
const noteWidgetIndex = draftData.workspace.workItem.widgets.findIndex(isNotesWidget);
|
||||
|
|
@ -53,13 +53,12 @@ const updateNotesWidgetDataInDraftData = (draftData, notesWidget) => {
|
|||
* Work Item note create subscription update query callback
|
||||
*
|
||||
* @param currentNotes
|
||||
* @param subscriptionData
|
||||
* @param newNote
|
||||
*/
|
||||
export const updateCacheAfterCreatingNote = (currentNotes, subscriptionData) => {
|
||||
if (!subscriptionData.data?.workItemNoteCreated) {
|
||||
export const updateCacheAfterCreatingNote = (currentNotes, newNote) => {
|
||||
if (!newNote) {
|
||||
return currentNotes;
|
||||
}
|
||||
const newNote = subscriptionData.data.workItemNoteCreated;
|
||||
|
||||
return produce(currentNotes, (draftData) => {
|
||||
const notesWidget = getNotesWidgetFromSourceData(draftData);
|
||||
|
|
|
|||
|
|
@ -48,6 +48,9 @@ export const findHierarchyWidgets = (widgets) =>
|
|||
export const findLinkedItemsWidget = (workItem) =>
|
||||
workItem.widgets?.find((widget) => widget.type === WIDGET_TYPE_LINKED_ITEMS);
|
||||
|
||||
export const findNotesWidget = (workItem) =>
|
||||
workItem?.widgets?.find((widget) => widget.type === WIDGET_TYPE_NOTES);
|
||||
|
||||
export const findStartAndDueDateWidget = (workItem) =>
|
||||
workItem.widgets?.find((widget) => widget.type === WIDGET_TYPE_START_AND_DUE_DATE);
|
||||
|
||||
|
|
|
|||
|
|
@ -12,6 +12,9 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
|
|||
|
||||
before_action :add_gon_variables
|
||||
before_action :verify_confirmed_email!, :verify_admin_allowed!
|
||||
# rubocop: disable Rails/LexicallyScopedActionFilter -- :create is defined in Doorkeeper::AuthorizationsController
|
||||
after_action :audit_oauth_authorization, only: [:create]
|
||||
# rubocop: enable Rails/LexicallyScopedActionFilter
|
||||
|
||||
layout 'minimal'
|
||||
|
||||
|
|
@ -37,6 +40,26 @@ class Oauth::AuthorizationsController < Doorkeeper::AuthorizationsController
|
|||
|
||||
private
|
||||
|
||||
def audit_oauth_authorization
|
||||
return unless performed? && (response.successful? || response.redirect?) && pre_auth&.client
|
||||
|
||||
application = pre_auth.client.application
|
||||
|
||||
Gitlab::Audit::Auditor.audit(
|
||||
name: 'user_authorized_oauth_application',
|
||||
author: current_user,
|
||||
scope: current_user,
|
||||
target: application,
|
||||
message: 'User authorized an OAuth application.',
|
||||
additional_details: {
|
||||
application_name: application.name,
|
||||
application_id: application.id,
|
||||
scopes: application.scopes.to_a
|
||||
},
|
||||
ip_address: request.remote_ip
|
||||
)
|
||||
end
|
||||
|
||||
# Chrome blocks redirections if the form-action CSP directive is present
|
||||
# and the redirect location's scheme isn't allow-listed
|
||||
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/form-action
|
||||
|
|
|
|||
|
|
@ -306,7 +306,7 @@ module SearchHelper
|
|||
# Autocomplete results for internal help pages
|
||||
def help_autocomplete
|
||||
[
|
||||
{ category: "Help", label: _("API Help"), url: help_page_path("api/index.md") },
|
||||
{ category: "Help", label: _("API Help"), url: help_page_path("api/_index.md") },
|
||||
{ category: "Help", label: _("Markdown Help"), url: help_page_path("user/markdown.md") },
|
||||
{ category: "Help", label: _("Permissions Help"), url: help_page_path("user/permissions.md") },
|
||||
{ category: "Help", label: _("Public Access Help"), url: help_page_path("user/public_access.md") },
|
||||
|
|
|
|||
|
|
@ -407,8 +407,6 @@ class User < ApplicationRecord
|
|||
update_invalid_gpg_signatures if previous_changes.key?('email')
|
||||
end
|
||||
|
||||
after_create_commit :create_default_organization_user
|
||||
|
||||
# User's Layout preference
|
||||
enum layout: { fixed: 0, fluid: 1 }
|
||||
|
||||
|
|
@ -2906,12 +2904,6 @@ class User < ApplicationRecord
|
|||
FEED_TOKEN_PREFIX
|
||||
end
|
||||
|
||||
def create_default_organization_user
|
||||
return unless organizations.blank?
|
||||
|
||||
Organizations::OrganizationUser.create_default_organization_record_for(id, user_is_admin: admin?)
|
||||
end
|
||||
|
||||
# method overridden in EE
|
||||
def audit_lock_access(reason: nil); end
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,10 @@
|
|||
---
|
||||
name: user_authorized_oauth_application
|
||||
description: User authorized an OAuth application
|
||||
introduced_by_issue: https://gitlab.com/gitlab-org/gitlab/-/issues/514152
|
||||
introduced_by_mr: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/179187
|
||||
feature_category: authorization
|
||||
milestone: '17.9'
|
||||
saved_to_database: true
|
||||
streamed: true
|
||||
scope: [User]
|
||||
|
|
@ -2,7 +2,7 @@
|
|||
name: kubernetes_agent_protected_branches
|
||||
feature_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/388323
|
||||
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/156626
|
||||
rollout_issue_url:
|
||||
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/517093
|
||||
milestone: '17.3'
|
||||
group: group::environments
|
||||
type: beta
|
||||
|
|
|
|||
|
|
@ -0,0 +1,14 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class AddIssueLinksNamespaceIdNotNullConstraint < Gitlab::Database::Migration[2.2]
|
||||
disable_ddl_transaction!
|
||||
milestone '17.9'
|
||||
|
||||
def up
|
||||
add_not_null_constraint :issue_links, :namespace_id, validate: false
|
||||
end
|
||||
|
||||
def down
|
||||
remove_not_null_constraint :issue_links, :namespace_id
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
# frozen_string_literal: true
|
||||
|
||||
class PrepareIssueLinksNamespaceIdNotNullValidation < Gitlab::Database::Migration[2.2]
|
||||
disable_ddl_transaction!
|
||||
milestone '17.9'
|
||||
|
||||
CONSTRAINT_NAME = :check_c32f659c75
|
||||
|
||||
def up
|
||||
prepare_async_check_constraint_validation :issue_links, name: CONSTRAINT_NAME
|
||||
end
|
||||
|
||||
def down
|
||||
unprepare_async_check_constraint_validation :issue_links, name: CONSTRAINT_NAME
|
||||
end
|
||||
end
|
||||
|
|
@ -0,0 +1 @@
|
|||
32cab72195ae23011eda790012178d79cc1bc68a34463ec1d54478093b6b3803
|
||||
|
|
@ -0,0 +1 @@
|
|||
16e2a5b053c6633a4319e262bf3e9616a2f4fbfa9d4df98791efd1807f60edcf
|
||||
|
|
@ -26738,6 +26738,9 @@ ALTER TABLE approval_merge_request_rules
|
|||
ALTER TABLE sbom_occurrences_vulnerabilities
|
||||
ADD CONSTRAINT check_a02e48df9c CHECK ((project_id IS NOT NULL)) NOT VALID;
|
||||
|
||||
ALTER TABLE issue_links
|
||||
ADD CONSTRAINT check_c32f659c75 CHECK ((namespace_id IS NOT NULL)) NOT VALID;
|
||||
|
||||
ALTER TABLE sprints
|
||||
ADD CONSTRAINT check_ccd8a1eae0 CHECK ((start_date IS NOT NULL)) NOT VALID;
|
||||
|
||||
|
|
|
|||
|
|
@ -256,7 +256,7 @@ You can make changes to your default rate limits from the **Admin** area. For mo
|
|||
- Review the [rate limit on raw endpoints](settings/rate_limits_on_raw_endpoints.md). The default setting is 300 requests per minute for raw file access.
|
||||
- Review the [import/export rate limits](settings/import_export_rate_limits.md) of the six active defaults.
|
||||
|
||||
For more information about API and rate limits, see our [API page](../api/rest/index.md).
|
||||
For more information about API and rate limits, see our [API page](../api/rest/_index.md).
|
||||
|
||||
## API and rate limits for GitLab SaaS
|
||||
|
||||
|
|
@ -270,7 +270,7 @@ Rate limits also improve the security of your application.
|
|||
You can make changes to your default rate limits from the **Admin** area. For more information about configuration, see the [**Admin** area page](../security/rate_limits.md#configurable-limits).
|
||||
|
||||
- Review the rate limit page.
|
||||
- Read our [API page](../api/rest/index.md) for more information about API and rate limiting.
|
||||
- Read our [API page](../api/rest/_index.md) for more information about API and rate limiting.
|
||||
|
||||
### GitLab SaaS-specific block and error responses
|
||||
|
||||
|
|
|
|||
|
|
@ -391,7 +391,7 @@ and to limit memory consumption.
|
|||
When using offset-based pagination in the REST API, there is a limit to the maximum
|
||||
requested offset into the set of results. This limit is only applied to endpoints that
|
||||
also support keyset-based pagination. More information about pagination options can be
|
||||
found in the [API documentation section on pagination](../api/rest/index.md#pagination).
|
||||
found in the [API documentation section on pagination](../api/rest/_index.md#pagination).
|
||||
|
||||
To set this limit for a GitLab Self-Managed instance, run the following in the
|
||||
[GitLab Rails console](operations/rails_console.md#starting-a-rails-console-session):
|
||||
|
|
|
|||
|
|
@ -2,13 +2,12 @@
|
|||
stage: Foundations
|
||||
group: Import and Integrate
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Extend with GitLab
|
||||
---
|
||||
|
||||
# Extend with GitLab
|
||||
|
||||
Automate with GitLab and integrate with external applications.
|
||||
|
||||
| | | |
|
||||
|--|--|--|
|
||||
| [**Integrate with GitLab**](../integration/index.md)<br>Projects, issues, authentication, security providers. | [**Webhooks**](../user/project/integrations/webhooks.md)<br>Custom HTTP callbacks, used to send events. | [**REST API**](rest/index.md)<br>Programmatic interaction with GitLab. |
|
||||
| [**GraphQL API**](graphql/index.md)<br>Programmatic interaction with GitLab. | [**OAuth 2.0 identity provider API**](oauth2.md)<br>Third-party authorization to GitLab. | [**Editor and IDE extensions**](../editor_extensions/_index.md)<br>Visual Studio Code, JetBrains, Neovim, GitLab CLI. |
|
||||
| [**Integrate with GitLab**](../integration/index.md)<br>Projects, issues, authentication, security providers. | [**Webhooks**](../user/project/integrations/webhooks.md)<br>Custom HTTP callbacks, used to send events. | [**REST API**](rest/_index.md)<br>Programmatic interaction with GitLab. |
|
||||
| [**GraphQL API**](graphql/_index.md)<br>Programmatic interaction with GitLab. | [**OAuth 2.0 identity provider API**](oauth2.md)<br>Third-party authorization to GitLab. | [**Editor and IDE extensions**](../editor_extensions/_index.md)<br>Visual Studio Code, JetBrains, Neovim, GitLab CLI. |
|
||||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments"
|
||||
title: Group and project access requests API
|
||||
---
|
||||
|
||||
# Group and project access requests API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -37,7 +36,7 @@ GET /projects/:id/access_requests
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
|
||||
Example request:
|
||||
|
||||
|
|
@ -86,7 +85,7 @@ POST /projects/:id/access_requests
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group or project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group or project](rest/_index.md#namespaced-paths) |
|
||||
|
||||
Example request:
|
||||
|
||||
|
|
@ -121,7 +120,7 @@ PUT /projects/:id/access_requests/:user_id/approve
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|----------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `user_id` | integer | yes | The user ID of the access requester |
|
||||
| `access_level` | integer | no | A valid access level (defaults: `30`, the Developer role) |
|
||||
|
||||
|
|
@ -158,7 +157,7 @@ DELETE /projects/:id/access_requests/:user_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `user_id` | integer | yes | The user ID of the access requester |
|
||||
|
||||
Example request:
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Software Supply Chain Security
|
|||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
description: "Documentation for the REST API that exposes token information."
|
||||
title: Token information API
|
||||
---
|
||||
|
||||
# Token information API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed
|
||||
|
|
@ -38,7 +37,7 @@ Prerequisites:
|
|||
Gets information for a given token. This endpoint supports the following tokens:
|
||||
|
||||
- [Personal access tokens](../../user/profile/personal_access_tokens.md)
|
||||
- [Impersonation tokens](../../api/rest/authentication.md#impersonation-tokens)
|
||||
- [Impersonation tokens](../rest/authentication.md#impersonation-tokens)
|
||||
- [Deploy tokens](../../user/project/deploy_tokens/index.md)
|
||||
- [Feed tokens](../../security/tokens/_index.md#feed-token)
|
||||
- [OAuth application secrets](../../integration/oauth_provider.md)
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Systems
|
||||
group: Distribution
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Sidekiq queues administration API
|
||||
---
|
||||
|
||||
# Sidekiq queues administration API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Monitor
|
||||
group: Platform Insights
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Alert Management alerts API
|
||||
---
|
||||
|
||||
# Alert Management alerts API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -21,7 +20,7 @@ POST /projects/:id/alert_management_alerts/:alert_iid/metric_images
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -55,7 +54,7 @@ GET /projects/:id/alert_management_alerts/:alert_iid/metric_images
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -96,7 +95,7 @@ PUT /projects/:id/alert_management_alerts/:alert_iid/metric_images/:image_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||||
| `image_id` | integer | yes | The ID of the image. |
|
||||
| `url` | string | no | The URL to view more metrics information. |
|
||||
|
|
@ -132,7 +131,7 @@ DELETE /projects/:id/alert_management_alerts/:alert_iid/metric_images/:image_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `alert_iid` | integer | yes | The internal ID of a project's alert. |
|
||||
| `image_id` | integer | yes | The ID of the image. |
|
||||
|
||||
|
|
|
|||
|
|
@ -2,15 +2,14 @@
|
|||
stage: Foundations
|
||||
group: Import and Integrate
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: REST API resources
|
||||
---
|
||||
|
||||
# REST API resources
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
||||
Available resources for the [GitLab REST API](index.md) can be grouped in the following contexts:
|
||||
Available resources for the [GitLab REST API](_index.md) can be grouped in the following contexts:
|
||||
|
||||
- [Projects](#project-resources)
|
||||
- [Groups](#group-resources)
|
||||
|
|
@ -100,7 +99,7 @@ The following API resources are available in the project context:
|
|||
| [Protected tags](protected_tags.md) | `/projects/:id/protected_tags` |
|
||||
| [PyPI packages](packages/pypi.md) | `/projects/:id/packages/pypi` (also available for groups) |
|
||||
| [Release links](releases/links.md) | `/projects/:id/releases/.../assets/links` |
|
||||
| [Releases](releases/index.md) | `/projects/:id/releases` |
|
||||
| [Releases](releases/_index.md) | `/projects/:id/releases` |
|
||||
| [Remote mirrors](remote_mirrors.md) | `/projects/:id/remote_mirrors` |
|
||||
| [Repositories](repositories.md) | `/projects/:id/repository` |
|
||||
| [Repository files](repository_files.md) | `/projects/:id/repository/files` |
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Application appearance API
|
||||
---
|
||||
|
||||
# Application appearance API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Applications API
|
||||
---
|
||||
|
||||
# Applications API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Compliance
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Audit events API
|
||||
---
|
||||
|
||||
# Audit events API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -38,10 +37,10 @@ GET /audit_events
|
|||
| `entity_type` | string | no | Return audit events for the given entity type. Valid values are: `User`, `Group`, `Project`, or `Gitlab::Audit::InstanceScope`. |
|
||||
| `entity_id` | integer | no | Return audit events for the given entity ID. Requires `entity_type` attribute to be present. |
|
||||
|
||||
This endpoint supports both offset-based and [keyset-based](rest/index.md#keyset-based-pagination) pagination. You should use keyset-based
|
||||
This endpoint supports both offset-based and [keyset-based](rest/_index.md#keyset-based-pagination) pagination. You should use keyset-based
|
||||
pagination when requesting consecutive pages of results.
|
||||
|
||||
Read more on [pagination](rest/index.md#pagination).
|
||||
Read more on [pagination](rest/_index.md#pagination).
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/audit_events"
|
||||
|
|
@ -178,7 +177,7 @@ A user with:
|
|||
- The Owner role can retrieve group audit events of all users.
|
||||
- The Developer or Maintainer role is limited to group audit events based on their individual actions.
|
||||
|
||||
This endpoint supports both offset-based and [keyset-based](rest/index.md#keyset-based-pagination) pagination. Keyset-based
|
||||
This endpoint supports both offset-based and [keyset-based](rest/_index.md#keyset-based-pagination) pagination. Keyset-based
|
||||
pagination is recommended when requesting consecutive pages of results.
|
||||
|
||||
### Retrieve all group audit events
|
||||
|
|
@ -191,14 +190,14 @@ GET /groups/:id/audit_events
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `created_after` | string | no | Return group audit events created on or after the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ)` |
|
||||
| `created_before` | string | no | Return group audit events created on or before the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) |
|
||||
|
||||
By default, `GET` requests return 20 results at a time because the API results
|
||||
are paginated.
|
||||
|
||||
Read more on [pagination](rest/index.md#pagination).
|
||||
Read more on [pagination](rest/_index.md#pagination).
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/groups/60/audit_events"
|
||||
|
|
@ -255,7 +254,7 @@ GET /groups/:id/audit_events/:audit_event_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `audit_event_id` | integer | yes | The ID of the audit event |
|
||||
|
||||
```shell
|
||||
|
|
@ -301,14 +300,14 @@ GET /projects/:id/audit_events
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `created_after` | string | no | Return project audit events created on or after the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) |
|
||||
| `created_before` | string | no | Return project audit events created on or before the given time. Format: ISO 8601 (`YYYY-MM-DDTHH:MM:SSZ`) |
|
||||
|
||||
By default, `GET` requests return 20 results at a time because the API results are paginated.
|
||||
When requesting consecutive pages of results, you should use [keyset pagination](rest/index.md#keyset-based-pagination).
|
||||
When requesting consecutive pages of results, you should use [keyset pagination](rest/_index.md#keyset-based-pagination).
|
||||
|
||||
Read more on [pagination](rest/index.md#pagination).
|
||||
Read more on [pagination](rest/_index.md#pagination).
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://primary.example.com/api/v4/projects/7/audit_events"
|
||||
|
|
@ -369,7 +368,7 @@ GET /projects/:id/audit_events/:audit_event_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `audit_event_id` | integer | yes | The ID of the audit event |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Avatar API
|
||||
---
|
||||
|
||||
# Avatar API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Project Management
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Project issue boards API
|
||||
---
|
||||
|
||||
# Project issue boards API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -25,7 +24,7 @@ GET /projects/:id/boards
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/boards"
|
||||
|
|
@ -109,7 +108,7 @@ GET /projects/:id/boards/:board_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
|
||||
```shell
|
||||
|
|
@ -186,7 +185,7 @@ POST /projects/:id/boards
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `name` | string | yes | The name of the new board. |
|
||||
|
||||
```shell
|
||||
|
|
@ -227,7 +226,7 @@ PUT /projects/:id/boards/:board_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------------------------- | -------------- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
| `name` | string | no | The new name of the board. |
|
||||
| `assignee_id` | integer | no | The assignee the board should be scoped to. Premium and Ultimate only. |
|
||||
|
|
@ -307,7 +306,7 @@ DELETE /projects/:id/boards/:board_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
|
||||
```shell
|
||||
|
|
@ -325,7 +324,7 @@ GET /projects/:id/boards/:board_id/lists
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
|
||||
```shell
|
||||
|
|
@ -385,7 +384,7 @@ GET /projects/:id/boards/:board_id/lists/:list_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
| `list_id`| integer | yes | The ID of a board's list. |
|
||||
|
||||
|
|
@ -420,7 +419,7 @@ POST /projects/:id/boards/:board_id/lists
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
| `label_id` | integer | no | The ID of a label. |
|
||||
| `assignee_id` | integer | no | The ID of a user. Premium and Ultimate only. |
|
||||
|
|
@ -463,7 +462,7 @@ PUT /projects/:id/boards/:board_id/lists/:list_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
| `list_id` | integer | yes | The ID of a board's list. |
|
||||
| `position` | integer | yes | The position of the list. |
|
||||
|
|
@ -499,7 +498,7 @@ DELETE /projects/:id/boards/:board_id/lists/:list_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `board_id` | integer | yes | The ID of a board. |
|
||||
| `list_id` | integer | yes | The ID of a board's list. |
|
||||
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Create
|
|||
group: Source Code
|
||||
info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments"
|
||||
description: "Documentation for the REST API for Git branches in GitLab."
|
||||
title: Branches API
|
||||
---
|
||||
|
||||
# Branches API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -30,7 +29,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:----------|:---------------|:---------|:------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths).|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths).|
|
||||
| `search` | string | no | Return list of branches containing the search string. Use `^term` to find branches that begin with `term`, and `term$` to find branches that end with `term`. |
|
||||
| `regex` | string | no | Return list of branches with names matching a [re2](https://github.com/google/re2/wiki/Syntax) regular expression. |
|
||||
|
||||
|
|
@ -93,8 +92,8 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|-------------------|----------|-------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `branch` | string | yes | [URL-encoded name](rest/index.md#namespaced-paths) of the branch. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `branch` | string | yes | [URL-encoded name](rest/_index.md#namespaced-paths) of the branch. |
|
||||
|
||||
Example request:
|
||||
|
||||
|
|
@ -158,7 +157,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|---------|----------|-------------|
|
||||
| `id` | integer | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `branch` | string | yes | Name of the branch. |
|
||||
| `ref` | string | yes | Branch name or commit SHA to create branch from. |
|
||||
|
||||
|
|
@ -218,7 +217,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `branch` | string | yes | Name of the branch. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -249,7 +248,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:----------|:---------------|:---------|:-------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
Example request:
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Growth
|
||||
group: Acquisition
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Broadcast Messages API
|
||||
---
|
||||
|
||||
# Broadcast Messages API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Foundations
|
||||
group: Import and Integrate
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Group and project migration by direct transfer API
|
||||
---
|
||||
|
||||
# Group and project migration by direct transfer API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: AI-Powered
|
|||
group: Duo Chat
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
description: "Documentation for the REST API for Duo Chat."
|
||||
title: GitLab Duo Chat Completions API
|
||||
---
|
||||
|
||||
# GitLab Duo Chat Completions API
|
||||
|
||||
The GitLab Duo Chat Completions API generates Chat responses. This API is for internal use only.
|
||||
|
||||
## Generate Chat responses
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Agents API
|
||||
---
|
||||
|
||||
# Agents API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -28,7 +27,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|-------------------|-----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user |
|
||||
|
||||
Response:
|
||||
|
||||
|
|
@ -106,7 +105,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------|-------------------|----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `agent_id` | integer | yes | ID of the agent |
|
||||
|
||||
Response:
|
||||
|
|
@ -168,7 +167,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|-------------------|----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `name` | string | yes | Name for the agent |
|
||||
|
||||
Response:
|
||||
|
|
@ -232,7 +231,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------|-------------------|----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user |
|
||||
| `agent_id` | integer | yes | ID of the agent |
|
||||
|
||||
Example request:
|
||||
|
|
@ -257,7 +256,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------|-------------------|-----------|------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer or string | yes | ID of the agent. |
|
||||
|
||||
Response:
|
||||
|
|
@ -326,7 +325,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------|-------------------|----------|-------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer | yes | ID of the agent. |
|
||||
| `token_id` | integer | yes | ID of the token. |
|
||||
|
||||
|
|
@ -386,7 +385,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------|-------------------|----------|------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer | yes | ID of the agent. |
|
||||
| `name` | string | yes | Name for the token. |
|
||||
| `description` | string | no | Description for the token. |
|
||||
|
|
@ -450,7 +449,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------|-------------------|----------|---------------------------------------------------------------------------------------------------------------- -|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer | yes | ID of the agent. |
|
||||
| `token_id` | integer | yes | ID of the token. |
|
||||
|
||||
|
|
@ -485,7 +484,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------|-------------------|-----------|-----------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer or string | yes | ID of the agent. |
|
||||
|
||||
Response:
|
||||
|
|
@ -538,7 +537,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------------|-------------------|----------|------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer | yes | ID of the agent. |
|
||||
| `url_configuration_id` | integer | yes | ID of the URL configuration. |
|
||||
|
||||
|
|
@ -592,7 +591,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------|-------------------|----------|-----------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer | yes | ID of the agent. |
|
||||
| `url` | string | yes | Agent URL for this URL configuration. |
|
||||
| `client_cert` | string | no | Client certificate in PEM format if mTLS authentication should be used. Must be provided with `client_key`. |
|
||||
|
|
@ -669,7 +668,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------------|-------------------|----------|-----------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) maintained by the authenticated user. |
|
||||
| `agent_id` | integer | yes | ID of the agent. |
|
||||
| `url_configuration_id` | integer | yes | ID of the URL configuration. |
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Cluster discovery API (certificate-based) (deprecated)
|
||||
---
|
||||
|
||||
# Cluster discovery API (certificate-based) (deprecated)
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Create
|
|||
group: Code Creation
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
description: "Documentation for the REST API for Code Suggestions."
|
||||
title: Code Suggestions API
|
||||
---
|
||||
|
||||
# Code Suggestions API
|
||||
|
||||
Use the Code Suggestions API to access the Code Suggestions feature.
|
||||
|
||||
## Generate code completions
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Create
|
|||
group: Source Code
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
description: "Documentation for the REST API for Git commits in GitLab."
|
||||
title: Commits API
|
||||
---
|
||||
|
||||
# Commits API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -35,7 +34,7 @@ GET /projects/:id/repository/commits
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `ref_name` | string | no | The name of a repository branch, tag or revision range, or if not given the default branch |
|
||||
| `since` | string | no | Only commits after or on this date are returned in ISO 8601 format `YYYY-MM-DDTHH:MM:SSZ` |
|
||||
| `until` | string | no | Only commits before or on this date are returned in ISO 8601 format `YYYY-MM-DDTHH:MM:SSZ` |
|
||||
|
|
@ -105,12 +104,12 @@ POST /projects/:id/repository/commits
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `branch` | string | yes | Name of the branch to commit into. To create a new branch, also provide either `start_branch` or `start_sha`, and optionally `start_project`. |
|
||||
| `commit_message` | string | yes | Commit message |
|
||||
| `start_branch` | string | no | Name of the branch to start the new branch from |
|
||||
| `start_sha` | string | no | SHA of the commit to start the new branch from |
|
||||
| `start_project` | integer/string | no | The project ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) to start the new branch from. Defaults to the value of `id`. |
|
||||
| `start_project` | integer/string | no | The project ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) to start the new branch from. Defaults to the value of `id`. |
|
||||
| `actions[]` | array | yes | An array of action hashes to commit as a batch. See the next table for what attributes it can take. |
|
||||
| `author_email` | string | no | Specify the commit author's email address |
|
||||
| `author_name` | string | no | Specify the commit author's name |
|
||||
|
|
@ -197,7 +196,7 @@ Example response:
|
|||
}
|
||||
```
|
||||
|
||||
GitLab supports [form encoding](rest/index.md#array-and-hash-types). The following is an example using Commit API with form encoding:
|
||||
GitLab supports [form encoding](rest/_index.md#array-and-hash-types). The following is an example using Commit API with form encoding:
|
||||
|
||||
```shell
|
||||
curl --request POST \
|
||||
|
|
@ -235,7 +234,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash or name of a repository branch or tag |
|
||||
| `stats` | boolean | no | Include commit stats. Default is true |
|
||||
|
||||
|
|
@ -291,7 +290,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash |
|
||||
| `type` | string | no | The scope of commits. Possible values `branch`, `tag`, `all`. Default is `all`. |
|
||||
|
||||
|
|
@ -328,7 +327,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| -------------- | -------------- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `sha` | string | yes | The commit hash. |
|
||||
| `first_parent` | boolean | no | Follow only the first parent commit upon seeing a merge commit. |
|
||||
|
||||
|
|
@ -359,7 +358,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash |
|
||||
| `branch` | string | yes | The name of the branch |
|
||||
| `dry_run` | boolean | no | Does not commit any changes. Default is false. |
|
||||
|
|
@ -434,7 +433,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | Commit SHA to revert |
|
||||
| `branch` | string | yes | Target branch name |
|
||||
| `dry_run` | boolean | no | Does not commit any changes. Default is false. |
|
||||
|
|
@ -504,7 +503,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash or name of a repository branch or tag |
|
||||
| `unidiff` | boolean | no | Present diffs in the [unified diff](https://www.gnu.org/software/diffutils/manual/html_node/Detailed-Unified.html) format. Default is false. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/130610) in GitLab 16.5. |
|
||||
|
||||
|
|
@ -542,7 +541,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash or name of a repository branch or tag |
|
||||
|
||||
```shell
|
||||
|
|
@ -596,7 +595,7 @@ POST /projects/:id/repository/commits/:sha/comments
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit SHA or name of a repository branch or tag |
|
||||
| `note` | string | yes | The text of the comment |
|
||||
| `path` | string | no | The file path relative to the repository |
|
||||
|
|
@ -645,7 +644,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash or name of a repository branch or tag |
|
||||
|
||||
```shell
|
||||
|
|
@ -707,7 +706,7 @@ GET /projects/:id/repository/commits/:sha/statuses
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------|----------------| -------- |--------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `sha` | string | Yes | Hash of the commit. |
|
||||
| `ref` | string | No | Name of the branch or tag. Default is the default branch. |
|
||||
| `stage` | string | No | Filter statuses by [build stage](../ci/yaml/index.md#stages). For example, `test`. |
|
||||
|
|
@ -786,7 +785,7 @@ POST /projects/:id/statuses/:sha
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- |-----------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit SHA |
|
||||
| `state` | string | yes | The state of the status. Can be one of the following: `pending`, `running`, `success`, `failed`, `canceled`, `skipped` |
|
||||
| `ref` | string | no | The `ref` (branch or tag) to which the status refers. Must be 255 characters or fewer. |
|
||||
|
|
@ -839,7 +838,7 @@ GET /projects/:id/repository/commits/:sha/merge_requests
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit SHA |
|
||||
|
||||
```shell
|
||||
|
|
@ -912,7 +911,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `sha` | string | yes | The commit hash or name of a repository branch or tag |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Package
|
||||
group: Container Registry
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Container registry API
|
||||
---
|
||||
|
||||
# Container registry API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -26,7 +25,7 @@ PUT /projects/:id/
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------------------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `container_registry_access_level` | string | no | The desired visibility of the container registry. One of `enabled` (default), `private`, or `disabled`. |
|
||||
|
||||
Descriptions of the possible values for `container_registry_access_level`:
|
||||
|
|
@ -66,7 +65,7 @@ Example response:
|
|||
## Container registry pagination
|
||||
|
||||
By default, `GET` requests return 20 results at a time because the API results
|
||||
are [paginated](rest/index.md#pagination).
|
||||
are [paginated](rest/_index.md#pagination).
|
||||
|
||||
## List registry repositories
|
||||
|
||||
|
|
@ -80,7 +79,7 @@ GET /projects/:id/registry/repositories
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|--------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `tags` | boolean | no | If the parameter is included as true, each repository includes an array of `"tags"` in the response. |
|
||||
| `tags_count` | boolean | no | If the parameter is included as true, each repository includes `"tags_count"` in the response . |
|
||||
|
||||
|
|
@ -127,7 +126,7 @@ GET /groups/:id/registry/repositories
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" \
|
||||
|
|
@ -215,7 +214,7 @@ DELETE /projects/:id/registry/repositories/:repository_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `repository_id` | integer | yes | The ID of registry repository. |
|
||||
|
||||
```shell
|
||||
|
|
@ -240,7 +239,7 @@ GET /projects/:id/registry/repositories/:repository_id/tags
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `repository_id` | integer | yes | The ID of registry repository. |
|
||||
|
||||
```shell
|
||||
|
|
@ -275,7 +274,7 @@ GET /projects/:id/registry/repositories/:repository_id/tags/:tag_name
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) accessible by the authenticated user. |
|
||||
| `repository_id` | integer | yes | The ID of registry repository. |
|
||||
| `tag_name` | string | yes | The name of tag. |
|
||||
|
||||
|
|
@ -309,7 +308,7 @@ DELETE /projects/:id/registry/repositories/:repository_id/tags/:tag_name
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `repository_id` | integer | yes | The ID of registry repository. |
|
||||
| `tag_name` | string | yes | The name of tag. |
|
||||
|
||||
|
|
@ -334,7 +333,7 @@ DELETE /projects/:id/registry/repositories/:repository_id/tags
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `repository_id` | integer | yes | The ID of registry repository. |
|
||||
| `name_regex` | string | no | The [re2](https://github.com/google/re2/wiki/Syntax) regex of the name to delete. To delete all tags specify `.*`. **Note:** `name_regex` is deprecated in favor of `name_regex_delete`. This field is validated. |
|
||||
| `name_regex_delete` | string | yes | The [re2](https://github.com/google/re2/wiki/Syntax) regex of the name to delete. To delete all tags specify `.*`. This field is validated. |
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Package
|
|||
group: Container Registry
|
||||
info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments"
|
||||
description: "Documentation for the REST API for container repository protection rules in GitLab."
|
||||
title: Container repository protection rules API
|
||||
---
|
||||
|
||||
# Container repository protection rules API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed
|
||||
|
|
@ -27,7 +26,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------------------------|-----------------|----------|--------------------------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
If successful, returns [`200`](rest/troubleshooting.md#status-codes) and a list of container repository protection rules.
|
||||
|
||||
|
|
@ -80,7 +79,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------------------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `repository_path_pattern` | string | Yes | Container repository path pattern protected by the protection rule. For example `flight/flight-*`. Wildcard character `*` allowed. |
|
||||
| `minimum_access_level_for_push` | string | No | Minimum GitLab access level required to push container images to the container registry. For example `maintainer`, `owner` or `admin`. Must be provided when `minimum_access_level_for_delete` is not set. |
|
||||
| `minimum_access_level_for_delete` | string | No | Minimum GitLab access level required to delete container images in the container registry. For example `maintainer`, `owner`, `admin`. Must be provided when `minimum_access_level_for_push` is not set. |
|
||||
|
|
@ -124,7 +123,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------------------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `protection_rule_id` | integer | Yes | ID of the protection rule to be updated. |
|
||||
| `repository_path_pattern` | string | No | Container repository path pattern protected by the protection rule. For example `flight/flight-*`. Wildcard character `*` allowed. |
|
||||
| `minimum_access_level_for_push` | string | No | Minimum GitLab access level required to push container images to the container registry. For example `maintainer`, `owner` or `admin`. Must be provided when `minimum_access_level_for_delete` is not set. To unset the value, use an empty string `""`. |
|
||||
|
|
@ -167,7 +166,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|----------------------|----------------|----------|-------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `protection_rule_id` | integer | Yes | ID of the container repository protection rule to be deleted. |
|
||||
|
||||
If successful, returns [`204 No Content`](rest/troubleshooting.md#status-codes).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Project Management
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Custom Attributes API
|
||||
---
|
||||
|
||||
# Custom Attributes API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Data Access
|
||||
group: Database Frameworks
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Database migrations API
|
||||
---
|
||||
|
||||
# Database migrations API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Application Security Testing
|
||||
group: Composition Analysis
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Dependencies API
|
||||
---
|
||||
|
||||
# Dependencies API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -29,7 +28,7 @@ GET /projects/:id/dependencies?package_manager=yarn,bundler
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------- | -------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `package_manager` | string array | no | Returns dependencies belonging to specified package manager. Valid values: `bundler`, `composer`, `conan`, `go`, `gradle`, `maven`, `npm`, `nuget`, `pip`, `pipenv`, `pnpm`, `yarn`, `sbt`, or `setuptools`. |
|
||||
|
||||
```shell
|
||||
|
|
@ -81,4 +80,4 @@ Example response:
|
|||
By default, `GET` requests return 20 results at a time because the API results
|
||||
are paginated.
|
||||
|
||||
Read more on [pagination](rest/index.md#pagination).
|
||||
Read more on [pagination](rest/_index.md#pagination).
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Security Risk Management
|
||||
group: Security Insights
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Dependency list export API
|
||||
---
|
||||
|
||||
# Dependency list export API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Package
|
||||
group: Container Registry
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Dependency Proxy API
|
||||
---
|
||||
|
||||
# Dependency Proxy API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -21,7 +20,7 @@ DELETE /groups/:id/dependency_proxy/cache
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
|
||||
Example request:
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Deploy keys API
|
||||
---
|
||||
|
||||
# Deploy keys API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -156,7 +155,7 @@ GET /projects/:id/deploy_keys
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.example.com/api/v4/projects/5/deploy_keys"
|
||||
|
|
@ -260,7 +259,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `key_id` | integer | yes | The ID of the deploy key |
|
||||
|
||||
```shell
|
||||
|
|
@ -295,7 +294,7 @@ POST /projects/:id/deploy_keys
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ----------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `key` | string | yes | New deploy key |
|
||||
| `title` | string | yes | New deploy key's title |
|
||||
| `can_push` | boolean | no | Can deploy key push to the project's repository |
|
||||
|
|
@ -330,7 +329,7 @@ PUT /projects/:id/deploy_keys/:key_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `can_push` | boolean | no | Can deploy key push to the project's repository |
|
||||
| `title` | string | no | New deploy key's title |
|
||||
|
||||
|
|
@ -362,7 +361,7 @@ DELETE /projects/:id/deploy_keys/:key_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `key_id` | integer | yes | The ID of the deploy key |
|
||||
|
||||
```shell
|
||||
|
|
@ -379,7 +378,7 @@ POST /projects/:id/deploy_keys/:key_id/enable
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `key_id` | integer | yes | The ID of the deploy key |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Deploy Tokens API
|
||||
---
|
||||
|
||||
# Deploy Tokens API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -70,7 +69,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------|:---------------|:-----------------------|:------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `active` | boolean | No | Limit by active status. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -110,7 +109,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------- | -------------- | ---------------------- | ----------- |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `token_id` | integer | Yes | ID of the deploy token |
|
||||
|
||||
Example request:
|
||||
|
|
@ -148,7 +147,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------ | ---------------- | ---------------------- | ----------- |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `name` | string | Yes | New deploy token's name |
|
||||
| `scopes` | array of strings | Yes | Indicates the deploy token scopes. Must be at least one of `read_repository`, `read_registry`, `write_registry`, `read_package_registry`, or `write_package_registry`. |
|
||||
| `expires_at` | datetime | No | Expiration date for the deploy token. Does not expire if no value is provided. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`) |
|
||||
|
|
@ -191,7 +190,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------- | -------------- | ---------------------- | ----------- |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `token_id` | integer | Yes | ID of the deploy token |
|
||||
|
||||
Example request:
|
||||
|
|
@ -218,7 +217,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------|:---------------|:-----------------------|:------------|
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `active` | boolean | No | Limit by active status. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -258,7 +257,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ----------- | -------------- | ---------------------- | ----------- |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `token_id` | integer | Yes | ID of the deploy token |
|
||||
|
||||
Example request:
|
||||
|
|
@ -296,7 +295,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------ | ---- | --------- | ----------- |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `name` | string | Yes | New deploy token's name |
|
||||
| `scopes` | array of strings | Yes | Indicates the deploy token scopes. Must be at least one of `read_repository`, `read_registry`, `write_registry`, `read_package_registry`, or `write_package_registry`. |
|
||||
| `expires_at` | datetime | No | Expiration date for the deploy token. Does not expire if no value is provided. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`) |
|
||||
|
|
@ -339,7 +338,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ----------- | -------------- | ---------------------- | ----------- |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | Yes | ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `token_id` | integer | Yes | ID of the deploy token |
|
||||
|
||||
Example request:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Deployments API
|
||||
---
|
||||
|
||||
# Deployments API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -22,7 +21,7 @@ GET /projects/:id/deployments
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------------|----------------|----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `order_by` | string | no | Return deployments ordered by either one of `id`, `iid`, `created_at`, `updated_at`, `finished_at` or `ref` fields. Default is `id`. |
|
||||
| `sort` | string | no | Return deployments sorted in `asc` or `desc` order. Default is `asc`. |
|
||||
| `updated_after` | datetime | no | Return deployments updated after the specified date. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`). |
|
||||
|
|
@ -200,7 +199,7 @@ GET /projects/:id/deployments/:deployment_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|---------|----------|---------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `deployment_id` | integer | yes | The ID of the deployment |
|
||||
|
||||
```shell
|
||||
|
|
@ -334,7 +333,7 @@ POST /projects/:id/deployments
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------|----------------|----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths).|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths).|
|
||||
| `environment` | string | yes | The [name of the environment](../ci/environments/index.md) to create the deployment for. |
|
||||
| `sha` | string | yes | The SHA of the commit that is deployed. |
|
||||
| `ref` | string | yes | The name of the branch or tag that is deployed. |
|
||||
|
|
@ -392,7 +391,7 @@ PUT /projects/:id/deployments/:deployment_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------|----------------|----------|---------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `deployment_id` | integer | yes | The ID of the deployment to update. |
|
||||
| `status` | string | yes | The new status of the deployment. One of `running`, `success`, `failed`, or `canceled`. |
|
||||
|
||||
|
|
@ -462,7 +461,7 @@ DELETE /projects/:id/deployments/:deployment_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|---------|----------|---------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `deployment_id` | integer | yes | The ID of the deployment |
|
||||
|
||||
```shell
|
||||
|
|
@ -523,7 +522,7 @@ POST /projects/:id/deployments/:deployment_id/approval
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------------|----------------|----------|-----------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `deployment_id` | integer | yes | The ID of the deployment. |
|
||||
| `status` | string | yes | The status of the approval (either `approved` or `rejected`). |
|
||||
| `comment` | string | no | A comment to go with the approval |
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Create
|
||||
group: Source Code
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Discussions API
|
||||
---
|
||||
|
||||
# Discussions API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -40,7 +39,7 @@ Not all discussion types are equally available in the API:
|
|||
|
||||
By default, `GET` requests return 20 results at a time because the API results are paginated.
|
||||
|
||||
Read more on [pagination](rest/index.md#pagination).
|
||||
Read more on [pagination](rest/_index.md#pagination).
|
||||
|
||||
## Issues
|
||||
|
||||
|
|
@ -54,7 +53,7 @@ GET /projects/:id/issues/:issue_iid/discussions
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ------------ |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | The IID of an issue. |
|
||||
|
||||
```json
|
||||
|
|
@ -156,7 +155,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | The IID of an issue. |
|
||||
| `discussion_id` | integer | yes | The ID of a discussion item. |
|
||||
|
||||
|
|
@ -178,7 +177,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | The IID of an issue. |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such as `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
||||
|
|
@ -205,7 +204,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | The IID of an issue. |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such as `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
|
@ -230,7 +229,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | The IID of an issue. |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
|
||||
|
|
@ -253,7 +252,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | integer | yes | The ID of a discussion. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | The IID of an issue. |
|
||||
| `note_id` | integer | yes | The ID of a discussion note. |
|
||||
|
||||
|
|
@ -275,7 +274,7 @@ GET /projects/:id/snippets/:snippet_id/discussions
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `snippet_id` | integer | yes | The ID of an snippet. |
|
||||
|
||||
```json
|
||||
|
|
@ -378,7 +377,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | integer | yes | The ID of a discussion item. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `snippet_id` | integer | yes | The ID of an snippet. |
|
||||
|
||||
```shell
|
||||
|
|
@ -401,7 +400,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of a discussion. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `snippet_id` | integer | yes | The ID of an snippet. |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such as `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
||||
|
|
@ -425,7 +424,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `snippet_id` | integer | yes | The ID of an snippet. |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such as `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
|
@ -450,7 +449,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `snippet_id` | integer | yes | The ID of an snippet. |
|
||||
|
||||
|
|
@ -473,7 +472,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | integer | yes | The ID of a discussion. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a discussion note. |
|
||||
| `snippet_id` | integer | yes | The ID of an snippet. |
|
||||
|
||||
|
|
@ -493,7 +492,7 @@ WARNING:
|
|||
The Epics REST API was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/460668) in GitLab 17.0
|
||||
and is planned for removal in v5 of the API.
|
||||
In GitLab 17.4 or later, if your administrator [enabled the new look for epics](../user/group/epics/epic_work_items.md), use the
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](../api/graphql/epic_work_items_api_migration_guide.md).
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](graphql/epic_work_items_api_migration_guide.md).
|
||||
This change is a breaking change.
|
||||
|
||||
### List group epic discussion items
|
||||
|
|
@ -507,7 +506,7 @@ GET /groups/:id/epics/:epic_id/discussions
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ------------ |
|
||||
| `epic_id` | integer | yes | The ID of an epic. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```json
|
||||
[
|
||||
|
|
@ -611,7 +610,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | integer | yes | The ID of a discussion item. |
|
||||
| `epic_id` | integer | yes | The ID of an epic. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```shell
|
||||
curl --request POST \
|
||||
|
|
@ -634,7 +633,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the thread. |
|
||||
| `epic_id` | integer | yes | The ID of an epic. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such as `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
||||
```shell
|
||||
|
|
@ -659,7 +658,7 @@ Parameters:
|
|||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `epic_id` | integer | yes | The ID of an epic. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such as `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
||||
|
|
@ -684,7 +683,7 @@ Parameters:
|
|||
| `body` | string | yes | The content of note or reply. |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `epic_id` | integer | yes | The ID of an epic. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
|
||||
```shell
|
||||
|
|
@ -707,7 +706,7 @@ Parameters:
|
|||
| --------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | integer | yes | The ID of a thread. |
|
||||
| `epic_id` | integer | yes | The ID of an epic. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
|
||||
```shell
|
||||
|
|
@ -728,7 +727,7 @@ GET /projects/:id/merge_requests/:merge_request_iid/discussions
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ------------ |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
|
||||
```json
|
||||
|
|
@ -897,7 +896,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | string | yes | The ID of a discussion item. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
|
||||
```shell
|
||||
|
|
@ -921,7 +920,7 @@ Parameters for all comments:
|
|||
| Attribute | Type | Required | Description |
|
||||
| ---------------------------------------- | -------------- |--------------------------------------| ----------- |
|
||||
| `body` | string | yes | The content of the thread. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
| `position[base_sha]` | string | yes (if `position*` is supplied) | Base commit SHA in the source branch. |
|
||||
| `position[head_sha]` | string | yes (if `position*` is supplied) | SHA referencing HEAD of this merge request. |
|
||||
|
|
@ -1069,7 +1068,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
| `resolved` | boolean | yes | Resolve or unresolve the discussion. |
|
||||
|
|
@ -1094,7 +1093,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
|
|
@ -1119,7 +1118,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `body` | string | no | The content of the note or reply. Exactly one of `body` or `resolved` must be set. |
|
||||
|
|
@ -1152,7 +1151,7 @@ Parameters:
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a merge request. |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
|
||||
|
|
@ -1175,7 +1174,7 @@ GET /projects/:id/repository/commits/:commit_id/discussions
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ------------ |
|
||||
| `commit_id` | string | yes | The SHA of a commit. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```json
|
||||
[
|
||||
|
|
@ -1324,7 +1323,7 @@ Parameters:
|
|||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `commit_id` | string | yes | The SHA of a commit. |
|
||||
| `discussion_id` | string | yes | The ID of a discussion item. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" \
|
||||
|
|
@ -1346,7 +1345,7 @@ Parameters:
|
|||
| ------------------------- | -------------- |----------------------------------| ----------- |
|
||||
| `body` | string | yes | The content of the thread. |
|
||||
| `commit_id` | string | yes | The SHA of a commit. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `position[base_sha]` | string | yes (if `position*` is supplied) | SHA of the parent commit. |
|
||||
| `position[head_sha]` | string | yes (if `position*` is supplied) | The SHA of this commit. Same as `commit_id`. |
|
||||
| `position[start_sha]` | string | yes (if `position*` is supplied) | SHA of the parent commit. |
|
||||
|
|
@ -1392,7 +1391,7 @@ Parameters:
|
|||
| `body` | string | yes | The content of the note or reply. |
|
||||
| `commit_id` | string | yes | The SHA of a commit. |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `created_at` | string | no | Date time string, ISO 8601 formatted, such `2016-03-11T03:45:40Z`. Requires administrator or project/group owner rights. |
|
||||
|
||||
|
|
@ -1416,7 +1415,7 @@ Parameters:
|
|||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `commit_id` | string | yes | The SHA of a commit. |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
| `body` | string | no | The content of a note. |
|
||||
|
||||
|
|
@ -1446,7 +1445,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | -------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `commit_id` | string | yes | The SHA of a commit. |
|
||||
| `discussion_id` | string | yes | The ID of a thread. |
|
||||
| `note_id` | integer | yes | The ID of a thread note. |
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ DETAILS:
|
|||
**Tier:** Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
||||
You can also retrieve [DORA metrics](../../user/analytics/dora_metrics.md) with the [GraphQL API](../../api/graphql/reference/_index.md).
|
||||
You can also retrieve [DORA metrics](../../user/analytics/dora_metrics.md) with the [GraphQL API](../graphql/reference/_index.md).
|
||||
|
||||
All methods require at least the Reporter role.
|
||||
|
||||
|
|
@ -24,7 +24,7 @@ GET /projects/:id/dora/metrics
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------------|:-----------------|:---------|:------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](../rest/index.md#namespaced-paths) can be accessed by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](../rest/_index.md#namespaced-paths) can be accessed by the authenticated user. |
|
||||
| `metric` | string | yes | One of `deployment_frequency`, `lead_time_for_changes`, `time_to_restore_service` or `change_failure_rate`. |
|
||||
| `end_date` | string | no | Date range to end at. ISO 8601 Date format, for example `2021-03-01`. Default is the current date. |
|
||||
| `environment_tiers` | array of strings | no | The [tiers of the environments](../../ci/environments/index.md#deployment-tier-of-environments). Default is `production`. |
|
||||
|
|
@ -62,7 +62,7 @@ GET /groups/:id/dora/metrics
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:--------------------|:-----------------|:---------|:------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](../rest/index.md#namespaced-paths) can be accessed by the authenticated user. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](../rest/_index.md#namespaced-paths) can be accessed by the authenticated user. |
|
||||
| `metric` | string | yes | One of `deployment_frequency`, `lead_time_for_changes`, `time_to_restore_service` or `change_failure_rate`. |
|
||||
| `end_date` | string | no | Date range to end at. ISO 8601 Date format, for example `2021-03-01`. Default is the current date. |
|
||||
| `environment_tiers` | array of strings | no | The [tiers of the environments](../../ci/environments/index.md#deployment-tier-of-environments). Default is `production`. |
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Create
|
|||
group: Code Review
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
description: "Documentation for the REST API for draft notes (unpublished comments) in GitLab."
|
||||
title: Draft Notes API
|
||||
---
|
||||
|
||||
# Draft Notes API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -28,7 +27,7 @@ GET /projects/:id/merge_requests/:merge_request_iid/draft_notes
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------------|-------------------|----------|-------------|
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request |
|
||||
|
||||
```json
|
||||
|
|
@ -71,7 +70,7 @@ GET /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------------|-------------------|----------|-------------|
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `draft_note_id` | integer | yes | The ID of a draft note. |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request. |
|
||||
|
||||
|
|
@ -115,7 +114,7 @@ POST /projects/:id/merge_requests/:merge_request_iid/draft_notes
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------------------------------------- | ----------------- | ----------- | --------------------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request. |
|
||||
| `note` | string | yes | The content of a note. |
|
||||
| `commit_id` | string | no | The SHA of a commit to associate the draft note to. |
|
||||
|
|
@ -151,7 +150,7 @@ PUT /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ----------------- | ----------- | --------------------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `draft_note_id` | integer | yes | The ID of a draft note. |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request. |
|
||||
| `note` | string | no | The content of a note. |
|
||||
|
|
@ -187,7 +186,7 @@ DELETE /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_i
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ----------- | --------------------- |
|
||||
| `draft_note_id` | integer | yes | The ID of a draft note. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request. |
|
||||
|
||||
```shell
|
||||
|
|
@ -207,7 +206,7 @@ PUT /projects/:id/merge_requests/:merge_request_iid/draft_notes/:draft_note_id/p
|
|||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ----------- | --------------------- |
|
||||
| `draft_note_id` | integer | yes | The ID of a draft note. |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request. |
|
||||
|
||||
```shell
|
||||
|
|
@ -226,7 +225,7 @@ POST /projects/:id/merge_requests/:merge_request_iid/draft_notes/bulk_publish
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------------|-------------------|----------|-------------|
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `merge_request_iid` | integer | yes | The IID of a project merge request. |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Project Management
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Emoji reactions API
|
||||
---
|
||||
|
||||
# Emoji reactions API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -43,7 +42,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid`/`merge_request_iid`/`snippet_id` | integer | yes | ID (`iid` for merge requests/issues, `id` for snippets) of an awardable. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -108,7 +107,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid`/`merge_request_iid`/`snippet_id` | integer | yes | ID (`iid` for merge requests/issues, `id` for snippets) of an awardable. |
|
||||
| `award_id` | integer | yes | ID of the emoji reaction. |
|
||||
|
||||
|
|
@ -153,7 +152,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid`/`merge_request_iid`/`snippet_id` | integer | yes | ID (`iid` for merge requests/issues, `id` for snippets) of an awardable. |
|
||||
| `name` | string | yes | Name of the emoji without colons. |
|
||||
|
||||
|
|
@ -198,7 +197,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:---------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid`/`merge_request_iid`/`snippet_id` | integer | yes | ID (`iid` for merge requests/issues, `id` for snippets) of an awardable. |
|
||||
| `award_id` | integer | yes | ID of an emoji reaction. |
|
||||
|
||||
|
|
@ -230,7 +229,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | Internal ID of an issue. |
|
||||
| `note_id` | integer | yes | ID of a comment (note). |
|
||||
|
||||
|
|
@ -278,7 +277,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | Internal ID of an issue. |
|
||||
| `note_id` | integer | yes | ID of a comment (note). |
|
||||
| `award_id` | integer | yes | ID of the emoji reaction. |
|
||||
|
|
@ -322,7 +321,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | Internal ID of an issue. |
|
||||
| `note_id` | integer | yes | ID of a comment (note). |
|
||||
| `name` | string | yes | Name of the emoji without colons. |
|
||||
|
|
@ -368,7 +367,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|:------------|:---------------|:---------|:-----------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `issue_iid` | integer | yes | Internal ID of an issue. |
|
||||
| `note_id` | integer | yes | ID of a comment (note). |
|
||||
| `award_id` | integer | yes | ID of an emoji reaction. |
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Environments API
|
||||
---
|
||||
|
||||
# Environments API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -23,7 +22,7 @@ GET /projects/:id/environments
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|---------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded](rest/index.md#namespaced-paths) path of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded](rest/_index.md#namespaced-paths) path of the project. |
|
||||
| `name` | string | no | Return the environment with this name. Mutually exclusive with `search`. |
|
||||
| `search` | string | no | Return list of environments matching the search criteria. Mutually exclusive with `name`. Must be at least 3 characters long. |
|
||||
| `states` | string | no | List all environments that match a specific state. Accepted values: `available`, `stopping`, or `stopped`. If no state value given, returns all environments. |
|
||||
|
|
@ -65,7 +64,7 @@ GET /projects/:id/environments/:environment_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------|----------------|----------|--------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/index.md#namespaced-paths) of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/_index.md#namespaced-paths) of the project. |
|
||||
| `environment_id` | integer | yes | The ID of the environment. |
|
||||
|
||||
```shell
|
||||
|
|
@ -205,7 +204,7 @@ POST /projects/:id/environments
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------------|----------------|----------|---------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/index.md#namespaced-paths) of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/_index.md#namespaced-paths) of the project. |
|
||||
| `name` | string | yes | The name of the environment. |
|
||||
| `description` | string | no | The description of the environment. |
|
||||
| `external_url` | string | no | Place to link to for this environment. |
|
||||
|
|
@ -254,7 +253,7 @@ PUT /projects/:id/environments/:environments_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------------|-----------------|----------|---------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `environment_id` | integer | yes | The ID of the environment. |
|
||||
| `description` | string | no | The description of the environment. |
|
||||
| `external_url` | string | no | The new `external_url`. |
|
||||
|
|
@ -300,7 +299,7 @@ DELETE /projects/:id/environments/:environment_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------|----------------|----------|--------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/index.md#namespaced-paths) of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/_index.md#namespaced-paths) of the project. |
|
||||
| `environment_id` | integer | yes | The ID of the environment. |
|
||||
|
||||
```shell
|
||||
|
|
@ -323,7 +322,7 @@ DELETE /projects/:id/environments/review_apps
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|--------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/index.md#namespaced-paths) of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/_index.md#namespaced-paths) of the project. |
|
||||
| `before` | datetime | no | The date before which environments can be deleted. Defaults to 30 days ago. Expected in ISO 8601 format (`YYYY-MM-DDTHH:MM:SSZ`). |
|
||||
| `limit` | integer | no | Maximum number of environments to delete. Defaults to 100. |
|
||||
| `dry_run` | boolean | no | Defaults to `true` for safety reasons. It performs a dry run where no actual deletion is performed. Set to `false` to actually delete the environment. |
|
||||
|
|
@ -366,7 +365,7 @@ POST /projects/:id/environments/:environment_id/stop
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|------------------|----------------|----------|--------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/index.md#namespaced-paths) of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/_index.md#namespaced-paths) of the project. |
|
||||
| `environment_id` | integer | yes | The ID of the environment. |
|
||||
| `force` | boolean | no | Force environment to stop without executing `on_stop` actions. |
|
||||
|
||||
|
|
@ -403,7 +402,7 @@ POST /projects/:id/environments/stop_stale
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-----------|----------------|----------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/index.md#namespaced-paths) of the project. |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path](rest/_index.md#namespaced-paths) of the project. |
|
||||
| `before` | date | yes | Stop environments that have been modified or deployed to before the specified date. Expected in ISO 8601 format (`2019-03-15T08:00:00Z`). Valid inputs are between 10 years ago and 1 week ago |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Product Planning
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Epic Issues API
|
||||
---
|
||||
|
||||
# Epic Issues API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -14,7 +13,7 @@ WARNING:
|
|||
The Epics REST API was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/460668) in GitLab 17.0
|
||||
and is planned for removal in v5 of the API.
|
||||
In GitLab 17.4 or later, if your administrator [enabled the new look for epics](../user/group/epics/epic_work_items.md), use the
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](../api/graphql/epic_work_items_api_migration_guide.md).
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](graphql/epic_work_items_api_migration_guide.md).
|
||||
This change is a breaking change.
|
||||
|
||||
Every API call to the epic issues API endpoint must be authenticated.
|
||||
|
|
@ -27,7 +26,7 @@ If the Epics feature is not available, a `403` status code is returned.
|
|||
|
||||
## Epic Issues pagination
|
||||
|
||||
API results [are paginated](rest/index.md#pagination). Requests that return
|
||||
API results [are paginated](rest/_index.md#pagination). Requests that return
|
||||
multiple issues default to returning 20 results at a time.
|
||||
|
||||
## List issues for an epic
|
||||
|
|
@ -40,7 +39,7 @@ GET /groups/:id/epics/:epic_iid/issues
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic. |
|
||||
|
||||
```shell
|
||||
|
|
@ -135,7 +134,7 @@ POST /groups/:id/epics/:epic_iid/issues/:issue_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic. |
|
||||
| `issue_id` | integer/string | yes | The ID of the issue. |
|
||||
|
||||
|
|
@ -241,7 +240,7 @@ DELETE /groups/:id/epics/:epic_iid/issues/:epic_issue_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | -----------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic. |
|
||||
| `epic_issue_id` | integer/string | yes | The ID of the issue - epic association. |
|
||||
|
||||
|
|
@ -347,7 +346,7 @@ PUT /groups/:id/epics/:epic_iid/issues/:epic_issue_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | -----------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic. |
|
||||
| `epic_issue_id` | integer/string | yes | The ID of the issue - epic association. |
|
||||
| `move_before_id` | integer/string | no | The ID of the issue - epic association that should be placed before the link in the question. |
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Product Planning
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Epic Links API
|
||||
---
|
||||
|
||||
# Epic Links API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -14,7 +13,7 @@ WARNING:
|
|||
The Epics REST API was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/460668) in GitLab 17.0
|
||||
and is planned for removal in v5 of the API.
|
||||
In GitLab 17.4 or later, if your administrator [enabled the new look for epics](../user/group/epics/epic_work_items.md), use the
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](../api/graphql/epic_work_items_api_migration_guide.md).
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](graphql/epic_work_items_api_migration_guide.md).
|
||||
This change is a breaking change.
|
||||
|
||||
Manages parent-child [epic relationships](../user/group/epics/manage_epics.md#multi-level-child-epics).
|
||||
|
|
@ -37,7 +36,7 @@ GET /groups/:id/epics/:epic_iid/epics
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer | yes | The internal ID of the epic. |
|
||||
|
||||
```shell
|
||||
|
|
@ -91,7 +90,7 @@ POST /groups/:id/epics/:epic_iid/epics/:child_epic_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------ |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer | yes | The internal ID of the epic. |
|
||||
| `child_epic_id` | integer | yes | The global ID of the child epic. Internal ID can't be used because they can conflict with epics from other groups. |
|
||||
|
||||
|
|
@ -144,7 +143,7 @@ POST /groups/:id/epics/:epic_iid/epics
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------ |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer | yes | The internal ID of the (future parent) epic. |
|
||||
| `title` | string | yes | The title of a newly created epic. |
|
||||
| `confidential` | boolean | no | Whether the epic should be confidential. Parameter is ignored if `confidential_epics` feature flag is disabled. Defaults to the confidentiality state of the parent epic. |
|
||||
|
|
@ -178,7 +177,7 @@ PUT /groups/:id/epics/:epic_iid/epics/:child_epic_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ---------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------ |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `epic_iid` | integer | yes | The internal ID of the epic. |
|
||||
| `child_epic_id` | integer | yes | The global ID of the child epic. Internal ID can't be used because they can conflict with epics from other groups. |
|
||||
| `move_before_id` | integer | no | The global ID of a sibling epic that should be placed before the child epic. |
|
||||
|
|
@ -235,7 +234,7 @@ DELETE /groups/:id/epics/:epic_iid/epics/:child_epic_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------------- | -------------- | -------- | ------------------------------------------------------------------------------------------------------------------ |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths). |
|
||||
| `epic_iid` | integer | yes | The internal ID of the epic. |
|
||||
| `child_epic_id` | integer | yes | The global ID of the child epic. Internal ID can't be used because they can conflict with epics from other groups. |
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Product Planning
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Epics API (deprecated)
|
||||
---
|
||||
|
||||
# Epics API (deprecated)
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -14,7 +13,7 @@ WARNING:
|
|||
The Epics REST API was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/460668) in GitLab 17.0
|
||||
and is planned for removal in v5 of the API.
|
||||
In GitLab 17.4 or later, if your administrator [enabled the new look for epics](../user/group/epics/epic_work_items.md), use the
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](../api/graphql/epic_work_items_api_migration_guide.md).
|
||||
[Work Items API](https://handbook.gitlab.com/handbook/engineering/architecture/design-documents/work_items/) instead. For more information, see the [guide how to migrate your existing APIs](graphql/epic_work_items_api_migration_guide.md).
|
||||
This change is a breaking change.
|
||||
|
||||
Every API call to epic must be authenticated.
|
||||
|
|
@ -43,7 +42,7 @@ fields `start_date_is_fixed` and `due_date_is_fixed`, and four date fields `star
|
|||
By default, `GET` requests return 20 results at a time because the API results
|
||||
are paginated.
|
||||
|
||||
Read more on [pagination](rest/index.md#pagination).
|
||||
Read more on [pagination](rest/_index.md#pagination).
|
||||
|
||||
WARNING:
|
||||
In [GitLab 12.6](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/20354) and later,
|
||||
|
|
@ -67,7 +66,7 @@ GET /groups/:id/epics?state=opened
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `author_id` | integer | no | Return epics created by the given user `id` |
|
||||
| `author_username` | string | no | Return epics created by the user with the given `username`. |
|
||||
| `labels` | string | no | Return epics matching a comma-separated list of labels names. Label names from the epic group or a parent group can be used |
|
||||
|
|
@ -207,7 +206,7 @@ GET /groups/:id/epics/:epic_iid
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic. |
|
||||
|
||||
```shell
|
||||
|
|
@ -286,7 +285,7 @@ POST /groups/:id/epics
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `title` | string | yes | The title of the epic |
|
||||
| `labels` | string | no | The comma-separated list of labels |
|
||||
| `description` | string | no | The description of the epic. Limited to 1,048,576 characters. |
|
||||
|
|
@ -370,7 +369,7 @@ PUT /groups/:id/epics/:epic_iid
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic |
|
||||
| `add_labels` | string | no | Comma-separated label names to add to an issue. |
|
||||
| `confidential` | boolean | no | Whether the epic should be confidential |
|
||||
|
|
@ -454,7 +453,7 @@ DELETE /groups/:id/epics/:epic_iid
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer/string | yes | The internal ID of the epic. |
|
||||
|
||||
```shell
|
||||
|
|
@ -473,7 +472,7 @@ POST /groups/:id/epics/:epic_iid/todo
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|-------------|---------|----------|--------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the group](rest/_index.md#namespaced-paths) |
|
||||
| `epic_iid` | integer | yes | The internal ID of a group's epic |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Monitor
|
||||
group: Platform Insights
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Error Tracking settings API
|
||||
---
|
||||
|
||||
# Error Tracking settings API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -23,7 +22,7 @@ GET /projects/:id/error_tracking/settings
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ------- | -------- | --------------------- |
|
||||
| `id` | integer | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `id` | integer | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" \
|
||||
|
|
@ -60,7 +59,7 @@ Supported attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------ | ------- |----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `active` | boolean | yes | Pass `true` to enable the error tracking setting configuration or `false` to disable it. |
|
||||
| `integrated` | boolean | yes | Pass `true` to enable the integrated error tracking backend. |
|
||||
|
||||
|
|
@ -94,7 +93,7 @@ PATCH /projects/:id/error_tracking/settings
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------ | ------- | -------- | --------------------- |
|
||||
| `id` | integer | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `active` | boolean | yes | Pass `true` to enable the already configured error tracking settings or `false` to disable it. |
|
||||
| `integrated` | boolean | no | Pass `true` to enable the integrated error tracking backend. |
|
||||
|
||||
|
|
@ -128,7 +127,7 @@ GET /projects/:id/error_tracking/client_keys
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```shell
|
||||
curl --header "PRIVATE-TOKEN: <your_access_token>" \
|
||||
|
|
@ -164,7 +163,7 @@ POST /projects/:id/error_tracking/client_keys
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
```shell
|
||||
curl --request POST \
|
||||
|
|
@ -194,7 +193,7 @@ DELETE /projects/:id/error_tracking/client_keys/:key_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | ---- | -------- | ----------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `key_id` | integer | yes | The ID of the client key. |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: none
|
||||
group: unassigned
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Events API
|
||||
---
|
||||
|
||||
# Events API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -294,7 +293,7 @@ Parameters:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
|---------------|----------------|----------|-----------------------------------------------------------------------------------------------------|
|
||||
| `project_id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths) |
|
||||
| `project_id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths) |
|
||||
| `action` | string | no | Include only events of a particular [action type](#actions) |
|
||||
| `target_type` | string | no | Include only events of a particular [target type](#target-types) |
|
||||
| `before` | date | no | Include only events created before a particular date. [View how to format dates](#date-formatting). |
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Growth
|
||||
group: Acquisition
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Experiments API (GitLab team only)
|
||||
---
|
||||
|
||||
# Experiments API (GitLab team only)
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Feature flag user lists API
|
||||
---
|
||||
|
||||
# Feature flag user lists API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -19,7 +18,7 @@ Users with at least the Developer [role](../user/permissions.md) can access the
|
|||
|
||||
NOTE:
|
||||
`GET` requests return twenty results at a time because the API results
|
||||
are [paginated](rest/index.md#pagination). You can change this value.
|
||||
are [paginated](rest/_index.md#pagination). You can change this value.
|
||||
|
||||
## List all feature flag user lists for a project
|
||||
|
||||
|
|
@ -31,7 +30,7 @@ GET /projects/:id/feature_flags_user_lists
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| --------- | -------------- | -------- | -------------------------------------------------------------------------------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `search` | string | no | Return user lists matching the search criteria. |
|
||||
|
||||
```shell
|
||||
|
|
@ -73,7 +72,7 @@ POST /projects/:id/feature_flags_user_lists
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `name` | string | yes | The name of the list. |
|
||||
| `user_xids` | string | yes | A comma-separated list of external user IDs. |
|
||||
|
||||
|
|
@ -113,7 +112,7 @@ GET /projects/:id/feature_flags_user_lists/:iid
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `iid` | integer/string | yes | The internal ID of the project's feature flag user list. |
|
||||
|
||||
```shell
|
||||
|
|
@ -144,7 +143,7 @@ PUT /projects/:id/feature_flags_user_lists/:iid
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `iid` | integer/string | yes | The internal ID of the project's feature flag user list. |
|
||||
| `name` | string | no | The name of the list. |
|
||||
| `user_xids` | string | no | A comma-separated list of external user IDs. |
|
||||
|
|
@ -185,7 +184,7 @@ DELETE /projects/:id/feature_flags_user_lists/:iid
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `iid` | integer/string | yes | The internal ID of the project's feature flag user list |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Feature flags API
|
||||
---
|
||||
|
||||
# Feature flags API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -20,7 +19,7 @@ Users with at least the Developer [role](../user/permissions.md) can access the
|
|||
## Feature flags pagination
|
||||
|
||||
By default, `GET` requests return 20 results at a time because the API results
|
||||
are [paginated](rest/index.md#pagination).
|
||||
are [paginated](rest/_index.md#pagination).
|
||||
|
||||
## List feature flags for a project
|
||||
|
||||
|
|
@ -32,7 +31,7 @@ GET /projects/:id/feature_flags
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | --------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `scope` | string | no | The condition of feature flags, one of: `enabled`, `disabled`. |
|
||||
|
||||
```shell
|
||||
|
|
@ -132,7 +131,7 @@ GET /projects/:id/feature_flags/:feature_flag_name
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `feature_flag_name` | string | yes | The name of the feature flag. |
|
||||
|
||||
```shell
|
||||
|
|
@ -177,7 +176,7 @@ POST /projects/:id/feature_flags
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- |------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `name` | string | yes | The name of the feature flag. |
|
||||
| `version` | string | yes | **Deprecated** The version of the feature flag. Must be `new_version_flag`. Omit to create a Legacy feature flag. |
|
||||
| `description` | string | no | The description of the feature flag. |
|
||||
|
|
@ -239,7 +238,7 @@ PUT /projects/:id/feature_flags/:feature_flag_name
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `feature_flag_name` | string | yes | The current name of the feature flag. |
|
||||
| `description` | string | no | The description of the feature flag. |
|
||||
| `active` | boolean | no | The active state of the flag. |
|
||||
|
|
@ -317,7 +316,7 @@ DELETE /projects/:id/feature_flags/:feature_flag_name
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------------- | ---------------- | ---------- | ---------------------------------------------------------------------------------------|
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `feature_flag_name` | string | yes | The name of the feature flag. |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Feature flags API
|
||||
---
|
||||
|
||||
# Feature flags API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Deploy
|
||||
group: Environments
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Freeze Periods API
|
||||
---
|
||||
|
||||
# Freeze Periods API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -28,7 +27,7 @@ GET /projects/:id/freeze_periods
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------- | -------------- | -------- | ----------------------------------------------------------------------------------- |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer/string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
|
||||
Example request:
|
||||
|
||||
|
|
@ -61,7 +60,7 @@ GET /projects/:id/freeze_periods/:freeze_period_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------- | -------------- | -------- | ----------------------------------------------------------------------------------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `freeze_period_id` | integer | yes | The ID of the freeze period. |
|
||||
|
||||
Example request:
|
||||
|
|
@ -93,7 +92,7 @@ POST /projects/:id/freeze_periods
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| -------------------| --------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `freeze_start` | string | yes | Start of the freeze period in [cron](https://crontab.guru/) format. |
|
||||
| `freeze_end` | string | yes | End of the freeze period in [cron](https://crontab.guru/) format. |
|
||||
| `cron_timezone` | string | no | The time zone for the cron fields, defaults to UTC if not provided. |
|
||||
|
|
@ -129,7 +128,7 @@ PUT /projects/:id/freeze_periods/:freeze_period_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------- | --------------- | -------- | ----------------------------------------------------------------------------------------------------------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `freeze_period_id` | integer | yes | The ID of the freeze period. |
|
||||
| `freeze_start` | string | no | Start of the freeze period in [cron](https://crontab.guru/) format. |
|
||||
| `freeze_end` | string | no | End of the freeze period in [cron](https://crontab.guru/) format. |
|
||||
|
|
@ -166,7 +165,7 @@ DELETE /projects/:id/freeze_periods/:freeze_period_id
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| ------------- | -------------- | -------- | ----------------------------------------------------------------------------------- |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/index.md#namespaced-paths). |
|
||||
| `id` | integer or string | yes | The ID or [URL-encoded path of the project](rest/_index.md#namespaced-paths). |
|
||||
| `freeze_period_id` | integer | yes | The ID of the freeze period. |
|
||||
|
||||
Example request:
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Systems
|
||||
group: Geo
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Geo Nodes API (deprecated)
|
||||
---
|
||||
|
||||
# Geo Nodes API (deprecated)
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Systems
|
||||
group: Geo
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Geo sites API
|
||||
---
|
||||
|
||||
# Geo sites API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab Self-Managed
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: none
|
||||
group: none
|
||||
info: "To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments"
|
||||
title: Get started extending GitLab
|
||||
---
|
||||
|
||||
# Get started extending GitLab
|
||||
|
||||
Interact programmatically with GitLab.
|
||||
Automate tasks, integrate with other tools, and create custom workflows.
|
||||
GitLab also supports plugins and custom hooks.
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Google Cloud integration API
|
||||
---
|
||||
|
||||
# Google Cloud integration API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com
|
||||
|
|
|
|||
|
|
@ -3,10 +3,9 @@ stage: Foundations
|
|||
group: Import and Integrate
|
||||
description: Programmatic interaction with GitLab.
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: GraphQL API
|
||||
---
|
||||
|
||||
# GraphQL API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -68,7 +67,7 @@ If the authentication information is not valid, GitLab returns an error message
|
|||
|
||||
Use any of the following tokens to authenticate with the GraphQL API:
|
||||
|
||||
- [OAuth 2.0 tokens](../../api/oauth2.md)
|
||||
- [OAuth 2.0 tokens](../oauth2.md)
|
||||
- [Personal access tokens](../../user/profile/personal_access_tokens.md)
|
||||
- [Project access tokens](../../user/project/settings/project_access_tokens.md)
|
||||
- [Group access tokens](../../user/group/settings/group_access_tokens.md)
|
||||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Fulfillment
|
||||
group: Provision
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Assign GitLab Duo seats by using GraphQL
|
||||
---
|
||||
|
||||
# Assign GitLab Duo seats by using GraphQL
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab.com
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Compliance
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Audit event streaming GraphQL API for top-level groups
|
||||
---
|
||||
|
||||
# Audit event streaming GraphQL API for top-level groups
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Compliance
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Audit event streaming GraphQL API for instances
|
||||
---
|
||||
|
||||
# Audit event streaming GraphQL API for instances
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Ultimate
|
||||
**Offering:** GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Compliance
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Create an audit report by using GraphQL
|
||||
---
|
||||
|
||||
# Create an audit report by using GraphQL
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Create
|
||||
group: Source Code
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: List branch rules for a project by using GraphQL
|
||||
---
|
||||
|
||||
# List branch rules for a project by using GraphQL
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Project Management
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Use custom emoji with GraphQL
|
||||
---
|
||||
|
||||
# Use custom emoji with GraphQL
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -40,7 +39,7 @@ The query accepts these attributes:
|
|||
|
||||
| Attribute | Type | Required | Description |
|
||||
| :----------- | :------------- | :--------------------- | :---------- |
|
||||
| `group_path` | integer/string | Yes | ID or [URL-encoded path of the top-level group](../rest/index.md#namespaced-paths). |
|
||||
| `group_path` | integer/string | Yes | ID or [URL-encoded path of the top-level group](../rest/_index.md#namespaced-paths). |
|
||||
| `name` | string | Yes | Name of the custom emoji. |
|
||||
| `file` | string | Yes | URL of the custom emoji image. |
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Product Planning
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Migrate epic APIs to work items
|
||||
---
|
||||
|
||||
# Migrate epic APIs to work items
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Foundations
|
||||
group: Import and Integrate
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: GraphQL examples
|
||||
---
|
||||
|
||||
# GraphQL examples
|
||||
|
||||
GraphQL examples are available for you to test and modify.
|
||||
|
||||
- [Audit event streaming for instances](audit_event_streaming_instances.md)
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Foundations
|
||||
group: Import and Integrate
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Run GraphQL API queries and mutations
|
||||
---
|
||||
|
||||
# Run GraphQL API queries and mutations
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -46,7 +45,7 @@ You can run GraphQL queries in a `curl` request on the command line on your
|
|||
local computer. The requests `POST` to `/api/graphql`
|
||||
with the query as the payload. You can authorize your request by generating a
|
||||
[personal access token](../../user/profile/personal_access_tokens.md) to use as
|
||||
a bearer token. Read more about [GraphQL Authentication](index.md#authentication).
|
||||
a bearer token. Read more about [GraphQL Authentication](_index.md#authentication).
|
||||
|
||||
Example:
|
||||
|
||||
|
|
@ -104,7 +103,7 @@ NOTE:
|
|||
In the GitLab GraphQL API, `id` refers to a
|
||||
[Global ID](https://graphql.org/learn/global-object-identification/),
|
||||
which is an object identifier in the format of `"gid://gitlab/Issue/123"`.
|
||||
For more information, see [Global IDs](index.md#global-ids).
|
||||
For more information, see [Global IDs](_index.md#global-ids).
|
||||
|
||||
[GitLab GraphQL Schema](reference/_index.md) outlines which objects and fields are
|
||||
available for clients to query and their corresponding data types.
|
||||
|
|
@ -171,7 +170,7 @@ More about queries:
|
|||
|
||||
If you've signed in to GitLab and use [GraphiQL](#graphiql), all queries are performed as
|
||||
you, the authenticated user. For more information, read about
|
||||
[GraphQL Authentication](index.md#authentication).
|
||||
[GraphQL Authentication](_index.md#authentication).
|
||||
|
||||
### Mutations
|
||||
|
||||
|
|
@ -348,7 +347,7 @@ More about introspection:
|
|||
|
||||
### Query complexity
|
||||
|
||||
The calculated [complexity score and limit](index.md#maximum-query-complexity) for a query can be revealed to clients by
|
||||
The calculated [complexity score and limit](_index.md#maximum-query-complexity) for a query can be revealed to clients by
|
||||
querying for `queryComplexity`.
|
||||
|
||||
```graphql
|
||||
|
|
|
|||
|
|
@ -17,14 +17,14 @@ title: GraphQL API resources
|
|||
|
||||
This documentation is self-generated based on GitLab current GraphQL schema.
|
||||
|
||||
The API can be explored using the [interactive GraphQL explorer](../index.md#interactive-graphql-explorer). Developers can also [generate a machine-readable GraphQL schema in IDL and JSON formats](../../../development/rake_tasks.md#update-machine-readable-schema-files).
|
||||
The API can be explored using the [interactive GraphQL explorer](../_index.md#interactive-graphql-explorer). Developers can also [generate a machine-readable GraphQL schema in IDL and JSON formats](../../../development/rake_tasks.md#update-machine-readable-schema-files).
|
||||
|
||||
Each table below documents a GraphQL type. Types match loosely to models, but not all
|
||||
fields and methods on a model are available via GraphQL.
|
||||
|
||||
WARNING:
|
||||
Fields that are deprecated are marked with **{warning-solid}**.
|
||||
Items (fields, enums, etc) that have been removed according to our [deprecation process](../index.md#deprecation-and-removal-process) can be found
|
||||
Items (fields, enums, etc) that have been removed according to our [deprecation process](../_index.md#deprecation-and-removal-process) can be found
|
||||
in [Removed Items](../removed_items.md).
|
||||
|
||||
<!-- vale off -->
|
||||
|
|
@ -19598,7 +19598,7 @@ Self-hosted LLM servers.
|
|||
|
||||
### `AiUsageData`
|
||||
|
||||
Usage data for events stored in the default PostgreSQL database. Data retained for three months. Requires a personal access token. Ultimate with GitLab Duo Enterprise only.
|
||||
Usage data for events stored in the default PostgreSQL database. Data retained for three months. Requires a personal access token. Endpoint works only on the top-level group. Ultimate with GitLab Duo Enterprise only.
|
||||
|
||||
#### Fields
|
||||
|
||||
|
|
|
|||
|
|
@ -2,17 +2,16 @@
|
|||
stage: Foundations
|
||||
group: Import and Integrate
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: GraphQL API removed items
|
||||
---
|
||||
|
||||
# GraphQL API removed items
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
||||
GraphQL is a versionless API, unlike the REST API.
|
||||
Occasionally, items have to be updated or removed from the GraphQL API.
|
||||
According to our [process for removing items](index.md#deprecation-and-removal-process), here are the items that have been removed.
|
||||
According to our [process for removing items](_index.md#deprecation-and-removal-process), here are the items that have been removed.
|
||||
|
||||
For deprecations, see the [Deprecations by version page](../../update/deprecations.md).
|
||||
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Project Management
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Identify issue boards by using GraphQL
|
||||
---
|
||||
|
||||
# Identify issue boards by using GraphQL
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Query users by using GraphQL
|
||||
---
|
||||
|
||||
# Query users by using GraphQL
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Software Supply Chain Security
|
||||
group: Authentication
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Group access tokens API
|
||||
---
|
||||
|
||||
# Group access tokens API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Free, Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
@ -27,7 +26,7 @@ GET /groups/:id/access_tokens?state=inactive
|
|||
|
||||
| Attribute | Type | required | Description |
|
||||
| --------- | ----------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/index.md#namespaced-paths) of a group. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/_index.md#namespaced-paths) of a group. |
|
||||
| `state` | string | No | If defined, only returns tokens with the specified state. Possible values: `active` and `inactive`. |
|
||||
|
||||
```shell
|
||||
|
|
@ -79,7 +78,7 @@ GET /groups/:id/access_tokens/:token_id
|
|||
|
||||
| Attribute | Type | required | Description |
|
||||
| ---------- | ----------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/index.md#namespaced-paths) of a group. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/_index.md#namespaced-paths) of a group. |
|
||||
| `token_id` | integer or string | yes | ID of a group access token or the keyword `self`. |
|
||||
|
||||
```shell
|
||||
|
|
@ -120,7 +119,7 @@ POST /groups/:id/access_tokens
|
|||
|
||||
| Attribute | Type | required | Description |
|
||||
| -------------- | ----------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/index.md#namespaced-paths) of a group. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/_index.md#namespaced-paths) of a group. |
|
||||
| `name` | String | yes | Name of the token. |
|
||||
| `scopes` | `Array[String]` | yes | List of [scopes](../user/group/settings/group_access_tokens.md#scopes-for-a-group-access-token) available to the token. |
|
||||
| `access_level` | Integer | no | [Access level](../development/permissions/predefined_roles.md#members) for the token. Possible values: `10` (Guest), `15` (Planner), `20` (Reporter), `30` (Developer), `40` (Maintainer), and `50` (Owner). Default value: `40`. |
|
||||
|
|
@ -171,7 +170,7 @@ POST /groups/:id/access_tokens/:token_id/rotate
|
|||
|
||||
| Attribute | Type | required | Description |
|
||||
| ------------ | ----------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/index.md#namespaced-paths) of a group. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/_index.md#namespaced-paths) of a group. |
|
||||
| `token_id` | integer or string | yes | ID of a group access token or the keyword `self`. |
|
||||
| `expires_at` | date | no | Expiration date of the access token in ISO format (`YYYY-MM-DD`). The date must be one year or less from the rotation date. If undefined, the token expires after one week. |
|
||||
|
||||
|
|
@ -240,7 +239,7 @@ DELETE /groups/:id/access_tokens/:token_id
|
|||
|
||||
| Attribute | Type | required | Description |
|
||||
| ---------- | ----------------- | -------- | ----------- |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/index.md#namespaced-paths) of a group. |
|
||||
| `id` | integer or string | yes | ID or [URL-encoded path](rest/_index.md#namespaced-paths) of a group. |
|
||||
| `token_id` | integer | yes | ID of a group access token. |
|
||||
|
||||
```shell
|
||||
|
|
|
|||
|
|
@ -2,10 +2,9 @@
|
|||
stage: Plan
|
||||
group: Optimize
|
||||
info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments
|
||||
title: Group Activity Analytics API
|
||||
---
|
||||
|
||||
# Group Activity Analytics API
|
||||
|
||||
DETAILS:
|
||||
**Tier:** Premium, Ultimate
|
||||
**Offering:** GitLab.com, GitLab Self-Managed, GitLab Dedicated
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue